Files
awesome-copilot/.github/workflows/deploy-website-preview.yml
Rez b95e24caae Add preview deployments for PR's (#2755)
* add preview deployments

* remove workflow from paths

* reduce perm for build
2026-08-24 10:00:53 +10:00

87 lines
2.3 KiB
YAML

# GitHub Pages preview deployment workflow
# Builds the Astro website and deploys a preview for pull requests
name: Deploy preview website to GitHub Pages
on:
pull_request:
branches: [main]
paths:
- "website/**"
- "agents/**"
- "skills/**"
- "plugins/**"
- "instructions/**"
- "hooks/**"
- "workflows/**"
- ".github/workflows/**"
- "extensions/**"
- "cookbook/**"
- "eng/**"
- ".all-contributorsrc"
- "package.json"
- "package-lock.json"
concurrency:
group: pages-preview-${{ github.ref }}
cancel-in-progress: true
jobs:
# Build job
build:
runs-on: ubuntu-latest
permissions:
checks: read
contents: read
pages: read
pull-requests: read
steps:
- name: Checkout
uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5 # v4.3.1
with:
fetch-depth: 0 # Full history needed for git-based last updated dates
- name: Setup Node.js
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
with:
node-version: "22"
cache: "npm"
- name: Install root dependencies
run: npm ci
- name: Install website dependencies
run: npm ci
working-directory: ./website
- name: Build Astro site
run: npm run website:build
- name: Setup Pages
if: github.event.pull_request.head.repo.full_name == github.repository # Not a fork
uses: actions/configure-pages@983d7736d9b0ae728b81ab479565c72886d7745b # v5.0.0
- name: Upload artifact
if: github.event.pull_request.head.repo.full_name == github.repository # Not a fork
uses: actions/upload-pages-artifact@56afc609e74202658d3ffba0e8f6dda462b719fa # v3.0.1
with:
path: "./website/dist"
# Deployment job
deploy:
if: github.event.pull_request.head.repo.full_name == github.repository # Not a fork
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
runs-on: ubuntu-latest
needs: build
permissions:
pages: write
id-token: write
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@d6db90164ac5ed86f2b6aed7e0febac5b3c0c03e # v4.0.5
with:
preview: true