-
Notifications
You must be signed in to change notification settings - Fork 0
74 lines (62 loc) · 2.14 KB
/
ci.yml
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
name: CI
on:
push:
branches:
- master
- develop
pull_request:
jobs:
build-php:
name: PHP ${{ matrix.php }} - Symfony ${{ matrix.symfony }} - Experimental ${{ matrix.experimental }}
continue-on-error: ${{ matrix.experimental }}
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
symfony: ['^5.4', '^6.4']
php: ['8.1', '8.2', '8.3']
experimental: [false]
include:
- symfony: '^7.0'
php: '8.2'
experimental: true
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
extensions: mbstring, xml, ctype, iconv
coverage: none
- name: Cache composer dependencies
uses: actions/cache@v3
with:
path: vendor
key: ${{ matrix.php }}-composer-${{ matrix.symfony }}
- name: Install
run: |
sed -ri 's/"symfony\/(.+)": "(.+)"/"symfony\/\1": "'${{ matrix.symfony }}'"/' composer.json;
composer update --prefer-dist --no-progress
composer info
git checkout composer.json
- name: Lint
run: composer t3g:test:php:lint
- name: CGL
run: composer t3g:cgl
- name: Git Status
run: |
git status
git status | grep -q "nothing to commit, working tree clean"
- name: Tests
run: |
php -dpcov.enabled=1 -dpcov.directory="." ./vendor/bin/phpunit -c build/phpunit.xml --log-junit var/log/junit/phpunit.junit.xml --coverage-clover var/log/junit/coverage.xml --coverage-xml var/log/junit/coverage-xml/
env:
COMPOSER_PROCESS_TIMEOUT: 1200
- name: Upload coverage results to Coveralls
continue-on-error: true
env:
COVERALLS_REPO_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
composer global require php-coveralls/php-coveralls --no-progress --no-suggest --no-interaction
/home/runner/.composer/vendor/bin/php-coveralls -c build/.coveralls.yml -vvv --json_path=var/log/coveralls-upload.json