## Summary This PR migrates our `mkdocs-material` version to [Insiders](https://squidfunk.github.io/mkdocs-material/insiders/), which we can access now that we're sponsors. We can't allow public access to the Insiders version, so we instead have a private fork, which contains a deploy key that I've added as a read-only Actions secret in this repo. (That is: the deploy key only lets you read that one repo, and do nothing else.) In general, non-Astral contributors can use the non-insiders version, and everything is expected to "work", but without the insiders features (they're intended to be ignored). See: https://squidfunk.github.io/mkdocs-material/insiders/#compatibility.
37 lines
1.2 KiB
YAML
37 lines
1.2 KiB
YAML
name: mkdocs
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
release:
|
|
types: [ published ]
|
|
|
|
jobs:
|
|
mkdocs:
|
|
runs-on: ubuntu-latest
|
|
env:
|
|
CF_API_TOKEN_EXISTS: ${{ secrets.CF_API_TOKEN != '' }}
|
|
steps:
|
|
- uses: actions/checkout@v3
|
|
- uses: actions/setup-python@v4
|
|
- name: "Add SSH key"
|
|
uses: webfactory/ssh-agent@v0.7.0
|
|
with:
|
|
ssh-private-key: ${{ secrets.MKDOCS_INSIDERS_SSH_KEY }}
|
|
- name: "Install Rust toolchain"
|
|
run: rustup show
|
|
- uses: Swatinem/rust-cache@v2
|
|
- name: "Install dependencies"
|
|
run: pip install -r docs/requirements-insiders.txt
|
|
- name: "Copy README File"
|
|
run: |
|
|
python scripts/transform_readme.py --target mkdocs
|
|
python scripts/generate_mkdocs.py
|
|
mkdocs build --strict
|
|
- name: "Deploy to Cloudflare Pages"
|
|
if: ${{ env.CF_API_TOKEN_EXISTS == 'true' }}
|
|
uses: cloudflare/wrangler-action@2.0.0
|
|
with:
|
|
apiToken: ${{ secrets.CF_API_TOKEN }}
|
|
accountId: ${{ secrets.CF_ACCOUNT_ID }}
|
|
command: pages publish site --project-name=ruff-docs --branch ${GITHUB_HEAD_REF} --commit-hash ${GITHUB_SHA}
|