Skip to content

Merge pull request #400 from gofiber/dependabot/go_modules/handlebars… #213

Merge pull request #400 from gofiber/dependabot/go_modules/handlebars…

Merge pull request #400 from gofiber/dependabot/go_modules/handlebars… #213

Workflow file for this run

name: Benchmark
on:
push:
branches:
- "master"
- "main"
paths:
- "**.go"
- "**/go.mod"
- ".github/workflows/benchmark.yml"
pull_request:
branches:
- "*"
paths:
- "**.go"
- "**/go.mod"
- ".github/workflows/benchmark.yml"
permissions:
deployments: write
contents: write
jobs:
Compare:
runs-on: ubuntu-latest
steps:
- name: Fetch Repository
uses: actions/checkout@v4
- name: Install Go
uses: actions/setup-go@v5
with:
# NOTE: Keep this in sync with the version from go.mod
go-version: "1.20.x"
cache: false
- name: Run Benchmarks
run: |
set -o pipefail
for d in */ ; do
cd "$d"
go test ./... -benchmem -run=^$ -bench . | tee -a ../output.txt
cd ..
done
shell: bash
- name: Get Previous Benchmark Results
uses: actions/cache@v4
with:
path: ./cache
key: ${{ runner.os }}-benchmark
- name: Save Benchmark Results
uses: benchmark-action/[email protected]
with:
# What benchmark tool the output.txt came from
tool: 'go'
# Where the output from the benchmark tool is stored
output-file-path: output.txt
# Where the previous data file is stored
external-data-json-path: ./cache/benchmark-data.json
# Secret for Github
github-token: ${{ secrets.BENCHMARK_TOKEN }}
# Directory that contains benchmark files on the GitHub pages branch
benchmark-data-dir-path: "benchmarks"
# Workflow will fail when an alert happens
fail-on-alert: true
comment-on-alert: ${{ github.event_name == 'push' || github.event_name == 'workflow_dispatch' }}
#summary-always: ${{ github.event_name != 'push' && github.event_name != 'workflow_dispatch' }}
auto-push: ${{ github.event_name == 'push' || github.event_name == 'workflow_dispatch' }}
save-data-file: ${{ github.event_name == 'push' || github.event_name == 'workflow_dispatch' }}