@@ -3,28 +3,26 @@ name: build
33on :
44 push :
55 pull_request :
6- schedule :
7- - cron : ' 0 0 * * *'
86
97jobs :
108 test :
11- name : Build (${{matrix.php}}, ${{ matrix.os }}, ${{ matrix.stability }})
9+ name : Build (${{matrix.php}}, ${{ matrix.os }}, ${{ matrix.dependencies }})
1210 runs-on : ${{ matrix.os }}
1311
1412 strategy :
1513 fail-fast : false
1614 matrix :
17- php : [ '7.4 ', '8.0 ', '8.1' ]
15+ php : ['8.1 ', '8.2 ', '8.3', '8.4' ]
1816 os : [ ubuntu-latest ]
19- stability : [ prefer- lowest, prefer-stable ]
17+ dependencies : [ lowest, highest ]
2018
2119 steps :
2220 - name : Set Git To Use LF
2321 run : |
2422 git config --global core.autocrlf false
2523 git config --global core.eol lf
2624 - name : Checkout
27- uses : actions/checkout@v2
25+ uses : actions/checkout@v4
2826
2927 # Install PHP Dependencies
3028 - name : Setup PHP ${{ matrix.php }}
@@ -36,38 +34,30 @@ jobs:
3634 coverage : pcov
3735 tools : pecl
3836 ini-values : " memory_limit=-1"
39- - name : Validate Composer
40- run : composer validate
41- - name : Get Composer Cache Directory
42- # Docs: <https://github.com/actions/cache/blob/master/examples.md#php---composer>
43- id : composer-cache
44- run : echo "::set-output name=dir::$(composer config cache-files-dir)"
45- - name : Restore Composer Cache
46- uses : actions/cache@v2
47- with :
48- path : ${{ steps.composer-cache.outputs.dir }}
49- key : ${{ runner.os }}-${{ matrix.php }}-${{ matrix.stability }}-composer-${{ hashFiles('**/composer.json') }}
50- restore-keys : ${{ runner.os }}-${{ matrix.php }}-composer-
5137
52- - name : Install dependencies with composer
53- if : matrix.php-version != '8.2'
54- run : composer update --${{ matrix.stability }} --prefer-dist --no-interaction --no-progress --optimize-autoloader --ansi
38+ - name : Setup problem matchers
39+ run : echo "::add-matcher::${{ runner.tool_cache }}/php.json"
5540
56- - name : Install dependencies with composer php 8.2
57- if : matrix.php-version == '8.2'
58- run : composer update --${{ matrix.stability }} --prefer-dist --no-interaction --no-progress --optimize-autoloader --ansi --ignore-platform-reqs
41+ - name : Validate composer.json and composer.lock
42+ run : composer validate --ansi --strict
43+
44+ - name : Install dependencies with composer
45+ uses : ramsey/composer-install@v3
46+ with :
47+ dependency-versions : ${{ matrix.dependencies }}
5948
60- # Execution
6149 - name : Execute Tests
6250 run : vendor/bin/phpunit --coverage-clover=coverage.clover
63- - name : Upload Coverage To Codecov
64- uses : codecov/codecov-action@v1
51+
52+ - name : Upload Coverage to Codecov
53+ uses : codecov/codecov-action@v3
6554 with :
6655 token : ${{ secrets.CODECOV_TOKEN }}
6756 file : ./coverage.clover
6857 fail_ci_if_error : false
69- - name : Upload coverage to Scrutinizer
70- continue-on-error : true # if is fork
58+
59+ - name : Upload Coverage to Scrutinizer
60+ continue-on-error : true
7161 uses : sudo-bot/action-scrutinizer@latest
7262 with :
73- cli-args : " --format=php-clover coverage.clover"
63+ cli-args : " --format=php-clover coverage.clover"
0 commit comments