之前写过了一篇使用 Travis CI
自动部署hexo的文章(传送门),最近从hexo迁移到了hugo,那自然也是要使用一下自动部署工具来自动部署,操作基本和之前的一样,就是最后使用的.travis.yml
文件内容需要更改一下,因此如果不知道如何使用 Travis CI
的可以查看之前的文章,这里就直接把 .travis.yml
的配置贴出来,修改部分参数即可直接使用。
说明:
- 使用的hugo源文件存放在hugo分支下
- 网站的静态文件存放在master分支下
- 具体的变量根据实际来变化
具体看如下配置
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
|
language: go
go:
- "1.14" # 指定Golang 1.14
branches:
only:
- hugo # 设置自动化部署的源码分支
# 设置环境变量
env:
global:
# 使用的hugo版本
- version: 0.67.1
# ***.github.io url
- GH_REF: github.com/ShangguanHong/ShangguanHong.github.io/
before_install:
- export TZ='Asia/Shanghai' # 设置时区
# 安装依赖组件
install:
- wget https://github.com/gohugoio/hugo/releases/download/v${version}/hugo_${version}_Linux-64bit.tar.gz
- tar -xzvf hugo_${version}_Linux-64bit.tar.gz
- chmod +x hugo
- export PATH=$PATH:$PWD
- hugo version
# 安装使用的主题,记得放在 themes 目录下
- git clone https://github.com/olOwOlo/hugo-theme-even.git themes/even
- git log -p -2 | cat
- commit_msg=$(git log -n1 --pretty=format:"%s")
script:
- hugo
# 部署的配置在这里
deploy:
provider: pages # 重要,指定这是一份github pages的部署配置
skip-cleanup: true # 重要,不能省略
local-dir: public # 静态站点文件所在目录
target-branch: master # 要将静态站点文件发布到哪个分支
github-token: $GH_TOKEN # 重要,$GITHUB_TOKEN是变量,需要在GitHub上申请、再到配置到Travis
# fqdn: # 如果是自定义域名,此处要填
keep-history: true # 是否保持target-branch分支的提交记录
on:
branch: hugo # 博客源码的分支
|
最后将 .travis.yml
文件一起上传到github的hugo分支上,即可做到自动部署网页到master分支。