reduce some string alloc on building (#4564) #101
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: Run performance benchmarks | |
on: | |
workflow_dispatch: # Allows manual triggering of workflow | |
push: | |
branches: | |
- main | |
paths: | |
- src/client/Microsoft.Identity.Client/**/*.cs | |
permissions: | |
# Deployments permission to deploy GitHub pages website | |
deployments: write | |
# Contents permission to update benchmark contents in gh-pages branch | |
contents: write | |
jobs: | |
benchmark: | |
name: Run performance benchmarks | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/setup-dotnet@v3 | |
with: | |
dotnet-version: '6.0.418' | |
- name: Run benchmark | |
run: cd tests/Microsoft.Identity.Test.Performance && dotnet run -c release -f net6.0 --exporters json | |
- name: Download previous benchmark data | |
uses: actions/cache@v3 | |
with: | |
path: ./cache | |
key: ${{ runner.os }}-benchmark | |
- name: Store AcquireTokenNoCacheTests result | |
uses: benchmark-action/github-action-benchmark@v1 | |
with: | |
name: AcquireTokenNoCache | |
tool: 'benchmarkdotnet' | |
output-file-path: tests/Microsoft.Identity.Test.Performance/BenchmarkDotNet.Artifacts/results/Microsoft.Identity.Test.Performance.AcquireTokenNoCacheTests-report-full-compressed.json | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
auto-push: true | |
# Show alert with commit comment on detecting possible performance regression | |
alert-threshold: '130%' | |
comment-on-alert: true | |
fail-on-alert: true | |
summary-always: true | |
gh-pages-branch: gh-pages | |
benchmark-data-dir-path: benchmarks | |
- name: Store AcquireTokenForClientCacheTests result | |
uses: benchmark-action/github-action-benchmark@v1 | |
with: | |
name: AcquireTokenForClientWithCache | |
tool: 'benchmarkdotnet' | |
output-file-path: tests/Microsoft.Identity.Test.Performance/BenchmarkDotNet.Artifacts/results/Microsoft.Identity.Test.Performance.AcquireTokenForClientCacheTests-report-full-compressed.json | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
auto-push: true | |
# Show alert with commit comment on detecting possible performance regression | |
alert-threshold: '130%' | |
comment-on-alert: true | |
fail-on-alert: true | |
summary-always: true | |
gh-pages-branch: gh-pages | |
benchmark-data-dir-path: benchmarks | |
- name: Store AcquireTokenForOboCacheTests result | |
uses: benchmark-action/github-action-benchmark@v1 | |
with: | |
name: AcquireTokenForOboWithCache | |
tool: 'benchmarkdotnet' | |
output-file-path: tests/Microsoft.Identity.Test.Performance/BenchmarkDotNet.Artifacts/results/Microsoft.Identity.Test.Performance.AcquireTokenForOboCacheTests-report-full-compressed.json | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
auto-push: true | |
# Show alert with commit comment on detecting possible performance regression | |
alert-threshold: '130%' | |
comment-on-alert: true | |
fail-on-alert: true | |
summary-always: true | |
gh-pages-branch: gh-pages | |
benchmark-data-dir-path: benchmarks | |
- name: Store TokenCacheTests result | |
uses: benchmark-action/github-action-benchmark@v1 | |
with: | |
name: TokenCacheTestsWithCache | |
tool: 'benchmarkdotnet' | |
output-file-path: tests/Microsoft.Identity.Test.Performance/BenchmarkDotNet.Artifacts/results/Microsoft.Identity.Test.Performance.TokenCacheTests-report-full-compressed.json | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
auto-push: true | |
# Show alert with commit comment on detecting possible performance regression | |
alert-threshold: '130%' | |
comment-on-alert: true | |
fail-on-alert: true | |
summary-always: true | |
gh-pages-branch: gh-pages | |
benchmark-data-dir-path: benchmarks |