Skip to content

Deploy to gh-pages #583

Deploy to gh-pages

Deploy to gh-pages #583

Workflow file for this run

name: Deploy to gh-pages
on:
push:
branches: [main]
workflow_dispatch:
env:
MODULE_LIST_PATH: docs/assets/module-list.json
MODULES_LIST_URL: "https://raw.githubusercontent.com/nesi/modules-list/main/module-list.json"
MODULES_UPDATE_URL: "https://raw.githubusercontent.com/nesi/modules-list/main/rss.xml"
GLOSSARY_URL: "https://raw.githubusercontent.com/nesi/nesi-wordlist/main/outputs/glossary.md"
DICTIONARY_URL: "https://raw.githubusercontent.com/nesi/nesi-wordlist/main/outputs/dictionary.txt"
SNIPPETS_URL: "https://raw.githubusercontent.com/nesi/nesi-wordlist/main/outputs/snippets.md"
PYTHON_VERSION: 3.x
GH_TOKEN: ${{ github.token }}
permissions:
contents: write
pull-requests: write
id-token: write
pages: write
jobs:
documentation:
name: Build documentation
runs-on: ubuntu-22.04
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0
sparse-checkout: |
docs
overrides
.github
- name: Set up Python runtime
uses: actions/setup-python@v5
with:
python-version: ${{ env.PYTHON_VERSION }}
cache: pip
cache-dependency-path: requirements.txt
- name: Set up build cache
uses: actions/cache/restore@v4
with:
key: mkdocs-${{ hashfiles('.cache/**') }}
path: .cache
restore-keys: |
mkdocs-
- name: Install Python dependencies
run: pip install -r requirements.txt
- name: Fetch Remote Files
run: |
wget -O docs/assets/module-list.json ${MODULES_LIST_URL}
wget -O docs/software_updates.xml ${MODULES_UPDATE_URL}
python3 .github/workflows/link_apps_pages.py
wget -O overrides/partials/glossary.html ${GLOSSARY_URL}
wget -O docs/assets/glossary/dictionary.txt ${DICTIONARY_URL}
wget -O docs/assets/glossary/snippets.md ${SNIPPETS_URL}
- name: Build documentation
run: |
mkdocs build --clean --quiet
- name: Adjust permissions
run: |
chmod -c -R +rX public/ | while read line; do
echo "::info title=Invalid file permissions automatically fixed::$line"
done
- name: Upload to GitHub Pages
uses: actions/upload-pages-artifact@v3
with:
path: public
- name: Deploy to GitHub Pages
uses: actions/deploy-pages@v4
- name: Save build cache
uses: actions/cache/save@v4
with:
key: mkdocs-${{ hashfiles('.cache/**') }}
path: .cache