rurema/doctreenetlify との連携の設定をして、 pull request の preview ができるようにしました。

背景

PRの変更をオンラインでレビューできる仕組みが欲しいという話があって、 以前 netlify を自分の fork で試していたのを思い出して、設定しました。

試していた当時は rurema 側の権限が足りなくて rurema/doctree に連携設定ができなかったので、 znz/doctree の方で試していました。

概要

基本的には bundle exec rake で作成される HTML を netlify で公開できれば良いのですが、 以前試した時にうまくいかない部分があったので、それを対処した形で入れました。

生成部分変更

以前試した時に /tmp/ 以下からだとデプロイできなかった覚えがあるので、 jekyll のように ./_site 以下に生成するようにしました。

また、以前試した時にデフォルトのタスクでサポートバージョンを全部生成するとタイムアウトした覚えがあるので、 2.6.0 だけにしています。 今だと高速化されていてサポートバージョン全部でも大丈夫になっている可能性はありますが、試していません。

latest -> 2.6.0 という symlink も作成されるのですが、 それを含む親ディレクトリを Publish directory に指定して試してみたところ、 symlink のディレクトリは見えなかったので、 _site/2.6.0 をトップにするように変更しました。

netlify との連携設定

New site from Git から連携設定をしました。

連携設定後に Edit site name で rurema に変更しました。

Deploy contexts で Deploy previews: Automatically build deploy previews for all pull requests を選んでいますが、 最初からこっちだったかどうか確認できなかったため、メモしておきます。

Commit Status と Commit Check への以下の通知は設定済みでした。

  • Add Deploy Preview notifications to commits when Deploy Preview starts
  • Add rich details to commits when Deploy Preview starts
  • Add Deploy Preview notifications to commits when Deploy Preview succeeds
  • Add rich details to commits when Deploy Preview succeeds
  • Add Deploy Preview notifications to commits when Deploy Preview fails
  • Add rich details to commits when Deploy Preview fails

さらに以下の設定も試してみましたが、コメントは Slack にも通知が流れてうるさいかと思ってやめました。

  • Add Deploy Preview notifications as pull request comments when Deploy Preview succeeds

command などの設定は最初の連携設定の時には入れていたのですが、 netlify.toml に移動して、 Web からの設定の方は消しました。

その後、未対応ブランチですぐに失敗するように command は /bin/false に変更しました。

その他

rurema/doctree はドキュメントなのでオープンソースライセンスではなく Creative Commons ライセンスなので、 オープンソース向けのプランは無理かと思ったら、 Creative Commons でも大丈夫という話があったので、 https://www.netlify.com/legal/open-source-policy/ 経由で https://opensource-form.netlify.com/ をみてみると、 CoC が必要など、思ったより手間がかかりそうだったので保留にしました。

rurema-search もある関係でメインを netlify には持っていけなくて、 preview だけだから、とりあえず個人アカウントのままでもいいかと思いました。

まとめ

netlify と GitHub の連携設定を追加して、 pull request のプレビューができるようになりました。

新しい pull request の Conversation の CI の結果が並んでいるところをスクロールして deploy/netlify の右の Details から開けます。

Disqus Comments

Kazuhiro NISHIYAMA

Ruby のコミッターとかやってます。 フルスタックエンジニア(って何?)かもしれません。 About znzに主なアカウントをまとめました。

znz znz


Published