Press "Enter" to skip to content

GitHub Actions实现Hugo自动化部署静态博客

端网目前使用的博客方案是GitHub Actions实现Hugo博客自动化部署,更新内容后,通过触发Actions自动化运行Hugo程序生成静态文件并推送到gh-pages分支,域名绑定Gitbhub Pages。

1.生成密钥

https://github.com/settings/tokens 生成密钥,勾选 repoworkflow

2.新建Actions

进入你创建的代码仓库 settings/secrets 新建标题为 personal_token ,内容是刚创建的 tokens 密钥。

回代码仓库,点 Actions -- New wordflow -- Set up a workflow yourself ,也可以在本地目录中新建.github/workflows/deploy.yml,内容填入以下代码:

    name: Deploy Hugo # 随意
    
    on:
      push:
        branches:
          - master   # master 更新触发
    
    jobs:
      build-deploy:
        runs-on: ubuntu-18.04
        steps:
          - uses: actions/checkout@v1
    
          - name: Setup Hugo
            uses: peaceiris/actions-hugo@v2
            with:
              hugo-version: latest
    
          - name: Build 
            run: hugo
    
          - name: Deploy
            uses: peaceiris/actions-gh-pages@v3
            with:
              personal_token: ${{ secrets.personal_token }} # personal_token 这里新建一个 https://github.com/settings/tokens
              PUBLISH_BRANCH: gh-pages  # 推送到当前 gh-pages 分支
              PUBLISH_DIR: ./public  # hugo 生成到 public 作为跟目录
              commit_message: ${{ github.event.head_commit.message }}

提交到仓库后,就可以发现 GitHub Actions 已经启动了!可以在提交历史后面的状态,或者 Actions 标签中看到运行的状态。

3.绑定域名