WerckerでPrivateリポジトリなGemやPuppetモジュールを利用する方法
皆様あけましておめでとうございます。歳を重ねるにつれて1年を短く感じるようになり年末、正月気分が年々薄れていき今年はさっぱり正月気分を味わえていませんが皆様はいかがでしょうか?
さてさて、最近巷で流行りのWerckerはご存知でしょうか?Github, Bitbucketに対応していてプライベートリポジトリだろうとCIし放題という便利なサービスです。
こんな便利なものを使わない手はないということで早速使ってみようとしたところCIしようとしたリポジトリが他のプライベートなGemやPuppetモジュールなんかに依存していてちょっと手間取ったのでその方法をご紹介。
やり方
まずApplicationのSettingsタブにあるKey managementでリポジトリへアクセスするための鍵ペアを作ります。
対象とするリポジトリ郡に対してアクセスするために作成した公開鍵をBitbucket側にも設定しておきましょう。ダミーユーザなどを作ってそのユーザに鍵を登録しRead Onlyな権限を付与しておくのが管理上は楽かもしれません。
次にこれをビルドスクリプトから利用できるようにするために変数として定義します。変数の定義は同じSettingsタブのPipelineでAdd new variableをクリックすれば追加が出来ます。
最後にビルド中に作成した鍵を使ってCloneされるようにwercker.ymlに以下の様に設定すれば完了です。add-sshkeyとadd-to-known_hostsステップだけきちんと設定出来ていれば、以降はbundle installするなり、librarian-puppet installするなりすればきちんとチェックアウトして利用することが出来ます。
box: wercker/ruby build: steps: - add-ssh-key: keyname: BITBUCKET_KEY - add-to-known_hosts: hostname: bitbucket.org fingerprint: 97:8c:1b:f2:6f:14:6b:5c:3b:ec:aa:46:46:74:7c:40 - script: name: specs code: rake spec
それでは快適なWerckerライフを!
参考リンク
Using private repositories in your builds
入門Puppet - Automate Your Infrastructure
- 作者: 栗林健太郎
- 発売日: 2013/04/29
- メディア: Kindle版
- この商品を含むブログ (2件) を見る
Jenkins実践入門 ?ビルド・テスト・デプロイを自動化する技術 (WEB+DB PRESS plus)
- 作者: 佐藤聖規,和田貴久,河村雅人,米沢弘樹,山岸啓,川口耕介
- 出版社/メーカー: 技術評論社
- 発売日: 2011/11/11
- メディア: 単行本(ソフトカバー)
- 購入: 26人 クリック: 496回
- この商品を含むブログ (62件) を見る