Convert md tutorials to rst and copy them to the website #93
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: website | |
on: | |
push: | |
branches: [main] | |
pull_request: | |
branches: [main] | |
release: | |
types: [published] | |
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages | |
permissions: | |
contents: read | |
pages: write | |
id-token: write | |
jobs: | |
render-docs: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: quarto-dev/quarto-actions/setup@v2 | |
- uses: actions/setup-python@v5 | |
with: | |
python-version: "3.12" | |
- name: cache poetry | |
uses: actions/cache@v4 | |
with: | |
path: ~/.local | |
key: ${{ runner.os }}-poetry | |
- name: install poetry | |
run: pip install poetry | |
- name: install package | |
run: poetry install --with dev -C model | |
- name: Render documents | |
run: | | |
cd model | |
mkdir _compiled | |
for file in $(find docs -name '*.qmd'); do | |
poetry run quarto render $file --to rst --output-dir ../_compiled | |
done | |
# Upload | |
- name: Upload artifacts | |
uses: actions/upload-artifact@v3 | |
with: | |
name: tutorials | |
path: model/_compiled/ | |
build: | |
needs: render-docs | |
runs-on: ubuntu-latest | |
permissions: | |
contents: write | |
steps: | |
- uses: actions/checkout@v4 | |
# Setting up the environment | |
- name: Setup Pages | |
uses: actions/configure-pages@v4 | |
# Load the artifact github-pages-tutorials | |
- name: Download artifacts | |
uses: actions/download-artifact@v3 | |
with: | |
name: tutorials | |
path: docs/source/tutorials/ | |
- name: Set up Python | |
uses: actions/setup-python@v5 | |
with: | |
python-version: '3.11' | |
- name: Install Poetry | |
run: pip install poetry | |
- name: Install dependencies with Poetry | |
run: poetry install -C docs | |
# Building | |
- name: Build HTML using Poetry | |
run: poetry run -C docs sphinx-build -M html docs/source/ docs/build/ | |
# Upload | |
- name: Upload artifacts | |
uses: actions/upload-pages-artifact@v3 | |
with: | |
name: github-pages | |
path: docs/build/html/ | |
deploy: | |
# Deploy to the github-pages environment | |
# but not on PRs | |
if: ${{ github.event_name != 'pull_request' }} | |
environment: | |
name: github-pages | |
url: ${{ steps.deployment.outputs.page_url }} | |
needs: build | |
# Specify runner + deployment step | |
runs-on: ubuntu-latest | |
steps: | |
- name: Deploy to GitHub Pages | |
id: deployment | |
uses: actions/deploy-pages@v4 | |
with: | |
artifact_name: github-pages | |
preview: true # Not yet available to the public. |