利用 Travis-CI 持续集成 LaTeX 文档
最近写了一个整理《应用数理统计》的文档,想要通过 Travis-CI 持续集成到 GitHub 上。 然而踩了非常多的坑。下面我就再整理一下,这个配置的过程。
配置过程
- 在 GitHub 上发布打包好的 TexLive 2018
- 利用打包好的 TexLive 2018 编译文档并上传 GitHub Release
在 GitHub 上发布打包好的 TexLive 2018
可以直接 Fork GitHub 上的仓库 holgern/travis-texlive
, 然后 Travis 就开始持续集成的过程。 但是要在 Travis 里面配置一个 GitHub Personal Access Token , 将生成的 Token 配置到 Travis 的设置中。
在 Travis 中看到成功运行后(注意可能要非常长的时间,将近1小时),可以将仓库克隆下来,打 Tag 了。 打了 Tag ,上传到 GitHub 仓库,就可以让 Travis 持续集成发布到 GitHub Release 中。
注意:这个过程可以不用,如果你只用了所有 TexLive 自带的包,那可以直接使用
holgern/travis-texlive
的打包结果。但是如果你要安装非自带的包,那么就要先打包最新的 TexLive ,否则是无法安装的。
利用打包好的 TexLive 2018 编译文档并上传 GitHub Release
编译文档的 Travis 配置文件如下:
1 | language: bash |
before_install
部分进行了以下几个步骤:
- 下载了打包的 TexLive 2018 ,并配置环境变量
- 下载了使用的 XITS 字体包并安装字体
- 安装了 Pygments 包以使用 minted 宏包
branchs
使用正则表达式配置了只有以 v[\d.]+\d
即形如 v1.0.0
的分支才进行持续集成。
script
里面就是 LaTeX 编译的流程。
deploy
里面设置部署的方式。$GITHUB_TOKEN
就代表了 Travis CI 配置的参数。 skip_cleanup: true
跳过 Travis 清理的过程,才能上传文件。 on: tags: true
表示只有在打了 tag 的提交上才进行部署。
最终部署的结果如下,还是非常满意的。欢迎大家下载我的 《应用数理统计复习整理》。
持续集成真的好方便。