Skip to content

대시보드 GitHub Pages 배포 #399

대시보드 GitHub Pages 배포

대시보드 GitHub Pages 배포 #399

name: 대시보드 GitHub Pages 배포
on:
# blog-run.yml 완료 후 자동 배포
workflow_run:
workflows: ["블로그 자동화 실행"]
types: [completed]
branches: [claude/blog-automation-system-KAbtE]
# 수동 배포
workflow_dispatch:
# docs/ 변경 시 즉시 배포
push:
branches: [claude/blog-automation-system-KAbtE]
paths:
- 'docs/index.html'
- 'docs/data/**'
permissions:
contents: read
pages: write
id-token: write
concurrency:
group: pages
cancel-in-progress: true
jobs:
deploy:
# workflow_run 트리거는 blog-run 성공 시에만 배포 (push/dispatch는 항상 배포)
if: github.event_name != 'workflow_run' || github.event.workflow_run.conclusion == 'success'
runs-on: ubuntu-latest
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
steps:
- name: 코드 체크아웃
uses: actions/checkout@v4
with:
ref: claude/blog-automation-system-KAbtE
- name: GitHub Pages 설정
uses: actions/configure-pages@v5
- name: 대시보드 아티팩트 압축
run: |
tar --dereference --hard-dereference --directory docs \
-cvf /tmp/artifact.tar \
--exclude=.git \
--exclude=.github \
.
- name: 대시보드 아티팩트 업로드
uses: actions/upload-artifact@v4
with:
name: github-pages
path: /tmp/artifact.tar
overwrite: true
retention-days: 1
if-no-files-found: error
- name: GitHub Pages 배포
id: deployment
uses: actions/deploy-pages@v4