Skip to content

Feat / Creation of BackupCodeUsedEvent #790

Feat / Creation of BackupCodeUsedEvent

Feat / Creation of BackupCodeUsedEvent #790

Workflow file for this run

name: 'CI'
on:
pull_request:
push:
jobs:
coding-standards:
name: 'Coding Standards - PHP ${{ matrix.php-version }}'
runs-on: 'ubuntu-latest'
# We want to run on external PRs, but not on our own internal PRs as they'll be run by the push to the branch.
if: ${{ !(github.event_name == 'pull_request' && github.event.pull_request.head.repo.full_name == github.repository) }}
strategy:
fail-fast: false
matrix:
php-version:
- '8.2'
steps:
- name: 'Checkout code'
uses: actions/checkout@v4
- name: 'Setup Build'
uses: ./.github/actions/setup-build
with:
php-version: '${{ matrix.php-version }}'
composer-token: ${{ secrets.GITHUB_TOKEN }}
- name: "PHP Coding Standards Fixer"
run: php-cs-fixer fix --dry-run --diff --using-cache=no
- name: "PHP Code Style Sniffer"
if: always()
run: vendor/bin/phpcs
- name: "Psalm"
if: always()
run: vendor/bin/psalm
unit-tests:
name: "Unit Tests - PHP ${{ matrix.php-version }}, Sf ${{ matrix.symfony-version }}${{ matrix.dependency-versions && format(', Deps: {0}', matrix.dependency-versions) }}"
runs-on: ubuntu-latest
# We want to run on external PRs, but not on our own internal PRs as they'll be run by the push to the branch.
if: ${{ !(github.event_name == 'pull_request' && github.event.pull_request.head.repo.full_name == github.repository) }}
strategy:
fail-fast: false
matrix:
include:
# Lowest possible configuration
- php-version: '8.2'
dependency-versions: 'lowest'
symfony-version: '6.4.*'
# Test against Symfony 6.4
- php-version: '8.3'
symfony-version: '6.4.*'
# Test against Symfony 7
- php-version: '8.3'
symfony-version: '7.*'
steps:
- name: 'Checkout code'
uses: actions/checkout@v4
- name: 'Setup Build'
uses: ./.github/actions/setup-build
with:
php-version: '${{ matrix.php-version }}'
composer-token: ${{ secrets.GITHUB_TOKEN }}
composer-dependency-versions: '${{ matrix.dependency-versions }}'
composer-require: '${{ matrix.composer-require }}'
symfony-version: '${{ matrix.symfony-version }}'
- name: 'Run tests'
run: vendor/bin/phpunit
integration-tests:
name: 'Integration Tests - PHP ${{ matrix.php-version }}, Sf ${{ matrix.symfony-version }}'
runs-on: ubuntu-latest
# We want to run on external PRs, but not on our own internal PRs as they'll be run by the push to the branch.
if: ${{ !(github.event_name == 'pull_request' && github.event.pull_request.head.repo.full_name == github.repository) }}
strategy:
fail-fast: false
matrix:
include:
# Minimum PHP version
- php-version: '8.3'
symfony-version: '6.4.*'
# Test against Symfony 7.*
- php-version: '8.3'
symfony-version: '7.*'
steps:
- name: 'Checkout code'
uses: actions/checkout@v4
- name: 'Setup Build'
uses: ./.github/actions/setup-build
with:
php-version: '${{ matrix.php-version }}'
composer-token: ${{ secrets.GITHUB_TOKEN }}
composer-working-dir: app
composer-require: '${{ matrix.composer-require }}'
symfony-version: '${{ matrix.symfony-version }}'
- name: 'Run tests'
run: app/vendor/bin/phpunit -c app
code-coverage:
name: 'Code Coverage - PHP ${{ matrix.php-version }}'
runs-on: 'ubuntu-latest'
# We want to run on external PRs, but not on our own internal PRs as they'll be run by the push to the branch.
if: ${{ !(github.event_name == 'pull_request' && github.event.pull_request.head.repo.full_name == github.repository) }}
strategy:
fail-fast: false
matrix:
php-version:
- '8.2'
steps:
- name: 'Checkout code'
uses: actions/checkout@v4
- name: 'Setup Build'
uses: ./.github/actions/setup-build
with:
php-version: '${{ matrix.php-version }}'
php-coverage: 'pcov'
composer-token: ${{ secrets.GITHUB_TOKEN }}
- name: 'Run tests with coverage'
run: vendor/bin/phpunit --coverage-clover coverage/clover.xml
- name: 'Send Coverage to Codecov'
uses: codecov/codecov-action@v3
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: coverage/clover.xml
flags: unittests
fail_ci_if_error: true