Upgrade to Pro — share decks privately, control downloads, hide ads and more …

刀狩り for Jenkins

yu0819ki
August 04, 2016

刀狩り for Jenkins

yu0819ki

August 04, 2016
Tweet

More Decks by yu0819ki

Other Decks in Technology

Transcript

  1. Intro. Name:   ⽊木村 幸弘 a.k.a yu0819ki Birthday:   1985.08.19

    Age:   30 Birthplace: 北海道 Job: 技術総務リードエンジニア Hobby: ⾳音ゲー、読書、作曲 Motto: パンが無ければ作ればいいじゃない
  2. Jenkinsについて 【使い⽅方、使われ⽅方】 • オープンソースなので、基本的には⾃自前でサーバを⽤用意してインス トールする • どこからでもボタン⼀一つでジョブを実⾏行できる • パラメータも指定できる •

    実⾏行時刻の指定(予約)もできる • 弊社では社内からしかアクセスできません・x・ • WebAPIが提供されているので、外部連携ができる • 弊社では社内サーバ上のシステムとしか連携できません・x・ 【ちょっと具体的に】 • Cronライクに何かを定時実⾏行する • Githubと連携して、テストを⾃自動でまわす • テストが通ったソースを元にビルドジョブを実⾏行する • ビルドされたリソースなどをリモートサーバにばらまく • SlackやChatworkにビルド結果を通知する
  3. 狩っていく 【定期実⾏行ジョブ編】 • ごめんちょっと専⾨門外なんだ • Cronに⽐比べればいろいろとマシ • Jenkinsのジョブでだけ調整すれば対象のリモートサーバ全台の定期実 ⾏行が可能 •

    実⾏行結果の履歴が⼀一箇所に残る • 依存関係を張りにくい • 直列な依存(コレが終わったら次ソレ)だと物⾜足りないケース 【こう狩る】 状況に合わせて以下のようなソフトウェアで代替 • Patriot • Rundeck • digdag • etc...
  4. 狩っていく 【テスト/ビルド編】 • 各種プラグインを⼊入れる必要があったりする • あるいはミドルウェアのインストールが必要になるかも • Gulp回すのにNode.jsインストールしたり • PHPのビルドのためにcomposerインストールしたり

    • Javaとかはプラグインだけで完結できそうなイメージ • 環境ごととか、複数のJenkinsが存在してると、それら全部に各種 インストールをしていかないといけない・・・ • しかもプラグインのバージョンがずれたりして、設定項⽬目が違うとか もある 【こう狩る】 状況に合わせて以下のようなSaaSで代替 • CircleCI • TravisCI • etc...