mirror of
https://github.com/andrewgioia/keyrune.git
synced 2025-12-15 16:20:44 +00:00
79 lines
2.3 KiB
YAML
79 lines
2.3 KiB
YAML
name: Docs Preview (PR)
|
|
|
|
on:
|
|
pull_request:
|
|
types: [opened, synchronize, reopened]
|
|
branches:
|
|
- master
|
|
|
|
permissions:
|
|
contents: write # push to gh-pages
|
|
pull-requests: write # create/update PR comment
|
|
|
|
concurrency:
|
|
group: docs-preview-${{ github.event.pull_request.number }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
build-and-deploy-preview:
|
|
name: Build & deploy PR preview
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- name: Checkout PR branch
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Setup Node
|
|
uses: actions/setup-node@v4
|
|
with:
|
|
node-version: '20'
|
|
cache: 'npm'
|
|
|
|
- name: Install dependencies
|
|
run: npm ci
|
|
|
|
- name: Build docs
|
|
run: npm run publish
|
|
|
|
- name: Deploy preview to gh-pages/pr-<number>/
|
|
uses: peaceiris/actions-gh-pages@v4
|
|
with:
|
|
github_token: ${{ secrets.GITHUB_TOKEN }}
|
|
publish_branch: gh-pages
|
|
publish_dir: ./docs
|
|
destination_dir: pr-${{ github.event.pull_request.number }}
|
|
keep_files: true
|
|
|
|
comment:
|
|
name: Comment preview URL on PR
|
|
needs: build-and-deploy-preview
|
|
runs-on: ubuntu-latest
|
|
# only for same-repo PRs (no forks)
|
|
if: github.event.pull_request.head.repo.full_name == github.repository
|
|
|
|
steps:
|
|
- name: Find existing docs preview comment
|
|
id: find-comment
|
|
uses: peter-evans/find-comment@v4
|
|
with:
|
|
issue-number: ${{ github.event.pull_request.number }}
|
|
comment-author: 'github-actions[bot]'
|
|
body-includes: 'Keyrune docs preview'
|
|
|
|
- name: Create or update docs preview comment
|
|
uses: peter-evans/create-or-update-comment@v5
|
|
with:
|
|
comment-id: ${{ steps.find-comment.outputs.comment-id }}
|
|
issue-number: ${{ github.event.pull_request.number }}
|
|
body: |
|
|
🔍 **Keyrune docs preview**
|
|
|
|
Preview URL: https://keyrune.andrewgioia.com/pr-${{ github.event.pull_request.number }}/
|
|
|
|
- Source branch: `${{ github.head_ref }}`
|
|
- Target branch: `${{ github.base_ref }}`
|
|
- Commit: `${{ github.sha }}`
|
|
- Workflow run: https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}
|
|
|
|
_This comment will update automatically when new commits are pushed to this PR._
|
|
edit-mode: replace |