読者です 読者をやめる 読者になる 読者になる

once upon a time,

Iris Tradをビール片手に聞くのが好きなエンジニアが、機械学習やRubyにまつわる話を書きます

Gitlab CIを使ってSphinxのドキュメントを自動でPDFにビルドする

sphinx document gitlab

gitlab.comは自前でDocker image登録できたり、CI持っていたりと便利ですね。しかも、privateレポジトリもお金かからないという太っ腹。 技術書典2に向けたレポジトリはgitlab.comで管理しています。

今回は共著者にPython使いが多いためSphinxを使って書いているんですが、Sphinxはcommon markでも書けるのでmarkdownでも文章を書くことが出来ます。

前回の記事では、数式入りのmarkdownからPDFを生成するDocker imageを作りましたが、それを使うと簡単にGitlab-CIでPDFが生成できます。

chezou.hatenablog.com

やり方は簡単、あなたのSphinxのプロジェクトに、以下のような.gitlab-ci.ymlを書くだけ。もちろん、必要に応じてpathsは変更してください。

image: chezou/sphinx-recommonmark:latest
pdf:
  script:
    - make latexpdfja
  artifacts:
    paths:
    - build/latex/techbookfest02.pdf
  only:
    - master

こうすると、masterにpushしてCIが成功する度に、PDFが生成されてダウンロードできます。

f:id:chezou:20170123123725p:plain

めっちゃ簡単。お試しあれ。