Update Documentation Deployment #6
Workflow file for this run
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: Deployment | |
on: | |
pull_request: | |
branches: | |
- develop | |
jobs: | |
find_version: | |
name: Find Release Version | |
runs-on: ubuntu-latest | |
outputs: | |
RELEASE_VERSION: ${{ steps.step_find.outputs.RELEASE_VERSION }} | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-java@v3 | |
with: | |
java-version: '17' | |
distribution: 'adopt' | |
cache: 'maven' | |
- name: 'Find velease version' | |
run: echo "RELEASE_VERSION=$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout)" >> $GITHUB_OUTPUT | |
id: step_find | |
deploy_to_maven: | |
name: Deploy to Maven Repository | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up JDK 17 | |
uses: actions/setup-java@v3 | |
with: | |
java-version: '17' | |
distribution: 'adopt' | |
cache: 'maven' | |
- name: Compile jar | |
run: mvn package -Dmaven.test.skip=true | |
- name: 'Upload artifact' | |
uses: actions/upload-artifact@v4 | |
with: | |
if-no-files-found: error | |
name: 'iguana-jar' | |
path: 'target/' | |
compile_native: | |
name: Compile Native Executable | |
runs-on: ubuntu-latest | |
needs: find_version | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up GraalVM | |
uses: graalvm/setup-graalvm@v1 | |
with: | |
java-version: '22' | |
cache: 'maven' | |
- name: 'Compile native-binary' | |
run: 'mvn -Dagent=true -Pnative package' | |
- name: 'Upload artifact' | |
uses: actions/upload-artifact@v4 | |
with: | |
name: 'iguana-native' | |
path: 'target/iguana' | |
if-no-files-found: error | |
deploy_docs: | |
name: Deploy Documentation | |
runs-on: ubuntu-latest | |
needs: find_version | |
env: | |
RELEASE_VERSION: ${{ needs.find_version.outputs.RELEASE_VERSION }} | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Set up JDK 17 | |
uses: actions/setup-java@v3 | |
with: | |
java-version: '17' | |
distribution: 'adopt' | |
cache: 'maven' | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: 3.x | |
- run: pip install mkdocs-material | |
- run: pip install mkdocs-macros-plugin | |
- run: sed -i "s/\$RELEASE_VERSION/${{ env.RELEASE_VERSION }}/g" mkdocs.yml | |
- run: mkdocs build -d site/${{ env.RELEASE_VERSION }} | |
- run: mvn javadoc:javadoc | |
- name: Find Ontology Version | |
run: echo "ONTOLOGY_VERSION=$(grep 'versionIRI' iguana.owl | grep -Po '[0-9]+.[0-9]+.[0-9]+')" >> $GITHUB_OUTPUT | |
id: find_ontology_version | |
- name: Fetch Ontologies | |
uses: actions/checkout@v4 | |
with: | |
ref: gh-pages | |
sparse-checkout: ontology | |
- run: mkdir -p ontology/${{ steps.find_ontology_version.outputs.ONTOLOGY_VERSION }} | |
- run: cp schema/iguana.owl ontology/${{ steps.find_ontology_version.outputs.ONTOLOGY_VERSION }}/iguana.owx | |
- run: cp schema/iguana.owl ontology/iguana.owx | |
- name: 'Upload artifact' | |
uses: actions/upload-artifact@v4 | |
with: | |
name: 'ontology' | |
path: 'ontology/' | |
if-no-files-found: error | |
- name: 'Upload artifact' | |
uses: actions/upload-artifact@v4 | |
with: | |
name: 'mkdocs-site' | |
path: './site/${{ env.RELEASE_VERSION }}' | |
if-no-files-found: error | |
- name: 'Upload artifact' | |
uses: actions/upload-artifact@v4 | |
with: | |
name: 'javadocs' | |
path: './javadoc/${{ env.RELEASE_VERSION }}/apidocs' | |
if-no-files-found: error |