因为朋友的安利和Coding又送了我三个月的黄金会员,将博客从Netlify迁到了Coding Pages。Coding Pages的服务器位于香港,比使用Tokyo aws的Netlify要快不少。但是习惯了曾经直接将博客源码推送到Git仓库,GitLab CI/CD或Netlif自动构建部署的方式,在Coding Pages上还得push一遍public文件夹让我觉得很繁琐。于是研究了一下GitHub上使用的比较多的Travis CI。
前提条件
本文默认你已经具备一下技能:
- 使用过Hugo或其它的静态博客
- 博客源码托管在GitHub仓库
- 知道怎么使用GitHub Pages或者Coding Pages服务
准备工作
使用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代码就行了。