Skip to content

build(github): Add GitHub actions for static analysis and unit testin… #2

build(github): Add GitHub actions for static analysis and unit testin…

build(github): Add GitHub actions for static analysis and unit testin… #2

Workflow file for this run

name: tests
on:
push:
branches:
- main
pull_request:
jobs:
tests:
runs-on: ubuntu-22.04
services: {}
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: 8.2
extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, sqlite, pdo_sqlite, gd, redis, igbinary, msgpack, lzf, zstd, lz4, memcached, gmp, :php-psr
ini-values: error_reporting=E_ALL
tools: composer:v2
coverage: pcov
- name: Install dependencies
uses: nick-fields/retry@v3
with:
timeout_minutes: 5
max_attempts: 5
command: composer install --dev --no-interaction --no-progress
- name: Prepare testbench
run: composer clear && composer prepare && composer build
- name: Publish required assets
run: vendor/bin/testbench vendor:publish --provider="Sprout\\SproutServiceProvider"
- name: Execute tests
run: composer test
- name: Upload coverage reports to Codecov
uses: codecov/codecov-action@v4
with:
fail_ci_if_error: true # optional (default = false)
files: ./build/logs/clover.xml
token: ${{ secrets.CODECOV_TOKEN }}
- name: Upload test results to Codecov
if: ${{ !cancelled() }}
uses: codecov/test-results-action@v1
with:
files: ./build/report.junit.xml
token: ${{ secrets.CODECOV_TOKEN }}