Update ion-java-performance-regression-detector.yml #167
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: Ion Java performance regression detector | |
on: [pull_request, push] | |
jobs: | |
detect-regression: | |
name: Detect Regression | |
runs-on: ubuntu-latest | |
steps: | |
- name: Set up JDK 1.8 | |
uses: actions/setup-java@v1 | |
with: | |
java-version: 1.8 | |
- name: Checkout ion-java from the new commit. | |
uses: actions/checkout@v3 | |
with: | |
path: ion-java | |
- name: Build ion-java from the new commit | |
run: | | |
cd ion-java && git submodule init && git submodule update && ./gradlew clean publishToMavenLocal | |
ls | |
- name: Checkout ion-java-benchmark-cli | |
uses: actions/checkout@v3 | |
with: | |
repository: amazon-ion/ion-java-benchmark-cli | |
ref: master | |
path: ion-java-benchmark-cli | |
- name: Build ion-java-benchmark-cli | |
run: cd ion-java-benchmark-cli && mvn clean install | |
- name: Checkout ion-data-generator | |
uses: actions/checkout@v3 | |
with: | |
repository: amazon-ion/ion-data-generator | |
ref: main | |
path: ion-data-generator | |
- name: Build ion-data-generator | |
run: cd ion-data-generator && mvn clean install | |
- name: Check the version of ion-java. | |
run: java -jar ion-java-benchmark-cli/target/ion-java-benchmark-cli-0.0.1-SNAPSHOT-jar-with-dependencies.jar --version | |
- name: Generate test Ion Data | |
run: | | |
mkdir -p testData | |
java -jar ion-data-generator/target/ion-data-generator-1.0-SNAPSHOT.jar generate -S 50000 --input-ion-schema ion-data-generator/tst/com/amazon/ion/workflow/nestedStruct.isl testData/testStructs.10n | |
- name: Upload test Ion Data to artifacts | |
uses: actions/upload-artifact@v2 | |
with: | |
name: test Ion Data | |
path: testData | |
- name: Benchmark ion-java from the new commit | |
run: | | |
mkdir -p benchmarkResults | |
cd ion-java-benchmark-cli && java -jar target/ion-java-benchmark-cli-0.0.1-SNAPSHOT-jar-with-dependencies.jar write --api streaming --io-type buffer --warmups 4 --iterations 4 /home/runner/work/ion-java/ion-java/testData/testStructs.10n | |
- name: Store Benchmark Result | |
uses: benchmark-action/github-action-benchmark@v1 | |
with: | |
name: JMH Benchmark | |
tool: 'customSmallerIsBetter' | |
output-file-path: '/home/runner/work/ion-java/ion-java/benchmarkResult.json' | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
gh-pages-branch: benchmark-result-gh-pages | |
auto-push: true | |
comment-always: true | |
comment-on-alert: true |