Skip to content

Commit

Permalink
✨ benchmark runner
Browse files Browse the repository at this point in the history
  • Loading branch information
codemasher committed Apr 30, 2024
1 parent 08ccffd commit 731e3a2
Showing 1 changed file with 56 additions and 0 deletions.
56 changes: 56 additions & 0 deletions .github/workflows/benchmark.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
# we're running the benchmarks in a job separate from CI as it may take some time to finish

on:
push:
branches:
- benchmark-runner

name: "Benchmark"

env:
PHP_EXTENSIONS: fileinfo, gd, imagick, json, mbstring
PHP_INI_VALUES: memory_limit=-1, error_reporting=-1, display_errors=On

jobs:

benchmark:
name: "Run Benchmark suite"
runs-on: ubuntu-latest

steps:
- name: "Checkout sources"
uses: actions/checkout@v4
with:
ref: main

- name: "Install PHP"
uses: shivammathur/setup-php@v2
with:
php-version: "8.3"
extensions: opcache, ${{ env.PHP_EXTENSIONS }}
ini-values: ${{ env.PHP_INI_VALUES }}
coverage: none

- name: "Install dependencies with composer"
uses: ramsey/composer-install@v3
with:
working-directory: main

- name: "Run PHPBench"
run: php main/vendor/bin/phpbench run --progress=plain --report=bare --output=csv

- name: "Parse benchmark results"
run: php main/benchmark/parse-result.php

- name: "Generate HTML report"
run: php main/benchmark/generate-html.php

- name: "Generate Markdown report"
run: php main/benchmark/generate-markdown.php

- name: "Publish results to branch benchmark"
uses: JamesIves/github-pages-deploy-action@v4
with:
branch: benchmark
folder: main/.build/phpbench
clean: true

0 comments on commit 731e3a2

Please sign in to comment.