static.yml 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. # 部署静态内容到 GitHub Pages
  2. name: 部署 Fuzz 覆盖率报告到 Pages
  3. on:
  4. # 当 main 或 next 分支有新提交时自动部署
  5. push:
  6. branches: ["main", "next"]
  7. # 允许在 Actions 页面手动触发
  8. workflow_dispatch:
  9. # 授予 GITHUB_TOKEN 部署 Pages 所需权限
  10. permissions:
  11. contents: read
  12. pages: write
  13. id-token: write
  14. # 同一时间只保留一个 Pages 部署任务,不中断正在进行的部署
  15. concurrency:
  16. group: "pages"
  17. cancel-in-progress: false
  18. jobs:
  19. # 单一部署任务
  20. deploy:
  21. environment:
  22. name: github-pages
  23. url: ${{ steps.deployment.outputs.page_url }}
  24. runs-on: ubuntu-latest
  25. steps:
  26. - name: 检出触发分支代码
  27. uses: actions/checkout@v4
  28. with:
  29. ref: ${{ github.ref_name }}
  30. - name: 配置 GitHub Pages
  31. uses: actions/configure-pages@v5
  32. - name: 上传 Fuzz 覆盖率页面产物
  33. uses: actions/upload-pages-artifact@v3
  34. with:
  35. # 仅上传静态 HTML 目录,避免把整个仓库上传到 Pages
  36. path: './test/fuzzer/coverage/html'
  37. - name: 部署到 GitHub Pages
  38. id: deployment
  39. uses: actions/deploy-pages@v4