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