summaryrefslogtreecommitdiffstats
path: root/src/jaegertracing/opentelemetry-cpp/.github/workflows/benchmark.yml
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-21 11:54:28 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-21 11:54:28 +0000
commite6918187568dbd01842d8d1d2c808ce16a894239 (patch)
tree64f88b554b444a49f656b6c656111a145cbbaa28 /src/jaegertracing/opentelemetry-cpp/.github/workflows/benchmark.yml
parentInitial commit. (diff)
downloadceph-e6918187568dbd01842d8d1d2c808ce16a894239.tar.xz
ceph-e6918187568dbd01842d8d1d2c808ce16a894239.zip
Adding upstream version 18.2.2.upstream/18.2.2
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'src/jaegertracing/opentelemetry-cpp/.github/workflows/benchmark.yml')
-rw-r--r--src/jaegertracing/opentelemetry-cpp/.github/workflows/benchmark.yml72
1 files changed, 72 insertions, 0 deletions
diff --git a/src/jaegertracing/opentelemetry-cpp/.github/workflows/benchmark.yml b/src/jaegertracing/opentelemetry-cpp/.github/workflows/benchmark.yml
new file mode 100644
index 000000000..d6b12b82d
--- /dev/null
+++ b/src/jaegertracing/opentelemetry-cpp/.github/workflows/benchmark.yml
@@ -0,0 +1,72 @@
+name: OpenTelemetry-cpp benchmarks
+on:
+ push:
+ branches:
+ - main
+
+permissions:
+ contents: write
+ deployments: write
+
+jobs:
+ benchmark:
+ name: Run OpenTelemetry-cpp benchmarks
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v3
+ with:
+ submodules: 'recursive'
+ - name: Mount Bazel Cache
+ uses: actions/cache@v3
+ env:
+ cache-name: bazel_cache
+ with:
+ path: /home/runner/.cache/bazel
+ key: bazel_benchmark
+ - name: setup
+ run: |
+ sudo ./ci/setup_cmake.sh
+ sudo ./ci/setup_ci_environment.sh
+ - name: Run benchmark
+ id: run_benchmarks
+ run: |
+ ci/do_ci.sh bazel.benchmark
+ mkdir -p benchmarks
+ mv api-benchmark_result.json benchmarks
+ mv sdk-benchmark_result.json benchmarks
+ mv exporters-benchmark_result.json benchmarks
+ - uses: actions/upload-artifact@master
+ with:
+ name: benchmark_results
+ path: benchmarks
+ store_benchmark:
+ needs: benchmark
+ strategy:
+ matrix:
+ components: ["api", "sdk", "exporters"]
+ name: Store benchmark result
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v3
+ - uses: actions/download-artifact@master
+ with:
+ name: benchmark_results
+ path: benchmarks
+ - name: Print json files
+ id: print_json
+ run: |
+ cat benchmarks/*
+ - name: Push benchmark result
+ uses: benchmark-action/github-action-benchmark@v1
+ with:
+ name: OpenTelemetry-cpp ${{ matrix.components }} Benchmark
+ tool: 'googlecpp'
+ output-file-path: benchmarks/${{ matrix.components }}-benchmark_result.json
+ github-token: ${{ secrets.GITHUB_TOKEN }}
+ auto-push: true
+ # Show alert with commit comment on detecting possible performance regression
+ alert-threshold: '200%'
+ comment-on-alert: true
+ fail-on-alert: false
+ gh-pages-branch: gh-pages
+ benchmark-data-dir-path: benchmarks