Update ttl-files of vocab_example to vocpub 4.5 #33
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
# This action runs on merges of turtle files to main. | |
# | |
# Workflow steps: | |
# - checkout gh-pages for updating | |
# - create joined vocabulary file in addition to split version | |
# - create excel-file from turtle | |
# - build docs | |
# - publish docs, vocabulary-turtle files and excel-file to gh-pages | |
name: Build | |
on: | |
push: | |
branches: | |
- main | |
paths: | |
- 'vocabularies/**.ttl' | |
workflow_dispatch: | |
env: | |
FORCE_COLOR: "1" # Make tool output pretty. | |
PIP_DISABLE_PIP_VERSION_CHECK: "1" | |
PIP_PROGRESS_BAR: "off" | |
LOGLEVEL: "DEBUG" | |
jobs: | |
build: | |
name: Development build of vocabulary & documentation | |
permissions: | |
# Required for peaceiris/actions-gh-pages below | |
contents: write | |
runs-on: ubuntu-latest | |
timeout-minutes: 10 | |
steps: | |
- uses: actions/checkout@v4 | |
with: | |
# Using fetch-depth 0 is the only way to get all tags which are needed for building docs. | |
fetch-depth: 0 | |
- name: Checkout gh-pages branch to dir publish/ | |
uses: actions/checkout@v4 | |
with: | |
ref: gh-pages | |
path: publish | |
fetch-depth: 1 | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: '3.11' | |
- name: Install dependencies | |
run: | | |
python -VV | |
python -m pip install --upgrade pip setuptools wheel | |
# install tagged version | |
python -m pip install git+https://github.com/nfdi4cat/voc4cat-tool.git@v0.8.5 | |
# python -m pip install git+https://github.com/nfdi4cat/voc4cat-tool.git@main | |
# install custom pylode 2.x | |
python -m pip install git+https://github.com/dalito/pyLODE.git@nfdi4cat-2.x | |
- name: Set dynamic environment variables. | |
run: | | |
echo "VOC4CAT_MODIFIED=$(date +'%Y-%m-%d')" >> $GITHUB_ENV | |
# set first 8 chars of commit hash as version for "dev" | |
echo "VOC4CAT_VERSION=v_${GITHUB_SHA:0:8}" >> $GITHUB_ENV | |
- name: Run voc4cat (publish joined & split SKOS/turtle) | |
run: | | |
voc4cat --version | |
mkdir -p publish/dev/ | |
# delete files xlsx and ttl produced in previous workflow runs | |
find publish/dev/ -type f \( -name "*.xlsx" -o -name "*.ttl" \) -delete | |
cp -r vocabularies/. publish/dev/ | |
# Build joined turtle | |
voc4cat transform --logfile publish/dev/voc4cat.log --join publish/dev/ | |
- name: Run voc4cat (build HTML documentation) | |
run: | | |
voc4cat docs --force --logfile publish/dev/voc4cat.log publish/dev/ | |
# move versions-overview to what becomes gh-pages root | |
mv publish/dev/index.html publish/ | |
- name: Run voc4cat (build current Excel file) | |
run: | | |
voc4cat convert --logfile publish/dev/voc4cat.log --template templates/voc4cat_template_043.xlsx publish/dev/ | |
- name: Deploy updated gh-pages content | |
# This replaces all prior content in gh-pages branch. But we have | |
# checked out the gh-pages branch above so that we keep all prior | |
# content and just re-publish the extended version. | |
# Pinning of action managed by dependabot | |
uses: peaceiris/actions-gh-pages@373f7f263a76c20808c831209c920827a82a2847 | |
if: (github.event_name == 'push' || github.event_name == 'workflow_dispatch') && github.ref == 'refs/heads/main' | |
with: | |
publish_branch: gh-pages | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
publish_dir: ./publish | |
force_orphan: true | |
- name: Store publish dir (=pages) as artifact | |
# This step is not required and may be removed. | |
# It may be helpful for trouble shooting. | |
if: ${{ always() }} | |
uses: actions/upload-artifact@v3 | |
with: | |
name: voc4cat-pages-dev-content | |
path: publish/ | |
# Lit: | |
# https://github.com/peaceiris/actions-gh-pages |