ci: refine build, benchmark, and Pages workflows

* add workflow-level concurrency control for benchmark and Pages pipelines
* keep release changelog generation and the separate distZip step in the build workflow by design
* align the benchmark workflow with the primary Gradle action setup
* add Gradle wrapper validation to benchmark runs
* switch benchmark caching and setup to gradle/actions/setup-gradle
* remove the redundant Gradle wrapper executable-bit adjustment
* keep benchmark generation in Pages unchanged while improving workflow control
This commit is contained in:
2026-04-18 15:38:19 +02:00
parent db446932fc
commit db79dd2d4f
3 changed files with 10 additions and 12 deletions

View File

@@ -19,6 +19,10 @@ on:
- 'gradlew.bat' - 'gradlew.bat'
- '.github/workflows/benchmarks.yml' - '.github/workflows/benchmarks.yml'
concurrency:
group: benchmarks-${{ github.ref }}
cancel-in-progress: true
jobs: jobs:
jmh: jmh:
runs-on: ubuntu-latest runs-on: ubuntu-latest
@@ -31,15 +35,17 @@ jobs:
- name: Check out sources - name: Check out sources
uses: actions/checkout@v4 uses: actions/checkout@v4
- name: Validate Gradle wrapper
uses: gradle/actions/wrapper-validation@v4
- name: Set up JDK 21 - name: Set up JDK 21
uses: actions/setup-java@v4 uses: actions/setup-java@v4
with: with:
distribution: temurin distribution: temurin
java-version: '21' java-version: '21'
cache: gradle
- name: Make Gradle executable - name: Set up Gradle caching and instrumentation
run: chmod +x ./gradlew uses: gradle/actions/setup-gradle@v4
- name: Verify reproducibility inputs - name: Verify reproducibility inputs
shell: bash shell: bash

View File

@@ -156,15 +156,6 @@ jobs:
test -f gradle.properties test -f gradle.properties
test -f gradle/verification-metadata.xml test -f gradle/verification-metadata.xml
- name: Generate release changelog for tagged builds
if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/release@')
shell: bash
run: |
set -euo pipefail
chmod +x ./tools/generate-release-notes.sh
mkdir -p build/generated/release-notes
./tools/generate-release-notes.sh "${GITHUB_REF_NAME}" > build/generated/release-notes/CHANGELOG.md
- name: Build release inputs, signed Maven bundle, and SBOM - name: Build release inputs, signed Maven bundle, and SBOM
env: env:
SIGNING_KEY: ${{ secrets.SIGNING_KEY }} SIGNING_KEY: ${{ secrets.SIGNING_KEY }}

View File

@@ -19,6 +19,7 @@ on:
- 'gradlew' - 'gradlew'
- 'gradlew.bat' - 'gradlew.bat'
- '.github/workflows/pages.yml' - '.github/workflows/pages.yml'
- '.github/workflows/benchmarks.yml'
- 'tools/generate-pages-badges.py' - 'tools/generate-pages-badges.py'
workflow_dispatch: workflow_dispatch: