42 lines
1.0 KiB
YAML
42 lines
1.0 KiB
YAML
name: Test & lint PHP stuff
|
|
|
|
on:
|
|
push:
|
|
branches: [ "main" ]
|
|
pull_request:
|
|
branches: [ "main" ]
|
|
|
|
jobs:
|
|
test-and-lint-php:
|
|
name: Test & lint PHP stuff
|
|
runs-on: ubuntu-20.04
|
|
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
|
|
- name: Validate composer.json and composer.lock
|
|
run: composer validate
|
|
|
|
- name: Cache dependencies
|
|
uses: actions/cache@v2
|
|
with:
|
|
path: vendor
|
|
key: ${{ runner.os }}-composer-dependencies-${{ hashFiles('composer.lock') }}
|
|
restore-keys: ${{ runner.os }}-composer-dependencies
|
|
|
|
- name: Setup PHP
|
|
uses: shivammathur/setup-php@v2
|
|
with:
|
|
php-version: 8.1
|
|
extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, sqlite, pdo_sqlite, intl
|
|
coverage: none
|
|
|
|
- name: Install Composer dependencies
|
|
run: composer install --prefer-dist --no-interaction --no-suggest
|
|
|
|
- name: Run PHP linter
|
|
run: composer ecs
|
|
|
|
- name: Execute tests
|
|
run: php artisan test --env=ci
|