Skip to content

API Docs

API Docs #14

Workflow file for this run

# This workflow builds and deploys the JavaDoc API docs for the library modules
name: API Docs
# Run this on releases and on demand (manually)
on:
release:
workflow_dispatch:
inputs:
ref:
description: 'Git ref (tag, branch, or SHA) to build the docs from. Defaults to the branch the workflow is run from.'
required: false
default: ''
jobs:
build-javadoc-and-deploy:
runs-on: ubuntu-latest
steps:
- name: Checkout # release, manually selected ref, or the workflow_dispatch input
uses: actions/checkout@v4
with:
# For manual runs, use the provided ref if any; otherwise fall back to
# the ref the workflow was launched from (which is what actions/checkout
# uses by default when 'ref' is empty).
ref: ${{ github.event.inputs.ref }}
- name: Cache Maven dependencies
uses: actions/cache@v4
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
restore-keys: |
${{ runner.os }}-maven-
# Aggregate every library module. Excluding examples and the Maven plugin keeps the
# generators (quickcheck, instancio, jetcheck) and the JUnit 4/5 adapters in, and picks
# up any future module automatically.
- name: Build JavaDoc
run: "mvn -B -ntp javadoc:aggregate -pl '!:jqf-examples,!:jqf-maven-plugin'"
- name: Deploy to gh-pages
uses: JamesIves/github-pages-deploy-action@4.1.4
with:
branch: gh-pages
folder: target/site