Merge pull request #5 from sdsc-ordes/refactor/ontology-manager-compose #130
This file contains hidden or 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: Generate Public Ontology Docs | |
| on: | |
| push: | |
| paths: | |
| - 'src/ontology/AREMA-ontology.ttl' | |
| - '.github/workflows/docs.yml' | |
| jobs: | |
| build-docs: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Prepare .env | |
| run: | | |
| # BASEURL for the final domain (correct) | |
| echo "BASEURL=/" > .env | |
| echo "PATH_PREFIX=/" >> .env | |
| echo "GATSBY_BASE_PATH=/" >> .env | |
| - name: Log in to GitHub Container Registry | |
| run: echo "${{ secrets.GITHUB_TOKEN }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin | |
| - name: Clean old docs (preserve CNAME) | |
| run: | | |
| # Backup CNAME | |
| [ -f docs/CNAME ] && cp docs/CNAME /tmp/CNAME || true | |
| # Clean everything | |
| rm -rf docs/* | |
| mkdir -p docs | |
| # Restore CNAME | |
| [ -f /tmp/CNAME ] && mv /tmp/CNAME docs/CNAME || true | |
| - name: Build docs in container | |
| run: | | |
| mkdir -p public docs | |
| CONTAINER_ID=$(docker create \ | |
| -v $(pwd)/src/ontology:/app/data \ | |
| -v $(pwd)/.env:/app/.env \ | |
| ghcr.io/sdsc-ordes/skohub-vocabs:v0.3.2 \ | |
| sh -c "npm run build" | |
| ) | |
| # Copy custom files + config into the container | |
| docker cp ./tools/skohub-vocabs/config.yaml $CONTAINER_ID:/app/config.yaml | |
| docker cp ./tools/skohub-vocabs/src/. $CONTAINER_ID:/app/src/ | |
| docker cp ./tools/skohub-vocabs/static/. $CONTAINER_ID:/app/static/ | |
| # Run build (no prefix paths!) | |
| docker start -ai $CONTAINER_ID | |
| # Copy generated site into ./docs | |
| docker cp $CONTAINER_ID:/app/public/. ./docs | |
| docker rm $CONTAINER_ID | |
| - name: Commit updated docs | |
| run: | | |
| git config user.name "github-actions[bot]" | |
| git config user.email "github-actions[bot]@users.noreply.github.com" | |
| git add docs | |
| git diff --cached --quiet || git commit -m "Update docs via skohub-vocabs" | |
| git push | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |