Release v0.4.0 · aereal/capistrano-strategy-jenkins_artifact · GitHub
capistrano-strategy-jenkins_artifactというgemを作ってメンテしており、これの0.4.0をリリースしました。
Travisのビルドでは最大約30倍速くなりました:
`bundle install` before: 126.69sec
Goodbye jenkins_api_client by aereal · Pull Request #21 · aereal/capistrano-strategy-jenkins_artifact · GitHub
`bundle install` after: 4.22sec
JenkinsのAPIを利用するためにjenkins_api_clientというgemを使っていたのですが、これはXML APIを利用することもあるので依存にnokogiriが入っており、`bundle install` に時間がかかるのがネックでした。
実際にこのgemで利用するAPIはJSON APIでまかなえたので、net/httpベースで書き直すことでjenkins_api_client経由のnokogiri依存をなくしました。ありがとうjenkins_api_client.
このgemはCapistrano 2 strategy that uses Jenkins' artifact as a distribution provider.
という説明の通り、Jenkinsのビルド成果物を取得するstrategyを提供します。
もともとはてなブログのデプロイ設定のために書いていたコードをgemとして切り出したもので、いまではMackerelなど社内のいくつかのサービスで導入されています。gem化してよかった。
ついでにOSS化したことでテストをちゃんと書こうというモチベーションが高まりお得。