因为朋友的安利和Coding又送了我三个月的黄金会员,将博客从Netlify迁到了Coding Pages。Coding Pages的服务器位于香港,比使用Tokyo aws的Netlify要快不少。但是习惯了曾经直接将博客源码推送到Git仓库,GitLab CI/CD或Netlif自动构建部署的方式,在Coding Pages上还得push一遍public文件夹让我觉得很繁琐。于是研究了一下GitHub上使用的比较多的Travis CI。

前提条件

本文默认你已经具备一下技能:

准备工作

使用GitHub账号登录Travis CI,然后选择你的博客源码仓库,将右边的按钮打开。

生成token

打开Coding token管理页面,新建令牌,将project:depot权限勾上。然后就会生成一个token,改token只会显示一次,所以先别关闭页面。

打开Travis CI项目的设置页面

新建名为CO_TOKEN的环境变量,将刚生成的codng token填入。

Travis CI配置

在仓库的根目录创建 .travis.yml 文件,将一下内容复制到文件中,并根据注释修改。

language: go

install: go get -v github.com/gohugoio/hugo

script:
    - hugo
    
deploy:
    - cd ./public
    - git config user.name "username" # username替换为你的git username
    - git config user.email "email" # email替换为你的coding邮箱
    - git init
    - git add .
    - git commit -m "Travis-CI 自动部署"
    # Coding Pages
    - git push --force "https://<username>:${CO_TOKEN}@${CO_REF}" master:master # username替换为你的coding用户名

env:
    global:
        # Coding Pages
        - CO_REF: # 这里填入你的coding pages仓库地址 例如:git.coding.net/username/hugo.git    

然后push代码就行了。

References