wip #1863
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Quarkus Documentation CI | |
on: | |
push: | |
branches-ignore: | |
- 'dependabot/**' | |
- '3.0' | |
paths: | |
- 'core/processor/**' | |
- 'devtools/config-doc-maven-plugin/**' | |
- 'docs/**' | |
- 'extensions/**/pom.xml' | |
- 'extensions/**/*Config*.java' | |
- 'extensions/core/runtime/pom.xml' | |
- 'extensions/core/runtime/**/*Config*.java' | |
- 'extensions/core/deployment/pom.xml' | |
- 'extensions/core/deployment/**/*Config*.java' | |
- 'test-framework/jacoco/**/pom.xml' | |
- 'test-framework/jacoco/**/*Config*.java' | |
- '.github/workflows/doc-build.yml' | |
pull_request: | |
types: [opened, synchronize, reopened] | |
paths: | |
- 'core/processor/**' | |
- 'devtools/config-doc-maven-plugin/**' | |
- 'docs/**' | |
- 'extensions/**/pom.xml' | |
- 'extensions/**/*Config*.java' | |
- 'extensions/core/runtime/pom.xml' | |
- 'extensions/core/runtime/**/*Config*.java' | |
- 'extensions/core/deployment/pom.xml' | |
- 'extensions/core/deployment/**/*Config*.java' | |
- 'test-framework/jacoco/**/pom.xml' | |
- 'test-framework/jacoco/**/*Config*.java' | |
- '.github/workflows/doc-build.yml' | |
concurrency: | |
group: "workflow = ${{ github.workflow }}, ref = ${{ github.event.ref }}, pr = ${{ github.event.pull_request.id }}" | |
cancel-in-progress: ${{ github.event_name == 'pull_request' || github.repository != 'quarkusio/quarkus' }} | |
jobs: | |
ci-sanity-check: | |
name: "CI Sanity Check" | |
runs-on: ubuntu-latest | |
steps: | |
- name: Build | |
run: sleep 30 | |
build-doc: | |
name: "Documentation Build" | |
timeout-minutes: 60 | |
runs-on: ubuntu-latest | |
# Skip main in forks | |
if: "github.repository == 'quarkusio/quarkus' || !endsWith(github.ref, '/main')" | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up JDK 17 | |
uses: actions/setup-java@v4 | |
with: | |
distribution: temurin | |
java-version: 17 | |
- name: Generate cache key | |
id: cache-key | |
run: | | |
CURRENT_BRANCH="${{ github.repository != 'quarkusio/quarkus' && 'fork' || github.base_ref || github.ref_name }}" | |
CURRENT_MONTH=$(/bin/date -u "+%Y-%m") | |
CURRENT_DAY=$(/bin/date -u "+%d") | |
ROOT_CACHE_KEY="m2-cache" | |
echo "m2-monthly-cache-key=${ROOT_CACHE_KEY}-${CURRENT_MONTH}" >> $GITHUB_OUTPUT | |
echo "m2-monthly-branch-cache-key=${ROOT_CACHE_KEY}-${CURRENT_MONTH}-${CURRENT_BRANCH}" >> $GITHUB_OUTPUT | |
echo "m2-cache-key=${ROOT_CACHE_KEY}-${CURRENT_MONTH}-${CURRENT_BRANCH}-${CURRENT_DAY}" >> $GITHUB_OUTPUT | |
- name: Restore Maven Repository | |
uses: actions/cache/restore@v4 | |
with: | |
path: ~/.m2/repository | |
key: ${{ steps.cache-key.outputs.m2-cache-key }} | |
restore-keys: | | |
${{ steps.cache-key.outputs.m2-monthly-branch-cache-key }}- | |
${{ steps.cache-key.outputs.m2-monthly-cache-key }}- | |
- name: Build | |
run: | | |
./mvnw -DquicklyDocs -B --settings .github/mvn-settings.xml | |
- name: Build Docs | |
run: | | |
if ./mvnw -e -B --settings .github/mvn-settings.xml clean package -pl docs -Dasciidoctor.fail-if=DEBUG ; then | |
echo "Build ok" | |
else | |
if [ -f docs/target/metadataErrors.md ]; then | |
echo "### Document Metadata Errors" >> $GITHUB_STEP_SUMMARY | |
cat docs/target/metadataErrors.md >> $GITHUB_STEP_SUMMARY | |
fi | |
exit 1 | |
fi | |
- name: Store PR id | |
run: echo ${{ github.event.number }} > pr-id.txt | |
- name: Persist documentation | |
uses: actions/upload-artifact@v4 | |
with: | |
name: documentation | |
path: | | |
pr-id.txt | |
docs/ | |
target/asciidoc/generated/config/ | |
retention-days: 1 |