diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 9f6c095..2cc8633 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -11,34 +11,22 @@ concurrency: cancel-in-progress: true jobs: - format: + build: runs-on: ubuntu-latest - permissions: - contents: write steps: - name: Checkout code - uses: actions/checkout@v4 - with: - ref: ${{ github.head_ref }} + uses: actions/checkout@v6 - name: Use node - uses: actions/setup-node@v3 + uses: actions/setup-node@v6 with: - node-version: 22 + node-version: 24 cache: npm - name: Install dependencies run: npm ci - - name: Format Code - run: npm run format - - name: Build Code + - name: Build run: npm run build - - name: Commit changes - uses: stefanzweifel/git-auto-commit-action@v5 - with: - commit_message: "[ci] format" - commit_user_name: "github-actions[bot]" - commit_user_email: "github-actions[bot]@users.noreply.github.com" - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + - name: Lint Code + run: npm run lint test: runs-on: ${{ matrix.os }} name: "test: node@${{ matrix.node }} (${{ matrix.os }})" @@ -46,12 +34,12 @@ jobs: fail-fast: false matrix: os: [ubuntu-latest, windows-latest] - node: [18, 20, 22] + node: [20, 22, 24] steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v6 - name: Use node@${{ matrix.node }} - uses: actions/setup-node@v3 + uses: actions/setup-node@v6 with: node-version: ${{ matrix.node }} cache: npm @@ -60,18 +48,24 @@ jobs: - name: Run tests run: npm run ci:test - name: Report code coverage - uses: codecov/codecov-action@v3 + uses: codecov/codecov-action@v5 + with: + token: ${{ secrets.CODECOV_TOKEN }} release: runs-on: ubuntu-latest - needs: [format, test] + needs: [build, test] if: "${{ github.repository_owner == 'marko-js' && github.event_name == 'push' }}" + permissions: + id-token: write + contents: write + pull-requests: write steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v6 - name: Setup node - uses: actions/setup-node@v3 + uses: actions/setup-node@v6 with: - node-version: 22 + node-version: 24 cache: npm - name: Install dependencies run: npm ci @@ -85,4 +79,3 @@ jobs: title: "[ci] release" env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - NPM_TOKEN: ${{ secrets.NPM_TOKEN }}