Skip to content

feat(security): enforce GitHub-hosted Ubuntu runner policy in CI (#2700) #4

feat(security): enforce GitHub-hosted Ubuntu runner policy in CI (#2700)

feat(security): enforce GitHub-hosted Ubuntu runner policy in CI (#2700) #4

Workflow file for this run

# Copyright (c) 2026 Microsoft Corporation. All rights reserved.
# SPDX-License-Identifier: MIT
# Docusaurus documentation site deployment
# Prerequisite: Enable GitHub Pages in repo Settings → Pages → Source: GitHub Actions
# and allow the target branch in Settings → Environments → github-pages → Deployment branches
name: Deploy Documentation Site
on:
push:
branches:
- main
paths:
- 'docs/**'
- '.github/workflows/deploy-docs.yml'
workflow_dispatch:
concurrency:
group: pages-deploy-${{ github.ref }}
cancel-in-progress: false
permissions:
contents: read
jobs:
test:
name: Docusaurus Tests
uses: ./.github/workflows/docusaurus-tests.yml
permissions:
contents: read
id-token: write # Required for Codecov OIDC in the reusable workflow
with:
soft-fail: false
build:
name: Build Docusaurus
needs: test
runs-on: ubuntu-latest
permissions:
contents: read
pages: write
steps:
- name: Checkout
uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
with:
persist-credentials: false
fetch-depth: 0
- name: Setup Node.js
uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0
with:
node-version: 24
cache: npm
cache-dependency-path: docs/docusaurus/package-lock.json
- name: Install dependencies
working-directory: docs/docusaurus
run: npm ci
- name: Build site
working-directory: docs/docusaurus
run: npm run build
- name: Configure Pages
uses: actions/configure-pages@45bfe0192ca1faeb007ade9deae92b16b8254a0d # v6.0.0
- name: Upload artifact
uses: actions/upload-pages-artifact@fc324d3547104276b827a68afc52ff2a11cc49c9 # v5.0.0
with:
path: docs/docusaurus/build
deploy:
name: Deploy to GitHub Pages
needs: build
runs-on: ubuntu-latest
permissions:
pages: write
id-token: write
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@cd2ce8fcbc39b97be8ca5fce6e763baed58fa128 # v5.0.0