Skip to content

更新投资思考

更新投资思考 #13

Workflow file for this run

# 部署 Hugo 站点到 GitHub Pages 的工作流
name: Deploy Hugo site to Pages
# 触发条件:当 main 分支有 push 操作,或手动触发时启动该工作流
on:
push:
branches: ["main"] # 监听 main 分支的 push 事件
workflow_dispatch: # 允许从 Actions 标签页手动触发工作流
# 权限设置:设置 GITHUB_TOKEN 的权限,以便进行 GitHub Pages 部署
permissions:
contents: read # 允许读取仓库内容
pages: write # 允许写入 GitHub Pages 内容
id-token: write # 用于身份验证的 ID 令牌
# 并发控制:确保同一时间只有一个部署进程,以防止多次重复部署
concurrency:
group: "pages" # 指定并发组名称为 pages
cancel-in-progress: false # 设置为 false,以免中断正在进行的部署
# 默认 shell 配置:将默认 shell 设置为 bash
defaults:
run:
shell: bash
# 定义单个部署作业(Job)
jobs:
deploy:
# 指定运行环境为最新的 Ubuntu 系统
runs-on: ubuntu-latest
# 执行步骤
steps:
# 第一步:检出代码仓库内容
- name: Checkout repository
uses: actions/checkout@v4 # 使用 checkout action 的 v4 版本,支持 Node.js 20
with:
submodules: true # 下载包含在仓库中的所有 Git 子模块(如 Hugo 主题)
# 第二步:设置 GitHub Pages 环境
- name: Setup Pages
id: pages
uses: actions/configure-pages@v5 # 使用 GitHub 提供的配置 pages action
# 第三步:安装 Hugo CLI
- name: Install Hugo CLI
uses: peaceiris/actions-hugo@v3 # 使用最新的 peaceiris Hugo action 支持 Node.js 20
with:
hugo-version: 'latest' # 安装最新版本的 Hugo
extended: true # 安装扩展版,支持 SASS/SCSS 编译
# 第四步:使用 Hugo 构建网站
- name: Build with Hugo
env:
HUGO_CACHEDIR: ${{ runner.temp }}/hugo_cache # 使用默认的临时缓存目录
HUGO_ENVIRONMENT: production # 设置构建环境为生产环境
run: |
hugo --minify --baseURL "${{ steps.pages.outputs.base_url }}/" # 使用 GitHub Pages 提供的基础 URL,压缩并构建网站
# 第五步:将构建输出上传为 GitHub Pages 的静态文件
- name: Upload artifact to Pages
uses: actions/upload-pages-artifact@v3 # 使用上传文件的 action,适配 Node.js 20
with:
path: ./public # 指定要上传的文件夹路径(Hugo 默认输出到 ./public)
# 第六步:将上传的静态文件部署到 GitHub Pages
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v4 # 使用 GitHub 官方的 deploy pages action