probability-selector-php
84 строки · 1.7 Кб
1name: CI
2
3on:
4push:
5branches:
6- master
7pull_request:
8branches:
9- master
10
11jobs:
12test:
13name: Test
14runs-on: ubuntu-latest
15strategy:
16matrix:
17php: ['7.4', '8.0', '8.1', '8.2', '8.3']
18
19steps:
20- name: Set up PHP
21uses: shivammathur/setup-php@v2
22with:
23php-version: ${{ matrix.php }}
24coverage: xdebug
25tools: composer:v2
26
27- name: Checkout code
28uses: actions/checkout@v3
29with:
30fetch-depth: 0
31
32- name: PHP Version Check
33run: php -v
34
35- name: Validate Composer JSON
36run: composer validate
37
38- name: Run Composer
39run: composer install --no-interaction
40
41- name: Unit tests
42run: |
43composer test-init
44composer test
45
46- name: PHP Code Sniffer
47run: composer codesniffer
48
49- name: PHPStan analysis
50run: composer stan
51
52code-coverage:
53name: Code coverage
54runs-on: ubuntu-latest
55strategy:
56matrix:
57php: ['7.4']
58
59steps:
60- name: Set up PHP
61uses: shivammathur/setup-php@v2
62with:
63php-version: ${{ matrix.php }}
64coverage: xdebug
65tools: composer:v2
66
67- name: Checkout code
68uses: actions/checkout@v3
69with:
70fetch-depth: 0
71
72- name: Run Composer
73run: composer install --no-interaction
74
75- name: Unit tests
76run: |
77composer test-init
78composer test-coverage-xml
79mkdir -p ./build/logs
80cp ./tests/_output/coverage.xml ./build/logs/clover.xml
81- name: Code Coverage (Coveralls)
82env:
83COVERALLS_REPO_TOKEN: ${{ secrets.GITHUB_TOKEN }}
84run: php vendor/bin/php-coveralls -v
85