-
-
Notifications
You must be signed in to change notification settings - Fork 306
54 lines (41 loc) · 1.37 KB
/
benchmark.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# 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
- name: "Run PHPBench"
run: php vendor/bin/phpbench run --progress=plain --report=bare --output=csv
- name: "Parse benchmark results"
run: php benchmark/parse-result.php
- name: "Generate HTML report"
run: php benchmark/generate-html.php
- name: "Generate Markdown report"
run: php benchmark/generate-markdown.php
- name: "Publish results to branch benchmark"
uses: JamesIves/github-pages-deploy-action@v4
with:
branch: benchmark
folder: .build/phpbench
clean: true