2020-09-10 10:13:52 +02:00
|
|
|
name: CI
|
|
|
|
on: [push]
|
|
|
|
jobs:
|
|
|
|
check-composer:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- uses: actions/checkout@v2
|
|
|
|
|
2021-02-19 15:30:47 +01:00
|
|
|
- name: Install PHP
|
|
|
|
uses: shivammathur/setup-php@v2
|
|
|
|
with:
|
2023-07-06 13:53:06 +02:00
|
|
|
php-version: 8.2
|
2021-02-19 15:30:47 +01:00
|
|
|
|
2020-09-10 10:13:52 +02:00
|
|
|
- name: Validate composer.json
|
|
|
|
run: composer validate
|
|
|
|
|
|
|
|
php-linting:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
strategy:
|
|
|
|
matrix:
|
|
|
|
php-version:
|
|
|
|
- 7.4
|
2023-07-06 13:53:06 +02:00
|
|
|
- 8.0
|
|
|
|
- 8.1
|
|
|
|
- 8.2
|
2020-09-10 10:13:52 +02:00
|
|
|
steps:
|
|
|
|
- name: Checkout
|
|
|
|
uses: actions/checkout@v2
|
|
|
|
|
|
|
|
- name: Install PHP
|
|
|
|
uses: shivammathur/setup-php@v2
|
|
|
|
with:
|
|
|
|
php-version: "${{ matrix.php-version }}"
|
|
|
|
|
|
|
|
- name: PHP lint
|
|
|
|
run: "find *.php src tests -name '*.php' -print0 | xargs -0 -n 1 -P 4 php -l"
|
|
|
|
|
2020-09-21 14:59:34 +02:00
|
|
|
check-cgl:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- uses: actions/checkout@v2
|
|
|
|
|
2021-02-19 15:30:47 +01:00
|
|
|
- name: Install PHP
|
|
|
|
uses: shivammathur/setup-php@v2
|
|
|
|
with:
|
2023-07-06 13:53:06 +02:00
|
|
|
php-version: 8.2
|
2021-02-19 15:30:47 +01:00
|
|
|
|
2020-09-21 14:59:34 +02:00
|
|
|
- name: Get Composer Cache Directory
|
|
|
|
id: composer-cache
|
|
|
|
run: |
|
|
|
|
echo "::set-output name=dir::$(composer config cache-files-dir)"
|
|
|
|
|
|
|
|
- uses: actions/cache@v1
|
|
|
|
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 --no-progress --no-suggest
|
|
|
|
|
|
|
|
- name: Check CGL
|
|
|
|
run: ./vendor/bin/phpcs
|
|
|
|
|
2020-09-10 10:13:52 +02:00
|
|
|
tests:
|
|
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
|
|
- uses: actions/checkout@v2
|
|
|
|
|
2021-02-19 15:30:47 +01:00
|
|
|
- name: Install PHP
|
|
|
|
uses: shivammathur/setup-php@v2
|
|
|
|
with:
|
2023-07-06 13:53:06 +02:00
|
|
|
php-version: 8.2
|
2021-02-19 15:30:47 +01:00
|
|
|
|
2020-09-10 10:13:52 +02:00
|
|
|
- name: Get Composer Cache Directory
|
|
|
|
id: composer-cache
|
|
|
|
run: |
|
|
|
|
echo "::set-output name=dir::$(composer config cache-files-dir)"
|
|
|
|
|
|
|
|
- uses: actions/cache@v1
|
|
|
|
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 --no-progress --no-suggest
|
|
|
|
|
|
|
|
- name: PHPUnit Tests
|
|
|
|
run: ./vendor/bin/phpunit --testdox
|