Skip to content

Commit

Permalink
Merge pull request #233 from thePanz/split-github-actions
Browse files Browse the repository at this point in the history
Split GH workflow for tests and Code-style checks
  • Loading branch information
sprain committed Oct 4, 2023
2 parents f3db31c + 7abb1f9 commit 544f252
Show file tree
Hide file tree
Showing 4 changed files with 98 additions and 52 deletions.
90 changes: 90 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
name: tests

on:
push:
pull_request:

jobs:
run_tests:
runs-on: ubuntu-20.04

strategy:
matrix:
php: ['8.0', '8.1', '8.2']
stability: ['prefer-lowest', 'prefer-stable']

name: PHP Tests ${{ matrix.php }} - ${{ matrix.stability }}

steps:
- name: Checkout code
uses: actions/checkout@v3

- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
extensions: dom, curl, libxml, mbstring, zip, gd
tools: composer
coverage: none

- name: Get composer cache directory
id: composer-cache
run: echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT

- name: Cache dependencies
uses: actions/cache@v3
with:
path: ${{ steps.composer-cache.outputs.dir }}
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }}
restore-keys: ${{ runner.os }}-composer-

- name: Install dependencies
run: composer update --${{ matrix.stability }} --prefer-dist --no-progress

- name: Execute tests in default environment
run: vendor/bin/phpunit --verbose

- name: Execute tests in hardened environment
run: php -d allow_url_fopen=0 -d memory_limit=256M -d register_globals=0 vendor/bin/phpunit --verbose

run_code_checks:
runs-on: ubuntu-20.04
name: PHP Code-Checks

steps:
- name: Checkout code
uses: actions/checkout@v3

- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: '8.2'
extensions: dom, curl, libxml, mbstring, zip, bcmath, gd
tools: composer
coverage: none

- name: Get composer cache directory
id: composer-cache
run: echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT

- name: Cache dependencies
uses: actions/cache@v3
with:
path: ${{ steps.composer-cache.outputs.dir }}
key: ${{ runner.os }}-composer-${{ hashFiles('**/composer.lock') }}
restore-keys: ${{ runner.os }}-composer-

- name: Install dependencies
run: composer install --prefer-dist

- name: Install dependencies
run: composer install --prefer-dist --no-progress

- name: Check composer files
run: composer validate --strict

- name: Check coding standard
run: composer cs:diff

- name: Static analysis
run: composer phpstan
49 changes: 0 additions & 49 deletions .github/workflows/tests.yml

This file was deleted.

5 changes: 2 additions & 3 deletions .php-cs-fixer.dist.php
Original file line number Diff line number Diff line change
@@ -1,12 +1,11 @@
<?php

$finder = PhpCsFixer\Finder::create()
->in(__DIR__)
->in(__DIR__.'/src')
;

return (new PhpCsFixer\Config())
->setRules([
'@PSR2' => true
])
->setFinder($finder)
;
->setFinder($finder);
6 changes: 6 additions & 0 deletions composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,12 @@
"setasign/fpdf": "^1.8.2",
"tecnickcom/tcpdf": "^6.3.2"
},
"scripts": {
"cs:fix": "vendor/bin/php-cs-fixer fix --verbose",
"cs:diff": "vendor/bin/php-cs-fixer fix --dry-run --diff --verbose",
"phpstan": "vendor/bin/phpstan analyse",
"phpunit": "vendor/bin/phpunit --verbose"
},
"conflict": {
"khanamiryan/qrcode-detector-decoder": "1.0.6"
},
Expand Down

0 comments on commit 544f252

Please sign in to comment.