Skip to content

Deploy static content to Pages #1094

Deploy static content to Pages

Deploy static content to Pages #1094

Workflow file for this run

# Simple workflow for deploying static content to GitHub Pages
name: Deploy static content to Pages
on:
# Runs on pushes targeting the main branch
push:
branches: ["main"]
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
# 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:
assemble:
runs-on: ubuntu-latest
steps:
- name: Checkout branch
uses: actions/checkout@v4
- name: Install release
uses: ./.github/actions/install-docs
with:
ref: allwpilib-release
path: allwpilib/docs/release
- name: Install beta
uses: ./.github/actions/install-docs
with:
ref: allwpilib-beta
path: allwpilib/docs/beta
- name: Install development
uses: ./.github/actions/install-docs
with:
ref: allwpilib-development
path: allwpilib/docs/development
- name: Install 2027
uses: ./.github/actions/install-docs
with:
ref: allwpilib-2027
path: allwpilib/docs/2027
- run: wget -O favicon.ico https://raw.githubusercontent.com/wpilibsuite/branding/main/export/ico/wpilib-icon-256.ico
- name: Setup Pages
id: configure-pages
uses: actions/configure-pages@v5
continue-on-error: ${{ github.repository != 'wpilibsuite/wpilibsuite.github.io'}}
- name: Install sitemap generator
run: npm install -g static-sitemap-cli@^2.2.5
if: ${{ steps.configure-pages.outcome == 'success' }}
- name: Generate sitemap
run: static-sitemap-cli --base ${{ steps.configure-pages.outputs.base_url }} --root . --ignore "allwpilib/docs/beta/**" "allwpilib/docs/development/**" "allwpilib/docs/2027/**" --changefreq "**,monthly" "allwpilib/docs/**,weekly" --verbose --no-clean
if: ${{ steps.configure-pages.outcome == 'success' }}
- name: Upload artifact
uses: actions/upload-pages-artifact@v3
with:
# Upload entire repository
path: '.'
deploy:
needs: assemble
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
permissions:
contents: read
pages: write
id-token: write
runs-on: ubuntu-latest
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4