Skip to content

GitHub Pages

GitHub Pages #48

Workflow file for this run

# This workflow builds and deploys Marker's documentation to GitHub Pages
#
# This workflow is an adaptation of the `mdBook` workflow by *GitHub Actions*
# - https://github.com/actions/starter-workflows/blob/f3c5d7931d054ffbbdcbfdc463cc3bd0def74929/pages/mdbook.yml
#
name: GitHub Pages
on:
push:
# Match only on specific tags. We don't want this workflow to be invoked when
# we put sliding `v{major}` and `v{major}.{minor}` tags on the same commit.
#
# The pattern here doesn't allow for any suffix after the version number because
# we don't want prereleases (versions with a suffix) to trigger a book deployment.
# We want the book to always reflect the latest stable version only.
tags: ['v[0-9]+.[0-9]+.[0-9]+']
workflow_dispatch:
env:
CARGO_TERM_COLOR: always
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
permissions:
contents: read
pages: write
id-token: write
concurrency:
group: "github-pages"
cancel-in-progress: false
jobs:
# Build job
build:
runs-on: ubuntu-latest
if: github.repository == 'rust-marker/marker'
steps:
- uses: actions/checkout@v4
- run: ./scripts/download/mdbook.sh
- name: Setup deploy directory
run: |
mkdir deploy
cp ./docs/index.html ./deploy/index.html
- name: Build the book
run: mdbook build docs/book --dest-dir ../../deploy/book
- name: Upload artifact
uses: actions/upload-pages-artifact@v2
with:
path: ./deploy
# Deployment job
deploy:
runs-on: ubuntu-latest
if: github.repository == 'rust-marker/marker'
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
needs: build
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v2