drone.ioでBitbucketと連携してGoをビルド&テストしてみた。
こんにちは
実に3年ぶりにBlogを再開してみました。 *1
文章を書く、というリハビリもかねてゆるゆると技術情報ネタでまた
ブログを書いていこうと思います。
ということで再開記念の第一回目は drone.ioを使ってBitbucketに登録している
プライベートリポジトリをビルド&テストしてみようと思います。
今までは執事のおじさんと戯れていたんですがどうにも職人の朝は早い状態に
なってしまっていて、新しいものを探していました。
GitHubならTravis CIやCircle CIがありますがあくまでBitbucketで、という中で
drone.ioをチョイス。
使う言語がgolangなのは最近のマイブーム。
つかうもの
- Bitbucket (https://bitbucket.org/)
- 無料でいくらでもプライベートリポジトリを作れるのがGood。
- 課金要素はユーザー数。
- drone.io (https://drone.io/)
- Public Projectならいくつでも無料。
- Private Projectにしたければ$25/monthから。
Bitbucketにgolangのリポジトリを作成。
ソースコードとテストコードはこんな感じ。
drone.ioを設定。
「New Project」から新しく作成を初めて、
Bitbucketを選び、
Go君を選びます。
いろいろ設定できるみたいですが早速「Build Now」しちゃいます。
はい、うまくいったようです。
次にわざと失敗するようにソースコードを変えてpushしてみます。
おお、勝手にビルドが走って失敗になってます!
もう一度ソースコードを正しく直してpushしなおします。
Bitbucket側はどうなっているのか?
気になって確認してみると、Deployment keysとIntegrationsのServicesでPOSTフックが追加されていました。
こういう連携をサクサクっとやってくれるというのは便利なものですね。
drone.ioのBuild Scriptは自由にかけるので大体のことはできそうな感じです。
まとめ
- drone.ioは使い始めるまでがものすごく簡単。
- Bitbucketはプライベートリポジトリが作り放題なので業務用途で嬉しい。
- 職人芸はいらなくなるか?
参考にしたURL
- http://atskimura.hatenablog.com/entry/2014/02/06/184048
- http://tdoc.info/blog/2013/04/02/droneio.html
*1:昔書いていたはてダ http://d.hatena.ne.jp/cimadai/