This is an automated email from the ASF dual-hosted git repository.
paulk-asert pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/groovy.git
The following commit(s) were added to refs/heads/master by this push:
new f97ae1bfbf minor refactor: run jmh tests also daily
f97ae1bfbf is described below
commit f97ae1bfbf4070f49abdee723606544c0bbde6be
Author: Paul King <[email protected]>
AuthorDate: Wed May 6 09:39:26 2026 +1000
minor refactor: run jmh tests also daily
---
.github/workflows/groovy-jmh-daily.yml | 91 ++++++++++++++++++++++++++++++++++
1 file changed, 91 insertions(+)
diff --git a/.github/workflows/groovy-jmh-daily.yml
b/.github/workflows/groovy-jmh-daily.yml
new file mode 100644
index 0000000000..5ca4733f42
--- /dev/null
+++ b/.github/workflows/groovy-jmh-daily.yml
@@ -0,0 +1,91 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+name: jmh-daily
+
+on:
+ schedule:
+ - cron: '0 6 * * *' # 06:00 UTC daily
+ workflow_dispatch:
+
+permissions:
+ contents: write # gh-pages push
+ deployments: write
+ issues: write # commit comments
+
+jobs:
+ benchmark:
+ strategy:
+ fail-fast: false
+ matrix:
+ include:
+ - suite: bench
+ pattern: '\\.bench\\.'
+ indy: indy
+ indyFlag: ''
+ - suite: bench
+ pattern: '\\.bench\\.'
+ indy: classic
+ indyFlag: '-Pindy=false'
+ - suite: core
+ pattern: '\\.perf\\.[A-Z]'
+ indy: indy
+ indyFlag: ''
+ - suite: core
+ pattern: '\\.perf\\.[A-Z]'
+ indy: classic
+ indyFlag: '-Pindy=false'
+ - suite: grails
+ pattern: '\\.perf\\.grails\\.'
+ indy: indy
+ indyFlag: ''
+ - suite: grails
+ pattern: '\\.perf\\.grails\\.'
+ indy: classic
+ indyFlag: '-Pindy=false'
+ runs-on: ubuntu-latest
+ env:
+ DEVELOCITY_ACCESS_KEY: ${{ secrets.DEVELOCITY_ACCESS_KEY }}
+ steps:
+ - uses: actions/checkout@v6
+ - uses: actions/setup-java@v5
+ with:
+ distribution: 'zulu'
+ java-version: 21
+ check-latest: true
+ - uses:
gradle/actions/setup-gradle@0723195856401067f7a2779048b490ace7a47d7c # v5.0.2
+
+ - name: JMH (${{ matrix.suite }} ${{ matrix.indy }})
+ run: ./gradlew perf:jmh -PbenchInclude=${{ matrix.pattern }} ${{
matrix.indyFlag }} -PjmhResultFormat=JSON
+ timeout-minutes: 60
+
+ - name: Publish to dashboard
+ uses: benchmark-action/github-action-benchmark@v1
+ with:
+ tool: 'jmh'
+ output-file-path:
subprojects/performance/build/results/jmh/results.json
+ benchmark-data-dir-path: dev/bench/jmh/${{ matrix.suite }}/${{
matrix.indy }}
+ gh-pages-branch: gh-pages
+ auto-push: true
+ comment-always: true
+ alert-threshold: '120%'
+ fail-on-alert: false
+ github-token: ${{ secrets.GITHUB_TOKEN }}
+
+ - name: Upload reports-jmh-${{ matrix.suite }}-${{ matrix.indy }}
+ uses: actions/upload-artifact@v7
+ with:
+ name: reports-jmh-${{ matrix.suite }}-${{ matrix.indy }}
+ path: subprojects/performance/build/results/jmh/