Can雑な感この広告は、90日以上更新していないブログに表示しています。CIでPDF生成するようにした1月に入り、卒論を書かざるを得ない時期になってきた。現実逃避のためにGithubにpushしたらPDFがビルドされるようにした。(一度くらいCIツール使ってみたさがあった)(普通の研究室は12月中に色々やってるみたいだが、弊研究室はふわふわしていてこの時期に卒論を書き始めていたりすることもある。)同じことをやっている人はたくさん居るだろうけどいろいろつまづいたので備忘録を残しておく。概要Githubにpushしたら、CircleCIが動いてPDFを生成してデフォルトブランチとは別なrelease-pdfブランチに生成したPDFをcommitしてpushしてくれる仕組み。release-pdfブランチを見れば最新のPDFが見られる寸法。やったこと主に次の2つのサイトを参考にした。人様に見せられるものではないので学生の権利を濫用してPrivateでリポジトリ作成。先輩の作ったテンプレのtexを頂き、とりまコミット。main.tex内で色々includeする形になっているのでmain.texをビルドすればOKな状態。CircleCIの準備サイトでポチポチするだけの作業。Qiita.circleci/config.ymlの追加CircleCIではYAMLファイルを利用して設定する模様。インデントをタブにしてハマったので注意(スペースしか受け付けてくれない)。あと、2.0で記法が大分変わった模様。release-pdfCircleCIではDockerを利用してテスト環境作る様子(Dockerよく知らない)。イメージは参考元に倣ってpaperist/alpine-texlive-ja1をお借りした。(名前がよく見る人だった)gitとpush用にopensshを追加で導入。.latexmkrcはよく分からないので適当にggってヒットした記事をコピーアンドペーストした。元のtexファイルがupLaTeX前提だったので、upLaTexを利用することにした。考えるのが面倒なので、作業ブランチは1つだけ2にして、ビルドしたPDFの設置は別ブランチにした。適当にやると差分が出てcheckoutに失敗したりFast-forwardじゃないって言われてpushに失敗したりして面倒だった。skip]って入れないと無限ループするみたいなので注意。参考元にあるように、初期設定だと鍵がread-onlyなためpushができない様子。only.みたいなこと言われる。keyみたいなところポチったらさっと両方に登録されて上手くいった。URLでいうと、https://circleci.com/gh/<username>/<repository>/edit#checkout英語分からず割と適当にやったので合ってるか分からないけど、ちゃんと調べるのは卒論書き終えてからでええなってなっている。(プライベートリポジトリなので権限周りが面倒だった可能性がある)まとめこれで単一URLで最新版のPDFが見られるようになったので便利。あとは、句読点面倒で設定していないので自動で置換するようにしてもいいかなと思ってる。config.yml弄ればできそうだし。通知考えてなかったので、Slackに流したりしてない。結論としてこんなことより卒論を書く方に注力すべき。↩クソどうでもいいけどmasterではないので、bachelorって名前に変えた。Calendar3日目の記事です。CIでPDF生成するようにした2017年の振り返り月別アーカイブはてなブログをはじめよう!jackaleさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。