diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 345c0c0b..7b5609a4 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -13,6 +13,25 @@ concurrency: cancel-in-progress: true jobs: + build: + name: ๐Ÿ”จ Build (${{ matrix.go-version }}) + strategy: + fail-fast: false + matrix: + go-version: [1.24.x, 1.25.x] + runs-on: ubuntu-latest + steps: + - name: ๐Ÿ“ฅ Checkout + uses: actions/checkout@v6 + + - name: โฌ‡๏ธ Setup Go + uses: actions/setup-go@v6 + with: + go-version: ${{ matrix.go-version }} + + - name: ๐Ÿ”จ Build + run: go build -v ./cmd/task + test: name: ๐Ÿงช Test (${{ matrix.go-version }}, ${{ matrix.platform }}) strategy: @@ -30,11 +49,11 @@ jobs: with: go-version: ${{ matrix.go-version }} - - name: ๐Ÿ”จ Build - run: go build -v -o ./bin/task ./cmd/task + - name: โฌ‡๏ธ Setup Task + uses: go-task/setup-task@v1 - name: ๐Ÿงช Test - run: ./bin/task test + run: task test --output group --output-group-begin '::group::{{.TASK}}' --output-group-end '::endgroup::' lint: name: ๐Ÿ” Lint (${{ matrix.go-version }}) @@ -78,12 +97,13 @@ jobs: ci-status: name: โœ… CI runs-on: ubuntu-latest - needs: [test, lint, lint-jsonschema] + needs: [build, test, lint, lint-jsonschema] if: always() steps: - name: โœ… Check CI status run: | - if [[ "${{ needs.test.result }}" != "success" ]] || \ + if [[ "${{ needs.build.result }}" != "success" ]] || \ + [[ "${{ needs.test.result }}" != "success" ]] || \ [[ "${{ needs.lint.result }}" != "success" ]] || \ [[ "${{ needs.lint-jsonschema.result }}" != "success" ]]; then echo "CI failed"