目录

Hugo使用travis自动发布

Hugo使用travis自动发布

背景

hexo迁移到hugo后,发布博客开始变的繁琐,没有hexo -d这样的快捷部署,但是好在有travis这样的免费CI平台,在使用travis来部署博客的确快捷了很多,只需要发布源码即可。

Github获取token

https://ghproxy.com/https://raw.githubusercontent.com/gaojila/images/master/yosoro/20200605161952-image.png

https://ghproxy.com/https://raw.githubusercontent.com/gaojila/images/master/yosoro/20200605162023-image.png

https://ghproxy.com/https://raw.githubusercontent.com/gaojila/images/master/yosoro/20200605162123-image.png

记下 Token 的值 (一定要记下来,因为离开这个页面之后就没有机会再次查看了)

https://ghproxy.com/https://raw.githubusercontent.com/gaojila/images/master/yosoro/20200605162340-image.png

设置Travis CI

使用github帐号注册一个travis帐号,登录在hugo仓库上打上,然后再点击settinghttps://ghproxy.com/https://raw.githubusercontent.com/gaojila/images/master/yosoro/20200605163532-image.png

然后填写 Environment Variables

  • Name 填写: GITHUB_TOKEN
  • Value 填写:刚刚在 GitHub 申请到的 Token 的值

https://ghproxy.com/https://raw.githubusercontent.com/gaojila/images/master/yosoro/20200605163827-image.png

点击add

编写.trabis.yml

 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
language: go

go:
  - "1.8"  # 指定Golang 1.8

install:
  # 安装最新的hugo
  - wget https://github.com/gohugoio/hugo/releases/download/v0.71.1/hugo_0.71.1_Linux-64bit.deb
  - sudo dpkg -i hugo*.deb

script:
  # 运行hugo命令
  - hugo

after_script:
  # 部署
  - cd ./public
  - git init
  - git config user.name "[gaojila]"
  - git config user.email "[redgaojila@gmail.com]"
  - git add .
  - git commit -m "Update Blog By TravisCI With Build $TRAVIS_BUILD_NUMBER"
  # Github Pages
  - git push --force --quiet "https://$GITHUB_TOKEN@${GH_REF}" master:master
  # Github Pages
  - git push --quiet "https://$GITHUB_TOKEN@${GH_REF}" master:master --tags

env:
  global:
   # Github Pages
    - GH_REF: "github.com/gaojila/gaojila.github.io"

deploy:
  provider: pages # 重要,指定这是一份github pages的部署配置
  skip-cleanup: true # 重要,不能省略
  local-dir: public # 静态站点文件所在目录
  # target-branch: master # 要将静态站点文件发布到哪个分支
  github-token: $GITHUB_TOKEN # 重要,$GITHUB_TOKEN是变量,需要在GitHub上申请、再到配置到Travis
  # fqdn:  # 如果是自定义域名,此处要填
  keep-history: true # 是否保持target-branch分支的提交记录
  on:
    branch: master # 博客源码的分支

将上面的配置文件按照你的实际情况更改。

然后将代码提交到 hugo 仓库 里。等个一两分钟,就可以在 Travis CI 上查看部署情况了

绿色 代表部署成功  黄色代表正在部署  红色 代表部署失败  灰色 代表部署被取消

https://ghproxy.com/https://raw.githubusercontent.com/gaojila/images/master/yosoro/20200605164520-image.png

相关文章