Skip to content

Commit

Permalink
Separate docs build workflow (unitaryfund#2441)
Browse files Browse the repository at this point in the history
* create a separate docs build workflow

* remove docs job from build.yml

* Update .github/workflows/docs-build.yml

Co-authored-by: nate stemen <[email protected]>

---------

Co-authored-by: nate stemen <[email protected]>
  • Loading branch information
purva-thakre and natestemen committed Jul 23, 2024
1 parent 231319d commit 02ebc4b
Show file tree
Hide file tree
Showing 2 changed files with 62 additions and 46 deletions.
46 changes: 0 additions & 46 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,52 +34,6 @@ jobs:
- name: Check code style/formatting
run: make check-format

docs:
runs-on: ubuntu-latest
steps:
- name: Check out mitiq
uses: actions/checkout@v4

- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.12"

- name: Install Python dependencies
run: |
python -m pip install --upgrade pip
make install requirements
- name: Run the quilc & qvm Docker images
run: |
docker run --rm -idt -p 5000:5000 rigetti/qvm -S
docker run --rm -idt -p 5555:5555 rigetti/quilc -R
- name: Generate hash from all files excluding example notebooks
id: gen_hash
run: |
HASH=$(find . -type f -not -path './docs/source/examples/*' | sort | xargs cat | sha256sum | awk '{print $1}')
echo "hash=$HASH" >> $GITHUB_OUTPUT
- name: Fetch Jupyter cache
uses: actions/cache@v4
with:
path: ./docs/build/.jupyter_cache
key: jupyter-cache-${{ steps.gen_hash.outputs.hash }}

- name: Build and test Sphinx docs
run: |
export BQSKIT_DOC_CHECK_OVERRIDE=1
export PYDEVD_DISABLE_FILE_VALIDATION=1
make docs
- name: Run linkcheck on 'release' PRs
if: github.event_name == 'pull_request'
run: |
pr_title_lower=$(echo "${{ github.event.pull_request.title }}" | tr '[:upper:]' '[:lower:]')
if [[ "$pr_title_lower" == *"release"* ]]; then
make linkcheck
fi

# This is to make sure Mitiq works without optional 3rd party packages like Qiskit, pyQuil, etc.
# E.g., if we accidentally `import qiskit` in Mitiq where we shouldn't, this test will catch that.
Expand Down
62 changes: 62 additions & 0 deletions .github/workflows/docs-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
name: docs-build

on:
pull_request:
types:
- opened
- reopened
- synchronize
- ready_for_review
branches:
- main
push:
branches:
- main

jobs:
docs:
runs-on: ubuntu-latest
steps:
- name: Check out mitiq
uses: actions/checkout@v4

- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.12"

- name: Install Python dependencies
run: |
python -m pip install --upgrade pip
make install
- name: Run the quilc & qvm Docker images
run: |
docker run --rm -idt -p 5000:5000 rigetti/qvm -S
docker run --rm -idt -p 5555:5555 rigetti/quilc -R
- name: Generate hash from all files excluding example notebooks
id: gen_hash
run: |
HASH=$(find . -type f -not -path './docs/source/examples/*' | sort | xargs cat | sha256sum | awk '{print $1}')
echo "hash=$HASH" >> $GITHUB_OUTPUT
- name: Fetch Jupyter cache
uses: actions/cache@v4
with:
path: ./docs/build/.jupyter_cache
key: jupyter-cache-${{ steps.gen_hash.outputs.hash }}

- name: Build and test Sphinx docs
run: |
export BQSKIT_DOC_CHECK_OVERRIDE=1
export PYDEVD_DISABLE_FILE_VALIDATION=1
make docs
- name: Run linkcheck on 'release' PRs
if: github.event_name == 'pull_request'
run: |
pr_title_lower=$(echo "${{ github.event.pull_request.title }}" | tr '[:upper:]' '[:lower:]')
if [[ "$pr_title_lower" == *"release"* ]]; then
make linkcheck
fi

0 comments on commit 02ebc4b

Please sign in to comment.