Skip to content

Generate specification documentation #2

Generate specification documentation

Generate specification documentation #2

Workflow file for this run

# This workflow automates the creation of Specification Documents
# which will be copied into https://github.com/jakartaee/specifications
name: Generate specification documentation
on:
workflow_dispatch:
inputs:
specVersion:
description: 'Major and Minor level of release. Example: 1.0'
required: true
jobs:
generate:
runs-on: ubuntu-latest
steps:
- name: Checkout source
uses: actions/checkout@44c2b7a8a4ea60a981eaca3cf939b5f4305c123b # v4.1.5
- name: Set up JDK 17
uses: actions/setup-java@99b8673ff64fbf99d8d325f52d9a5bdedb8483e9 # v4.2.1
with:
java-version: 17
distribution: 'temurin'
cache: maven
- name: Generate specification docs
run: |
mvn package --file api/pom.xml -Dspec.version=${{ github.event.inputs.specVersion }}
mvn package --file spec/pom.xml -Drevremark=FINAL -Dspec.version=${{ github.event.inputs.specVersion }}
- name: Assemble documentation
run: |
mkdir documentation/
cp spec/target/generated-docs/jakarta-data-${{ github.event.inputs.specVersion }}.pdf documentation/jakarta-data-${{ github.event.inputs.specVersion }}.pdf
cp spec/target/generated-docs/jakarta-method-name-query-${{ github.event.inputs.specVersion }}.pdf documentation/jakarta-method-name-query-${{ github.event.inputs.specVersion }}.pdf
cp spec/target/generated-docs/jakarta-data-${{ github.event.inputs.specVersion }}.html documentation/jakarta-data-${{ github.event.inputs.specVersion }}.html
cp spec/target/generated-docs/jakarta-method-name-query-${{ github.event.inputs.specVersion }}.html documentation/jakarta-method-name-query-${{ github.event.inputs.specVersion }}.html
cp -r api/target/apidocs/ documentation/apidocs
- name: Upload documentation
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 # v4.3.3
with:
name: Specification Documentation
path: documentation/
if-no-files-found: error