-
Notifications
You must be signed in to change notification settings - Fork 0
43 lines (34 loc) · 1.35 KB
/
php.yml
File metadata and controls
43 lines (34 loc) · 1.35 KB
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
name: Linter and smoking/unit tests
on: push
permissions:
contents: read
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: '8.2'
tools: phpunit-bridge
extensions: mbstring, xml, ctype, iconv, intl, pdo_sqlite
coverage: xdebug
- name: Cache Composer packages
id: composer-cache
uses: actions/cache@v3
with:
path: vendor
key: ${{ runner.os }}-php-${{ hashFiles('**/composer.lock') }}
restore-keys: |
${{ runner.os }}-php-
- name: PHP Lint in trunk/src/ directory
run: find trunk/src/ -name "*.php" -print0 | while IFS= read -r -d '' file; do php -l "$file" || exit 1; done
- name: PHP Lint trunk/config/ directory
run: find trunk/config/ -name "*.php" -print0 | while IFS= read -r -d '' file; do php -l "$file" || exit 1; done
- name: PHP Lint tests/ directory
run: find tests/ -name "*.php" -print0 | while IFS= read -r -d '' file; do php -l "$file" || exit 1; done
- name: Install Dependencies
run: composer install -q --no-ansi --no-interaction --no-scripts --no-progress --prefer-dist
- name: Execute tests (Smoking, functional and unit tests) via PHPUnit
run: vendor/bin/phpunit --testdox --coverage-text