82 lines (79 loc) · 2.9 KB
/
ci.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
name: CI
on:
pull_request:
push:
schedule:
- cron: '*/5 * * * *'
jobs:
analyse:
runs-on: ubuntu-latest
timeout-minutes: 10
env:
PHP_CS_FIXER_IGNORE_ENV: 1
steps:
- uses: actions/checkout@v2
- uses: shivammathur/setup-php@v2
with:
php-version: '8.1'
- run: composer update --no-progress
- run: composer analyse
test:
name: PHP ${{ matrix.php-version }} on ${{ matrix.os }} ${{ matrix.check-description }}
strategy:
fail-fast: false
matrix:
os: [ macos-latest, ubuntu-latest, windows-latest ]
php-version: [ '7.4', '8.1' ]
install-fixer-from-master-branch: [false]
include:
- os: ubuntu-latest
php-version: '7.2'
composer_flags: '--prefer-lowest'
check-description: 'with lowest dependencies'
- os: ubuntu-latest
php-version: '7.2'
- os: ubuntu-latest
php-version: '7.3'
- os: ubuntu-latest
php-version: '8.0'
- os: ubuntu-latest
php-version: '8.1'
install-fixer-from-master-branch: true
check-description: 'with PHP CS Fixer from master'
- os: ubuntu-latest
php-version: '8.2'
composer_flags: '--ignore-platform-reqs'
runs-on: ${{ matrix.os }}
timeout-minutes: 10
env:
PHP_CS_FIXER_FUTURE_MODE: 1
steps:
- uses: actions/checkout@v2
- uses: actions/github-script@v5
id: coverage-driver
with:
script: 'return "${{ matrix.os }}" == "ubuntu-latest" && "${{ matrix.php-version }}" == "8.1" ? "pcov" : "none"'
result-encoding: string
- uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php-version }}
ini-values: pcov.directory=$GITHUB_WORKSPACE, zend.assertions=1
coverage: ${{ steps.coverage-driver.outputs.result }}
- id: composer-cache
run: echo "::set-output name=dir::$(composer config cache-files-dir)"
- uses: actions/cache@v2
with:
path: ${{ steps.composer-cache.outputs.dir }}
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }}
- if: matrix.install-fixer-from-master-branch
run: composer require friendsofphp/php-cs-fixer:dev-master --no-update
- run: composer update --no-progress ${{ matrix.composer_flags }}
- run: composer test -- --coverage-clover=./build/logs/clover.xml
- if: steps.coverage-driver.outputs.result != 'none'
env:
COVERALLS_REPO_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: composer require --dev php-coveralls/php-coveralls --quiet --with-all-dependencies && ./vendor/bin/php-coveralls --verbose
- if: steps.coverage-driver.outputs.result != 'none'
env:
STRYKER_DASHBOARD_API_KEY: ${{ secrets.STRYKER_DASHBOARD_API_KEY }}
run: composer infection