Skip to content

chore(deps): update weekly update (major) (#8166) #1556

chore(deps): update weekly update (major) (#8166)

chore(deps): update weekly update (major) (#8166) #1556

Workflow file for this run

name: Benchmark Main
on:
push:
branches: [ main ]
workflow_dispatch:
permissions:
contents: read
jobs:
sdk-benchmark:
permissions:
contents: write # for git push to benchmarks branch
name: Benchmark SDK
runs-on: oracle-bare-metal-64cpu-512gb-x86-64
container:
image: ubuntu:24.04@sha256:d1e2e92c075e5ca139d51a140fff46f84315c0fdce203eab2807c7e495eff4f9
timeout-minutes: 20 # since there is only a single bare metal runner across all repos
steps:
- name: Install Git
run: |
apt-get update
apt-get install -y git
- name: Configure Git safe directory
run: git config --global --add safe.directory "$GITHUB_WORKSPACE"
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
- id: setup-java
name: Set up Java for build
uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # v5.2.0
with:
distribution: temurin
java-version: 21
- name: Set up gradle
uses: gradle/actions/setup-gradle@0723195856401067f7a2779048b490ace7a47d7c # v5.0.2
- name: Run jmh
run: ./gradlew jmhJar
env:
DEVELOCITY_ACCESS_KEY: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
# TODO (jack-berg): Select or build appropriate benchmarks for other key areas:
# - Log SDK export
# - Trace SDK export
# - Metric SDK export
# - Noop implementation
- name: Run Benchmark
run: |
cd sdk/all/build
java -jar libs/opentelemetry-sdk-*-jmh.jar -rf json MetricRecordBenchmark SpanRecordBenchmark LogRecordBenchmark
- name: Use CLA approved github bot
run: .github/scripts/use-cla-approved-bot.sh
- name: Store benchmark results
uses: benchmark-action/github-action-benchmark@a7bc2366eda11037936ea57d811a43b3418d3073 # v1.21.0
with:
tool: 'jmh'
output-file-path: sdk/all/build/jmh-result.json
gh-pages-branch: benchmarks
github-token: ${{ secrets.GITHUB_TOKEN }}
benchmark-data-dir-path: "benchmarks"
auto-push: true