如何使用travis-ci自动化构建部署GitHub Pages(gitbook)

Github Pages

github pages可以当做你或者你的项目的 Websites,那么我们可以知道 GitHub Pages 有两种最基本的用法:

  • 作为你自己(或者组织)的网站或者博客(访问地址示例:http://username.github.io)
  • 作为你某一个项目的网站(访问地址示例:http://username.github.io/projectname)

如果是第二种的话部署的时候需要在源仓库的基础上再创建一个gh-pages的分支,然后部署的时候需要将在源仓库生成的静态文件单独拎出来放到gh-pages分支上push上去,整个操作流程比较麻烦,而travis-ci可以很方便帮们解决这个痛点。

配置travis-ci

登录 travis
  • https://travis-ci.org/(免费)

  • https://travis-ci.com/(收费)

登录时使用GitHub账号登录,此时为了让travis获取调用GitHub Api的权限需要在GitHub上生成一个token。
在github(https://github.com/settings/tokens) Settings/ Developer settings 新生成一个travis专用的token.

image
在travis 配置token环境变量

在你需要构建的仓库的设置里添加GITHUB_TOKEN环境变量。

image
创建 配置文件

在你的github pages 项目里面新建.travis.yml配置文件。

language: node_js # 构建所需的语言环境
node_js:
  - "v11.14.0"  # 对应的版本
branches:
  only:
  - master    # 构建的分支
cache:
  directories:
  - node_modules # 依赖缓存的目录
before_install:
- export TZ='Asia/Shanghai'  # 设置时区
install:
 - npm install -g gitbook-cli # 安装编译工具
script:
- gitbook build
deploy:
  provider: pages
  skip-cleanup: true
  github-token: $GITHUB_TOKEN # github 上的token环境变量
  local-dir: ./_book/ ## 根据情况自定义到静态文件输出目录
  target-branch: gh-pages
  verbose: true
  on:
    branch: master
测试

在github page的项目里面修改一点东西,push到GitHub上去就会在travis上看到触发build。

image

大概等个2min你会发现你的github pages 已经更新了。

你可能感兴趣的:(如何使用travis-ci自动化构建部署GitHub Pages(gitbook))