MoriKen's Journal

MoriKen's Journal

アラサー社会人博士による徒然日記。技術についてつらつら。だけだとコンテンツが貧弱なので、会社公認で大学院博士課程に進学した経緯や、独学でTOEICを475→910にしたノウハウを共有します。

GitLab CI を使って GitHub の Private Repository を無料で CI ①背景編

Sponsored Link

はじめに

GitHub ユーザは Travis CI を使っていることが多い

GitHub のリポジトリを CI するサービスは様々ありますが、多くの方は Travis CI を利用されているのではないでしょうか。簡単に連携できますし。

Public Repository を利用する限りは、無料版の Travis CI で制限なく CI ができるので、特に問題はありません。ある Repository を CI する際に、依存する Repository が存在したとしても、それも Public であればこれまた問題はありません。

f:id:MoriKen254:20190601153831p:plain


Private Repository だとお金がかかる…

ところが、訳あって秘匿にしなければならなくなった Private Repository を CI したくなったときが、困りものです。Travis CI を有償プランにアップデートしないと、Private Repository が CI できないというのですから、これは大変です!

f:id:MoriKen254:20190601154043p:plain


そんな!せっかく GitHub で Private Repository を作りやすくなったっていうのに、Travis CI の方がお金かかっちゃうだなんて。いくら社会人とは言え、訳あって何度も休職を余儀なくされるため薄給であり、かつ曲がりなりにも学生でもあるゆえに何かと出費も嵩む私の身では、あまりに痛い仕打ちではあーりませんか(Repository よりも、無駄に事情の方が Private 過ぎる笑)。

救世主、GitLab CI の登場

そんな悩める苦社会人に差し伸べられて救いの手…。それが GitLab CI です!

f:id:MoriKen254:20190601154613p:plain


  • GitLab では Private Repository を無料で作成できる
  • GitLab が提供する GitLab CI では Private Repository を無料で CI できる
    • 1ユーザ or 1グループにつき月2000分が上限
  • GitLab CI では、依存する Private Repository のクローンもできる
    • SSH の設定が必要

性能もお墨付き

このように、うまく設定して使いこないさえすれば、無料で CI できてしまう優れもの!しかも、第三者機関による性能評価も上々というのだからアッパレです。


難点が

素敵過ぎる!そう思ったでしょ。

でもね、でもね…。手順が複雑なんです!!!涙

Travis CI みたいに、軽くポチればいいんじゃなくて、色々と準備をしないといけません。Private Repository クローンしてくるあたりとか、もうなんど諦めかけたことか(オイ)!

まぁ、無料で使えるだけありがたいので、そこはエンジニアとしてハンドリングすればよいのですが、にしたって手順が複雑です。

Private Repository を無料で CI したいと画策したものの、おとなしく Travis CI に泣く泣くお金を払う運びとなったエンジニア仲間がどこかにいるはず!(妄想だったりして…)

というわけで、その複雑な手順を図を交えてチュートリアル形式に記事にしていきます!私と同じような状況に至った悩めるエンジニアにとって、少しでも助けになればと思います。

構成

具体的な手順は次回以降、2回の記事に分けて記述します。

少し補足

GitLab CI 自体は汎用的なサービスですが、私は自分の趣向の関係で、ROS のプロジェクトに CI をかけることが多いです。

そのため、変数定義やユースケースが、ROS の CI サービス用 Repository である industrial_ci に(こっそり)準拠させている場合があります。

github.com

特に動作に支障はないと思いますが、念の為補足です。

それでは、また次回!

次回: ② ミラーリング編

www.moriken254.com