准备部署

我们开发的项目及github pages实际是分开的,所以有两个仓库。部署到github pages步骤:

生成提交代码用的ssh key

ssh-keygen -t rsa -b 4096 -C "$(git config user.email)" -f gh-pages -N ""
# You will get 2 files:
#   gh-pages.pub (public key)
#   gh-pages     (private key)

假设 开发项目为 tianhui.xin 部署的项目为 tianhui.github.io

打开tianhui.xin仓库的settings,再点击Secrets,然后添加刚刚生成的私钥,name为ACTIONS_DEPLOY_KEY

同理,打开tianhui.github.io,点击Deploy keys,添加公钥,Allow write access一定要勾上,否则会无法提交

然后,可以提交代码了,push成功后,打开仓库actions,至此部署成功。

name: CI #自动化的名称
on:
  push: # push的时候触发
    branches: # 那些分支需要触发
      - master
jobs:
  build:
    runs-on: ubuntu-latest # 镜像市场
    steps:
      - name: checkout # 步骤的名称
        uses: actions/checkout@v1 #软件市场的名称
        with: # 参数
          submodules: true
      - name: Setup Hugo
        uses: peaceiris/actions-hugo@v2.2.2
        with:
          hugo-version: '0.59.1'
          extended: true
      - name: Build
        run: hugo --minify
      - name: Deploy
        uses: peaceiris/actions-gh-pages@v2.5.1
        env:
          ACTIONS_DEPLOY_KEY: ${{ secrets.ACTIONS_DEPLOY_KEY }}
          EXTERNAL_REPOSITORY: homeant/homeant.github.io
          PUBLISH_BRANCH: master
          PUBLISH_DIR: ./public