Skip to content

test: add benchmarking using jmh #44

test: add benchmarking using jmh

test: add benchmarking using jmh #44

Workflow file for this run

name: CI/CD
on:
push:
branches:
- "main"
- "master"
paths-ignore:
- 'docs/**'
- 'workflows/**'
tags:
- "*.*.*"
workflow_dispatch:
inputs:
java:
description: 'Java version'
type: number
default: 21
os:
description: 'OS'
type: choice
default: 'ubuntu-latest'
options:
- 'ubuntu-latest'
- 'windows-latest'
- 'macos-latest'
generate_attestations:
description: 'Generate build provenance attestations'
type: boolean
default: true
retention_days:
description: 'Artifact retention days'
type: number
default: 7
prerelease_suffix:
description: "Pattern to identify pre-releases (default: -RC)"
type: string
default: '-RC'
permissions:
attestations: write
contents: write
id-token: write
checks: write
concurrency:
group: ${{ format('{0}-{1}', github.job, github.ref) }}
cancel-in-progress: true
jobs:
test:
name: Test
uses: ./.github/workflows/test.yml
with:
os: ${{ inputs.os || 'ubuntu-latest' }}
java: ${{ inputs.java || 21 }}
fail_on_test_failure: true
# Build and stage artifacts
stage:
name: Stage
needs: test
uses: ./.github/workflows/stage.yml
with:
os: ${{ inputs.os || 'ubuntu-latest' }}
java: ${{ inputs.java || 21 }}
generate_attestations: ${{ inputs.generate_attestations || true }}
retention_days: ${{ inputs.retention_days || 7 }}
prerelease_suffix: ${{ inputs.prerelease_suffix || '-RC' }}
secrets: inherit
# Deploy artifacts when creating a tag
deploy:
name: Deploy
needs: stage
if: github.ref_type == 'tag'
uses: ./.github/workflows/deploy.yml
with:
os: ${{ inputs.os || 'ubuntu-latest' }}
retention_days: ${{ inputs.retention_days || 7 }}
prerelease_suffix: ${{ inputs.prerelease_suffix || '-RC' }}
draft: false
secrets: inherit