Skip to content

Deploy Documentation #76

Deploy Documentation

Deploy Documentation #76

name: Deploy Documentation
on:
workflow_dispatch:
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
permissions:
contents: read
pages: write
id-token: write
# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued.
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete.
concurrency:
group: "pages"
cancel-in-progress: false
jobs:
# Build job
build:
runs-on: macos-latest
steps:
- name: Checkout
uses: actions/checkout@v5
with:
ref: ${{ github.event.workflow_run.head_branch }}
- uses: actions/setup-python@v6
with:
python-version: 3.x
- uses: actions/setup-java@v5
with:
distribution: 'temurin' # See 'Supported distributions' for available options
java-version: '17'
- run: pip install -r docs/requirements.txt
- run: bundle install
- run: bundle exec fastlane generate_docs
- name: Upload artifact
uses: actions/upload-pages-artifact@v4
with:
path: './generated_docs'
# Deployment job
deploy:
environment: production-docs
runs-on: macos-latest
needs: build
steps:
- uses: actions/download-artifact@v5
with:
path: './generated_docs'
- name: Deploy
uses: cloudflare/wrangler-action@v3
with:
apiToken: ${{ secrets.CLOUDFLARE_API_TOKEN }}
accountId: ${{ secrets.CLOUDFLARE_ACCOUNT_ID }}
command: pages deploy generated_docs --project-name=mockzilla-docs
gitHubToken: ${{ secrets.GITHUB_TOKEN }}