Skip to content

ENH: add linkchecker (#115) #5

ENH: add linkchecker (#115)

ENH: add linkchecker (#115) #5

Workflow file for this run

name: Build & Publish to GH-PAGES
on:
push:
tags:
- 'publish*'
jobs:
publish:
if: github.event_name == 'push' && startsWith(github.event.ref, 'refs/tags')
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Setup Anaconda
uses: conda-incubator/setup-miniconda@v3
with:
auto-update-conda: true
auto-activate-base: true
miniconda-version: 'latest'
python-version: 3.12
environment-file: environment.yml
activate-environment: quantecon
- name: Install latex dependencies
run: |
sudo apt-get -qq update
sudo apt-get install -y \
texlive-latex-recommended \
texlive-latex-extra \
texlive-fonts-recommended \
texlive-fonts-extra \
texlive-xetex \
latexmk \
xindy
- name: Display Conda Environment Versions
shell: bash -l {0}
run: conda list
- name: Display Pip Versions
shell: bash -l {0}
run: pip list
# - name: Download "build" folder (cache)
# uses: dawidd6/action-download-artifact@v2
# with:
# workflow: cache.yml
# branch: main
# name: build-cache
# path: _build
# Build Assets (Download Notebooks and PDF via LaTeX)
- name: Build PDF from LaTeX
shell: bash -l {0}
run: |
jb build lectures --builder pdflatex --path-output ./ -n --keep-going
- name: Copy LaTeX PDF for GH-PAGES
shell: bash -l {0}
run: |
mkdir -p _build/html/_pdf
cp -u _build/latex/*.pdf _build/html/_pdf
- name: Build Download Notebooks (sphinx-tojupyter)
shell: bash -l {0}
run: |
jb build lectures --path-output ./ --builder=custom --custom-builder=jupyter
zip -r download-notebooks.zip _build/jupyter
- uses: actions/upload-artifact@v4
with:
name: download-notebooks
path: download-notebooks.zip
- name: Copy Download Notebooks for GH-PAGES
shell: bash -l {0}
run: |
mkdir -p _build/html/_notebooks
cp -u _build/jupyter/*.ipynb _build/html/_notebooks
# Build HTML (Website)
- name: Build HTML
shell: bash -l {0}
run: |
jb build lectures --path-output ./
- name: Deploy website to gh-pages
uses: peaceiris/actions-gh-pages@v4
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
publish_dir: _build/html/
cname: continuous-time-mcs.quantecon.org
- name: Prepare continuous-time-mcs.notebooks sync
shell: bash -l {0}
run: |
mkdir -p _build/continuous-time-mcs.notebooks
cp -a _notebook_repo/. _build/continuous-time-mcs.notebooks
cp _build/jupyter/*.ipynb _build/continuous-time-mcs.notebooks
ls -a _build/continuous-time-mcs.notebooks
- name: Commit latest notebooks to continuous-time-mcs.notebooks
uses: cpina/[email protected]
env:
API_TOKEN_GITHUB: ${{ secrets.QUANTECON_SERVICES_PAT }}
with:
source-directory: '_build/continuous-time-mcs.notebooks/'
destination-repository-username: 'QuantEcon'
destination-repository-name: 'continuous_time_mcs.notebooks'
commit-message: 'auto publishing updates to notebooks'
destination-github-username: 'quantecon-services'
user-email: [email protected]