This repository was archived by the owner on May 15, 2025. It is now read-only.
chore: add support for separate module versioning to CI #1520
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: ci | |
| on: | |
| push: | |
| branches: | |
| - main | |
| pull_request: | |
| workflow_dispatch: | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.ref }} | |
| cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} | |
| jobs: | |
| test: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Check out code | |
| uses: actions/checkout@v4 | |
| - name: Set up Terraform | |
| uses: coder/coder/.github/actions/setup-tf@main | |
| - name: Set up Bun | |
| uses: oven-sh/setup-bun@v2 | |
| with: | |
| # We're using the latest version of Bun for now, but it might be worth | |
| # reconsidering. They've pushed breaking changes in patch releases | |
| # that have broken our CI. | |
| # Our PR where issues started to pop up: https://github.com/coder/modules/pull/383 | |
| # The Bun PR that broke things: https://github.com/oven-sh/bun/pull/16067 | |
| bun-version: latest | |
| - name: Install dependencies | |
| run: bun install | |
| - name: Run tests | |
| run: bun test | |
| pretty: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 # Needed to get tags | |
| - uses: coder/coder/.github/actions/setup-tf@main | |
| - uses: oven-sh/setup-bun@v2 | |
| with: | |
| bun-version: latest | |
| - name: Setup | |
| run: bun install | |
| - name: Format | |
| run: bun fmt:ci | |
| - name: typos-action | |
| uses: crate-ci/[email protected] | |
| - name: Lint | |
| run: bun lint | |
| - name: Check module versions | |
| shell: bash | |
| run: | | |
| # Add ability to skip version check with a marker in commit message | |
| if [[ "${{ contains(github.event.head_commit.message || '', '[skip-version-check]') }}" == "true" ]]; then | |
| echo "Version check skipped by commit message" | |
| exit 0 | |
| fi | |
| # For PRs, just check that the version in README matches what's in modules-version.sh | |
| # This assumes developer has run the script locally to update versions | |
| echo "Checking module versions for changed modules..." | |
| ./modules-version.sh | |
| # Skip actual checks when in PR | |
| if [ "${{ github.event_name }}" == "pull_request" ]; then | |
| echo "Pull request detected - version check is informational only" | |
| echo "Remember to update versions with ./modules-version.sh if needed" | |
| exit 0 | |
| fi |