Skip to content

github test action events #1

github test action events

github test action events #1

Workflow file for this run

on:
push:
branches: [ 'main', '*.*.x' ]
pull_request: ~
workflow_call:
inputs:
phps:
description: PHP versions in JSON array format
type: string
required: false
default: '["8.3"]'
dependencies:
description: Dependency versions (locked, lowest, highest) in JSON array format
type: string
required: false
default: '["locked", "lowest", "highest"]'
secrets:
codecov-token:
description: Codecov.io token
required: false
jobs:
phpunit:
runs-on: ubuntu-latest
strategy:
matrix:
php: ${{ fromJson(inputs.phps) }}
dependencies: ${{ fromJson(inputs.dependencies) }}
steps:
- id: coverage
run: |
echo "coverage=${{ secrets.codecov-token && (matrix.php == fromJson(inputs.phps)[0]) && (matrix.dependencies == fromJson(inputs.dependencies)[0]) && '1' || '' }}" >> $GITHUB_OUTPUT
- uses: actions/checkout@v4
- uses: shivammathur/setup-php@v2
with:
php-version: ${{ matrix.php }}
ini-file: development
tools: composer:v2
coverage: ${{ steps.coverage.outputs.coverage && 'pcov' || '' }}
extensions: pcntl
ini-values: disable_functions=pcntl_fork
- uses: ramsey/composer-install@v3
with:
composer-options: --optimize-autoloader
dependency-versions: ${{ matrix.dependencies }}
- uses: namoshek/rabbitmq-github-action@v1
- run: THESIS_AMQP_DSN="amqp://guest:guest@127.0.0.1:5673/?tcp_nodelay=true" composer test -- --colors=always ${{ steps.coverage.outputs.coverage && '--coverage-clover coverage.xml' || '' }}
- if: ${{ steps.coverage.outputs.coverage }}
uses: codecov/codecov-action@v4
env:
CODECOV_TOKEN: ${{ secrets.codecov-token }}