Skip to content

rtd

rtd #1502

Workflow file for this run

name: rtd
on:
schedule:
- cron: '0 2 * * *' # run at 2 AM UTC
push:
branches:
- master
- develop
- ci-*
paths-ignore:
- 'README.md'
- 'DEVELOPER.md'
pull_request:
branches:
- master
- develop
jobs:
rtd_build:
name: rtd-build
runs-on: ubuntu-latest
strategy:
fail-fast: false
env:
script-directory: scripts
etc-directory: etc
defaults:
run:
shell: bash
steps:
- name: Checkout MODFLOW6 examples repo
uses: actions/checkout@v4
- name: Output repo information
run: |
echo ${{ github.repository_owner }}
echo ${{ github.repository }}
echo ${{ github.ref }}
echo ${{ github.event_name }}
echo ${{ github.sha }}
- name: Install TeX Live and additional TrueType fonts
run: |
sudo apt-get update
sudo apt install texlive-latex-extra texlive-science fonts-liberation
- name: Install pandoc
run: |
wget https://github.com/jgm/pandoc/releases/download/2.11.2/pandoc-2.11.2-linux-amd64.tar.gz
sudo tar xvzf pandoc-2.11.2-linux-amd64.tar.gz --strip-components=1 -C /usr/local
pandoc --version
- name: Setup Python
uses: actions/setup-python@v4
with:
python-version: 3.9
- name: Install Python packages
run: |
python -m pip install --upgrade pip setuptools wheel
pip install -r requirements.pip.txt
pip install -r requirements.usgs.txt
python -m ipykernel install --name python_kernel --user
working-directory: ${{env.etc-directory}}
- name: Update flopy MODFLOW 6 classes
run: |
import flopy
flopy.mf6.utils.generate_classes(branch="develop", backup=False)
shell: python
- name: Install MODFLOW executables release
uses: modflowpy/install-modflow-action@v1
- name: Install MODFLOW nightly-build executables
uses: modflowpy/install-modflow-action@v1
with:
repo: modflow6-nightly-build
- name: Run scripts without model runs
run: pytest -v -n=auto --durations=0 ci_build_files.py
working-directory: ${{env.etc-directory}}
- name: Run processing script
run: python process-scripts.py
working-directory: ${{env.script-directory}}
- name: Run notebooks with jupytext for ReadtheDocs
run: pytest -v -n=auto --durations=0 ci_run_notebooks.py
working-directory: ${{env.etc-directory}}
- name: Create package tables and examples.rst for ReadtheDocs
run: python ci_create_examples_rst.py
working-directory: ${{env.etc-directory}}
- name: List example rst files for ReadtheDocs
run: ls -R .doc/_examples/
- name: List example image files for ReadtheDocs
run: ls -R .doc/_images/
- name: List example notebook files for ReadtheDocs
run: ls -R .doc/_notebooks/
- name: Upload completed jupyter notebooks as an artifact for ReadtheDocs
uses: actions/upload-artifact@v3
with:
name: rtd-files-for-${{ github.sha }}
path: |
.doc/introduction.md
.doc/examples.rst
.doc/_examples
.doc/_images
.doc/_notebooks
# trigger rtd if "rtd_build" job was successful
rtd_trigger:
name: rtd-trigger
needs: rtd_build
runs-on: ubuntu-latest
if: github.repository_owner == 'MODFLOW-USGS' && github.event_name == 'push' && github.ref_name == 'master'
steps:
- name: Checkout MODFLOW6 examples repo
uses: actions/checkout@v4
- name: Trigger RTDs build on push to repo branches
uses: dfm/rtds-action@v1
with:
webhook_url: ${{ secrets.RTDS_WEBHOOK_URL }}
webhook_token: ${{ secrets.RTDS_WEBHOOK_TOKEN }}
commit_ref: ${{ github.ref }}