diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index c582cf1..cb7f4b3 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -7,16 +7,16 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - php: [ 8.0, 8.1, 8.2 ] + php: [ 8.1, 8.2, 8.3 ] steps: - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 - name: Cache Composer dependencies uses: actions/cache@v3 with: path: /tmp/composer-cache - key: ${{ runner.os }}-${{ hashFiles('**/composer.lock') }} + key: ${{ runner.os }}-${{ matrix.php }}-${{ hashFiles('**/composer.lock') }} - name: Composer install uses: php-actions/composer@v6 @@ -27,9 +27,9 @@ jobs: run: mkdir /tmp/github-actions/ && tar -cvf /tmp/github-actions/build.tar ./ - name: Upload build archive for test runners - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: - name: build-artifact + name: build-artifact-${{ matrix.php }} path: /tmp/github-actions phpunit: @@ -37,15 +37,15 @@ jobs: needs: [ composer ] strategy: matrix: - php: [ 8.0, 8.1, 8.2 ] + php: [ 8.1, 8.2, 8.3 ] outputs: coverage: ${{ steps.store-coverage.outputs.coverage_text }} steps: - - uses: actions/download-artifact@v3 + - uses: actions/download-artifact@v4 with: - name: build-artifact + name: build-artifact-${{ matrix.php }} path: /tmp/github-actions - name: Extract build archive @@ -56,46 +56,50 @@ jobs: env: XDEBUG_MODE: cover with: + version: 10 php_version: ${{ matrix.php }} php_extensions: xdebug coverage_text: _coverage/coverage.txt coverage_clover: _coverage/clover.xml - name: Store coverage data - uses: actions/upload-artifact@v3 + uses: actions/upload-artifact@v4 with: - name: code-coverage + name: code-coverage-${{ matrix.php }}-${{ github.run_number }} path: _coverage coverage: runs-on: ubuntu-latest needs: [ phpunit ] + strategy: + matrix: + php: [ 8.1, 8.2, 8.3 ] steps: - - uses: actions/checkout@v3 - - - uses: actions/download-artifact@v3 + - uses: actions/download-artifact@v4 with: - name: code-coverage + name: code-coverage-${{ matrix.php }}-${{ github.run_number }} path: _coverage - name: Output coverage run: cat "_coverage/coverage.txt" - name: Upload to Codecov - uses: codecov/codecov-action@v3 + uses: codecov/codecov-action@v4 + with: + token: ${{ secrets.CODECOV_TOKEN }} phpstan: runs-on: ubuntu-latest needs: [ composer ] strategy: matrix: - php: [ 8.0, 8.1, 8.2 ] + php: [ 8.1, 8.2, 8.3 ] steps: - - uses: actions/download-artifact@v3 + - uses: actions/download-artifact@v4 with: - name: build-artifact + name: build-artifact-${{ matrix.php }} path: /tmp/github-actions - name: Extract build archive @@ -106,18 +110,19 @@ jobs: with: php_version: ${{ matrix.php }} path: src/ + level: 6 phpmd: runs-on: ubuntu-latest needs: [ composer ] strategy: matrix: - php: [ 8.0, 8.1, 8.2 ] + php: [ 8.1, 8.2, 8.3 ] steps: - - uses: actions/download-artifact@v3 + - uses: actions/download-artifact@v4 with: - name: build-artifact + name: build-artifact-${{ matrix.php }} path: /tmp/github-actions - name: Extract build archive @@ -136,12 +141,12 @@ jobs: needs: [ composer ] strategy: matrix: - php: [ 8.0, 8.1, 8.2 ] + php: [ 8.1, 8.2, 8.3 ] steps: - - uses: actions/download-artifact@v3 + - uses: actions/download-artifact@v4 with: - name: build-artifact + name: build-artifact-${{ matrix.php }} path: /tmp/github-actions - name: Extract build archive @@ -153,18 +158,3 @@ jobs: php_version: ${{ matrix.php }} path: src/ standard: phpcs.xml - - remove_old_artifacts: - runs-on: ubuntu-latest - - steps: - - name: Remove old artifacts for prior workflow runs on this repository - env: - GH_TOKEN: ${{ github.token }} - run: | - gh api "/repos/${{ github.repository }}/actions/artifacts?name=build-artifact" | jq ".artifacts[] | select(.name == \"build-artifact\") | .id" > artifact-id-list.txt - while read id - do - echo -n "Deleting artifact ID $id ... " - gh api --method DELETE /repos/${{ github.repository }}/actions/artifacts/$id && echo "Done" - done