fix: 213 summary-always and gh-repository don't work together #156
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI - separate results repo | |
on: | |
push: | |
branches: | |
- master | |
pull_request: | |
branches: | |
- master | |
jobs: | |
rust: | |
name: Run Rust benchmark example - github.com/benchmark-action/github-action-benchmark-results | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/checkout@v4 | |
with: | |
repository: benchmark-action/github-action-benchmark-results | |
ref: 'gh-pages' | |
path: 'dist/other-repo' | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: 20 | |
cache: 'npm' | |
- run: npm ci | |
- run: npm run build | |
- name: Save previous data.js | |
run: | | |
cp ./dist/other-repo/dev/bench/data.js before_data.js | |
- run: rustup toolchain update nightly && rustup default nightly | |
- name: Run benchmark | |
run: cd examples/rust && cargo +nightly bench | tee output.txt | |
- name: Store benchmark result | |
uses: ./ | |
with: | |
name: Rust Benchmark | |
tool: 'cargo' | |
output-file-path: examples/rust/output.txt | |
fail-on-alert: true | |
gh-repository: 'github.com/benchmark-action/github-action-benchmark-results' | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
- run: node ./dist/scripts/ci_validate_modification.js before_data.js 'Rust Benchmark' './benchmark-data-repository' | |
go: | |
name: Run Go benchmark example - github.com/benchmark-action/github-action-benchmark-results | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/checkout@v4 | |
with: | |
repository: benchmark-action/github-action-benchmark-results | |
ref: 'gh-pages' | |
path: 'dist/other-repo' | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: 20 | |
cache: 'npm' | |
- uses: actions/setup-go@v4 | |
with: | |
go-version: "stable" | |
- run: npm ci | |
- run: npm run build | |
- name: Save previous data.js | |
run: | | |
cp ./dist/other-repo/dev/bench/data.js before_data.js | |
- name: Run benchmark | |
run: cd examples/go && go test -bench 'BenchmarkFib' | tee output.txt | |
- name: Store benchmark result | |
uses: ./ | |
with: | |
name: Go Benchmark | |
tool: 'go' | |
output-file-path: examples/go/output.txt | |
fail-on-alert: true | |
gh-repository: 'github.com/benchmark-action/github-action-benchmark-results' | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
- run: node ./dist/scripts/ci_validate_modification.js before_data.js 'Go Benchmark' './benchmark-data-repository' | |
benchmarkjs: | |
name: Run JavaScript benchmark example - github.com/benchmark-action/github-action-benchmark-results | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/checkout@v4 | |
with: | |
repository: benchmark-action/github-action-benchmark-results | |
ref: 'gh-pages' | |
path: 'dist/other-repo' | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: 20 | |
cache: 'npm' | |
- run: npm ci | |
- run: npm run build | |
- name: Save previous data.js | |
run: | | |
cp ./dist/other-repo/dev/bench/data.js before_data.js | |
- name: Run benchmark | |
run: cd examples/benchmarkjs && npm install && node bench.js | tee output.txt | |
- name: Store benchmark result | |
uses: ./ | |
with: | |
name: Benchmark.js Benchmark | |
tool: 'benchmarkjs' | |
output-file-path: examples/benchmarkjs/output.txt | |
fail-on-alert: true | |
gh-repository: 'github.com/benchmark-action/github-action-benchmark-results' | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
- run: node ./dist/scripts/ci_validate_modification.js before_data.js 'Benchmark.js Benchmark' './benchmark-data-repository' | |
pytest-benchmark: | |
name: Run Pytest benchmark example - github.com/benchmark-action/github-action-benchmark-results | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/checkout@v4 | |
with: | |
repository: benchmark-action/github-action-benchmark-results | |
ref: 'gh-pages' | |
path: 'dist/other-repo' | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: 20 | |
cache: 'npm' | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: 3.9 | |
- run: npm ci | |
- run: npm run build | |
- name: Save previous data.js | |
run: | | |
cp ./dist/other-repo/dev/bench/data.js before_data.js | |
- name: Run benchmark | |
run: | | |
cd examples/pytest | |
pip install -r requirements.txt | |
pytest bench.py --benchmark-json output.json | |
- name: Store benchmark result | |
uses: ./ | |
with: | |
name: Python Benchmark with pytest-benchmark | |
tool: 'pytest' | |
output-file-path: examples/pytest/output.json | |
fail-on-alert: true | |
gh-repository: 'github.com/benchmark-action/github-action-benchmark-results' | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
- run: node ./dist/scripts/ci_validate_modification.js before_data.js 'Python Benchmark with pytest-benchmark' './benchmark-data-repository' | |
google-benchmark-framework: | |
name: Run Google C++ Benchmark Framework example - github.com/benchmark-action/github-action-benchmark-results | |
runs-on: ubuntu-20.04 | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/checkout@v4 | |
with: | |
repository: benchmark-action/github-action-benchmark-results | |
ref: 'gh-pages' | |
path: 'dist/other-repo' | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: 20 | |
cache: 'npm' | |
- run: npm ci | |
- run: npm run build | |
- name: Save previous data.js | |
run: | | |
cp ./dist/other-repo/dev/bench/data.js before_data.js | |
- name: Cache Benchmark library | |
uses: actions/cache@v4 | |
with: | |
path: examples/cpp/benchmark | |
key: ${{ runner.os }}-googlebenchmark-v1.5.0 | |
- name: Run benchmark | |
run: | | |
cd examples/cpp | |
make json | |
- name: Store benchmark result | |
uses: ./ | |
with: | |
name: C++ Benchmark | |
tool: 'googlecpp' | |
output-file-path: examples/cpp/benchmark_result.json | |
fail-on-alert: true | |
gh-repository: 'github.com/benchmark-action/github-action-benchmark-results' | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
- run: node ./dist/scripts/ci_validate_modification.js before_data.js 'C++ Benchmark' './benchmark-data-repository' | |
catch2-framework: | |
name: Run Catch2 C++ Benchmark Framework example - github.com/benchmark-action/github-action-benchmark-results | |
runs-on: ubuntu-20.04 | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/checkout@v4 | |
with: | |
repository: benchmark-action/github-action-benchmark-results | |
ref: 'gh-pages' | |
path: 'dist/other-repo' | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: 20 | |
cache: 'npm' | |
- run: npm ci | |
- run: npm run build | |
- name: Save previous data.js | |
run: | | |
cp ./dist/other-repo/dev/bench/data.js before_data.js | |
- name: Run benchmark | |
run: | | |
cd examples/catch2 | |
mkdir build && cd build | |
cmake -DCMAKE_BUILD_TYPE=Release .. | |
cmake --build . --config Release | |
./Catch2_bench > ../benchmark_result.txt | |
- name: Store benchmark result | |
uses: ./ | |
with: | |
name: Catch2 Benchmark | |
tool: 'catch2' | |
output-file-path: examples/catch2/benchmark_result.txt | |
fail-on-alert: true | |
gh-repository: 'github.com/benchmark-action/github-action-benchmark-results' | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
- run: node ./dist/scripts/ci_validate_modification.js before_data.js 'Catch2 Benchmark' './benchmark-data-repository' | |
julia-benchmark: | |
name: Run Julia benchmark example - github.com/benchmark-action/github-action-benchmark-results | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/checkout@v4 | |
with: | |
repository: benchmark-action/github-action-benchmark-results | |
ref: 'gh-pages' | |
path: 'dist/other-repo' | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: 20 | |
cache: 'npm' | |
- run: npm ci | |
- run: npm run build | |
- name: Save previous data.js | |
run: | | |
cp ./dist/other-repo/dev/bench/data.js before_data.js | |
- uses: julia-actions/setup-julia@v1 | |
with: | |
version: '1' | |
arch: x64 | |
- name: Run benchmark | |
run: | | |
cd examples/julia | |
julia --project --color=yes -e ' | |
using Pkg; | |
Pkg.instantiate(); | |
include("fib.jl")' | |
- name: Store benchmark result | |
uses: ./ | |
with: | |
name: Julia benchmark | |
tool: 'julia' | |
output-file-path: examples/julia/output.json | |
fail-on-alert: true | |
gh-repository: 'github.com/benchmark-action/github-action-benchmark-results' | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
- run: node ./dist/scripts/ci_validate_modification.js before_data.js 'Julia benchmark' './benchmark-data-repository' | |
benchmarkdotnet-framework: | |
name: Run Benchmark.Net .Net Benchmark Framework example - github.com/benchmark-action/github-action-benchmark-results | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/checkout@v4 | |
with: | |
repository: benchmark-action/github-action-benchmark-results | |
ref: 'gh-pages' | |
path: 'dist/other-repo' | |
- uses: actions/setup-dotnet@v3 | |
with: | |
dotnet-version: '6.0.101' # SDK Version to use. keep in line with examples/benchmarkdotnet/global.json | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: 20 | |
cache: 'npm' | |
- run: npm ci | |
- run: npm run build | |
- name: Save previous data.js | |
run: | | |
cp ./dist/other-repo/dev/bench/data.js before_data.js | |
- name: Run benchmark | |
run: cd examples/benchmarkdotnet && dotnet run --exporters json --filter '*' | |
- name: Store benchmark result | |
uses: ./ | |
with: | |
name: Benchmark.Net Benchmark | |
tool: 'benchmarkdotnet' | |
output-file-path: examples/benchmarkdotnet/BenchmarkDotNet.Artifacts/results/Sample.Benchmarks-report-full-compressed.json | |
fail-on-alert: true | |
gh-repository: 'github.com/benchmark-action/github-action-benchmark-results' | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
- run: node ./dist/scripts/ci_validate_modification.js before_data.js 'Benchmark.Net Benchmark' './benchmark-data-repository' | |
only-alert-with-cache: | |
name: Run alert check with actions/cache | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/checkout@v4 | |
with: | |
repository: benchmark-action/github-action-benchmark-results | |
ref: 'gh-pages' | |
path: 'dist/other-repo' | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: 20 | |
cache: 'npm' | |
- run: npm ci | |
- run: npm run build | |
- uses: actions/setup-go@v4 | |
with: | |
go-version: "stable" | |
- name: Run benchmark | |
run: cd examples/go && go test -bench 'BenchmarkFib' | tee output.txt | |
- name: Download previous benchmark data | |
uses: actions/cache@v4 | |
with: | |
path: ./cache | |
key: ${{ runner.os }}-ci-cache-test | |
- name: Store benchmark result | |
uses: ./ | |
with: | |
name: Alert setup example with cache | |
tool: 'go' | |
output-file-path: examples/go/output.txt | |
external-data-json-path: ./cache/benchmark-data.json | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
alert-threshold: '200%' | |
comment-on-alert: true | |
fail-on-alert: true | |
alert-comment-cc-users: '@ktrz' |