Separate CI workflows #2
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: docs release | |
on: | |
pull_request: | |
branches: | |
- main | |
paths: | |
- .pre-commit-config.yaml | |
- .github/workflows/docs_release.yml | |
- '**.py' | |
- '**.ipynb' | |
- '**.html' | |
- '**.jinja' | |
- '**.js' | |
- poetry.lock | |
- pyproject.toml | |
- '**.rst' | |
- '**.md' | |
- docs/cyclops-webpage | |
types: [labeled, closed] | |
jobs: | |
build: | |
if: contains(github.event.pull_request.labels.*.name, 'release') || (github.event.action == 'closed' && github.event.pull_request.merged == true) | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4.1.7 | |
with: | |
submodules: 'true' | |
- name: Install dependencies, run unit tests and coverage report | |
run: python3 -m pip install --upgrade pip && python3 -m pip install poetry | |
- name: Set up Python | |
uses: actions/setup-python@v5.1.0 | |
with: | |
python-version: '3.10' | |
cache: 'poetry' | |
- name: Install dependencies, build docs with notebooks | |
run: | | |
python3 -m pip install --upgrade pip && python3 -m pip install poetry | |
# Install Pandoc | |
PANDOC_VERSION="2.19" | |
curl -sLo- "https://github.com/jgm/pandoc/releases/download/${PANDOC_VERSION}/pandoc-${PANDOC_VERSION}-linux-amd64.tar.gz" | tar xzf - --strip-components 2 -C /usr/local/bin --exclude="share" | |
poetry env use '3.10' | |
source $(poetry env info --path)/bin/activate | |
poetry install --with docs,test --all-extras | |
cd docs | |
rm -rf source/reference/api/_autosummary | |
make html | |
- name: Set up Node.js | |
uses: actions/setup-node@v4.0.2 | |
with: | |
node-version: 18 | |
cache: yarn | |
cache-dependency-path: '**/yarn.lock' | |
- name: Build webpage | |
run: | | |
cd docs/cyclops-webpage | |
yarn install --frozen-lockfile | |
yarn build | |
cp -r ../build/html build/api | |
- name: Deploy to GitHub Pages | |
if: github.event.action == 'closed' && github.event.pull_request.merged == true | |
uses: peaceiris/actions-gh-pages@v4.0.0 | |
with: | |
github_token: ${{ secrets.GITHUB_TOKEN }} | |
publish_branch: github_pages | |
publish_dir: docs/cyclops-webpage/build |