Submit Search
Multibranch pipelineでいろいろ学んだこと
1 like
5,904 views
A
aha_oretama
JenkinsのMultibranch pipelineでいろいろ学んだこと
Engineering
Read more
1 of 13
Download now
Download to read offline
1
2
3
4
5
6
7
8
9
10
11
12
13
More Related Content
PDF
Multibranch pipelineでいろいろ学んだこと
Recruit Lifestyle Co., Ltd.
PDF
MagicOnion入門
torisoup
PDF
”30分”ぐらいでわかる「Kubernetes」について
Yuya Ohara
PDF
オンラインゲームの仕組みと工夫
Yuta Imai
PDF
超実践 Cloud Spanner 設計講座
Samir Hammoudi
PDF
OpenStack超入門シリーズ Novaのディスク周りあれこれ
Toru Makabe
PDF
例外設計における大罪
Takuto Wada
PDF
こわくない Git
Kota Saito
Multibranch pipelineでいろいろ学んだこと
Recruit Lifestyle Co., Ltd.
MagicOnion入門
torisoup
”30分”ぐらいでわかる「Kubernetes」について
Yuya Ohara
オンラインゲームの仕組みと工夫
Yuta Imai
超実践 Cloud Spanner 設計講座
Samir Hammoudi
OpenStack超入門シリーズ Novaのディスク周りあれこれ
Toru Makabe
例外設計における大罪
Takuto Wada
こわくない Git
Kota Saito
What's hot
(20)
PPTX
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
NTT DATA Technology & Innovation
PPTX
本当は恐ろしい分散システムの話
Kumazaki Hiroki
PDF
Monix Taskが便利だという話
Taisuke Oe
PDF
Dockerからcontainerdへの移行
Kohei Tokunaga
PDF
20分でわかるgVisor入門
Shuji Yamada
PDF
[CEDEC 2021] 運用中タイトルでも怖くない! 『メルクストーリア』におけるハイパフォーマンス・ローコストなリアルタイム通信技術の導入事例
Naoya Kishimoto
PDF
C#×LLVM=アセンブラ!? 〜詳説・Burstコンパイラー〜
UnityTechnologiesJapan002
PDF
Ansibleはじめよぉ -Infrastructure as Codeを理解-
Shingo Kitayama
PDF
インタフェース完全に理解した
torisoup
PDF
【関東GPGPU勉強会#3】OpenCVの新機能 UMatを先取りしよう
Yasuhiro Yoshimura
PPTX
イベント・ソーシングを知る
Shuhei Fujita
PDF
CTF for ビギナーズ ネットワーク講習資料
SECCON Beginners
PDF
【Spring fest 2019】徹底解剖Spring MVCアーキテクチャー
ssuser070fa9
PDF
いつやるの?Git入門 v1.1.0
Masakazu Matsushita
PPTX
トランザクションの設計と進化
Kumazaki Hiroki
PDF
Steam ゲーム内購入 サーバーサイド実装について
KLab Inc. / Tech
PDF
ドメイン駆動設計サンプルコードの徹底解説
増田 亨
PPTX
分散システムについて語らせてくれ
Kumazaki Hiroki
PDF
DataGridを自前実装する話
terurou
PDF
PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜
Preferred Networks
Apache Spark on Kubernetes入門(Open Source Conference 2021 Online Hiroshima 発表資料)
NTT DATA Technology & Innovation
本当は恐ろしい分散システムの話
Kumazaki Hiroki
Monix Taskが便利だという話
Taisuke Oe
Dockerからcontainerdへの移行
Kohei Tokunaga
20分でわかるgVisor入門
Shuji Yamada
[CEDEC 2021] 運用中タイトルでも怖くない! 『メルクストーリア』におけるハイパフォーマンス・ローコストなリアルタイム通信技術の導入事例
Naoya Kishimoto
C#×LLVM=アセンブラ!? 〜詳説・Burstコンパイラー〜
UnityTechnologiesJapan002
Ansibleはじめよぉ -Infrastructure as Codeを理解-
Shingo Kitayama
インタフェース完全に理解した
torisoup
【関東GPGPU勉強会#3】OpenCVの新機能 UMatを先取りしよう
Yasuhiro Yoshimura
イベント・ソーシングを知る
Shuhei Fujita
CTF for ビギナーズ ネットワーク講習資料
SECCON Beginners
【Spring fest 2019】徹底解剖Spring MVCアーキテクチャー
ssuser070fa9
いつやるの?Git入門 v1.1.0
Masakazu Matsushita
トランザクションの設計と進化
Kumazaki Hiroki
Steam ゲーム内購入 サーバーサイド実装について
KLab Inc. / Tech
ドメイン駆動設計サンプルコードの徹底解説
増田 亨
分散システムについて語らせてくれ
Kumazaki Hiroki
DataGridを自前実装する話
terurou
PFN のオンプレML基盤の取り組み / オンプレML基盤 on Kubernetes 〜PFN、ヤフー〜
Preferred Networks
Ad
Viewers also liked
(20)
PDF
劇的改善 Ci4時間から5分へ〜私がやった10のこと〜
aha_oretama
PPTX
Dockerで始める Java EE アプリケーション開発 for JJUG CCC 2017
Kohei Saito
PDF
Java SE 9の紹介: モジュール・システムを中心に
Taku Miyakawa
PDF
ユニットテストのアサーション 流れるようなインターフェースのAssertJを添えて 入門者仕立て
Ryosuke Uchitate
PDF
Java9を迎えた今こそ!Java本格(再)入門
Takuya Okada
PDF
JJUG初心者のためのJava/JJUG講座
Yusuke Suzuki
PDF
継続的インテグレーションの過去・現在・そして未来 〜ヌーラボの事例と共に考える〜
ikikko
PDF
SETとして活動しはじめた話
aha_oretama
PDF
自動化を支えるCI/CDツールの私の選択 ~何をするためにCI/CDツールを選ぶか~
aha_oretama
PPTX
マルチクラウドデータ連携Javaアプリケーションの作り方
CData Software Japan
PDF
Graph Algorithms Part 1
Taku Miyakawa
PDF
Business Process Modeling in Goldman Sachs @ JJUG CCC Fall 2017
tty fky
PDF
Open Liberty: オープンソースになったWebSphere Liberty
Takakiyo Tanaka
PPTX
Javaアプリケーションの モダナイゼーションアプローチ
CData Software Japan
PDF
ITトレンドに見る日本のエンタープライズITについて
Yusuke Suzuki
PDF
SpotBugs(FindBugs)による 大規模ERPのコード品質改善
Works Applications
PDF
JVM上で動くPython処理系実装のススメ
Yoshiaki Shibutani
PPTX
JEP280: Java 9 で文字列結合の処理が変わるぞ!準備はいいか!? #jjug_ccc
YujiSoftware
PDF
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
Koichiro Matsuoka
PPTX
AI and Machine Learning Demystified by Carol Smith at Midwest UX 2017
Carol Smith
劇的改善 Ci4時間から5分へ〜私がやった10のこと〜
aha_oretama
Dockerで始める Java EE アプリケーション開発 for JJUG CCC 2017
Kohei Saito
Java SE 9の紹介: モジュール・システムを中心に
Taku Miyakawa
ユニットテストのアサーション 流れるようなインターフェースのAssertJを添えて 入門者仕立て
Ryosuke Uchitate
Java9を迎えた今こそ!Java本格(再)入門
Takuya Okada
JJUG初心者のためのJava/JJUG講座
Yusuke Suzuki
継続的インテグレーションの過去・現在・そして未来 〜ヌーラボの事例と共に考える〜
ikikko
SETとして活動しはじめた話
aha_oretama
自動化を支えるCI/CDツールの私の選択 ~何をするためにCI/CDツールを選ぶか~
aha_oretama
マルチクラウドデータ連携Javaアプリケーションの作り方
CData Software Japan
Graph Algorithms Part 1
Taku Miyakawa
Business Process Modeling in Goldman Sachs @ JJUG CCC Fall 2017
tty fky
Open Liberty: オープンソースになったWebSphere Liberty
Takakiyo Tanaka
Javaアプリケーションの モダナイゼーションアプローチ
CData Software Japan
ITトレンドに見る日本のエンタープライズITについて
Yusuke Suzuki
SpotBugs(FindBugs)による 大規模ERPのコード品質改善
Works Applications
JVM上で動くPython処理系実装のススメ
Yoshiaki Shibutani
JEP280: Java 9 で文字列結合の処理が変わるぞ!準備はいいか!? #jjug_ccc
YujiSoftware
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
Koichiro Matsuoka
AI and Machine Learning Demystified by Carol Smith at Midwest UX 2017
Carol Smith
Ad
Similar to Multibranch pipelineでいろいろ学んだこと
(7)
PPTX
Multibranch Pipeline with Docker 入門編
kimulla
KEY
Git (運用編)
Naomichi Yamakita
PDF
Git flowについてまとめてみた
hiroyuki koga
PDF
GitLab & web hooks & git-flowで実現する企業向けgit環境の構築
CROOZ, inc.
PDF
git ~start PullRequest~
Souichirou Andou
PPTX
Git勉強会
Tomoki Oyamatsu
PDF
Bitbucket Pipelinesについて
グロースエクスパートナーズ株式会社/Growth xPartners Incorporated.
Multibranch Pipeline with Docker 入門編
kimulla
Git (運用編)
Naomichi Yamakita
Git flowについてまとめてみた
hiroyuki koga
GitLab & web hooks & git-flowで実現する企業向けgit環境の構築
CROOZ, inc.
git ~start PullRequest~
Souichirou Andou
Git勉強会
Tomoki Oyamatsu
Bitbucket Pipelinesについて
グロースエクスパートナーズ株式会社/Growth xPartners Incorporated.
Multibranch pipelineでいろいろ学んだこと
1.
Multibranch Pipelineで いろいろ学んだこと リクルートライフスタイル R-SET 関根
康史
2.
自己紹介 ● 関根 康史
( @AHA_oretama ) ● リクルートライフスタイル ○ 2015/8 〜 ● ブッキングテーブル開発統括 → R-SET活動中 SET = Software Engineer in Test R-SET = Recruit Lifestyle’s SET
3.
Multibranch Pipeline ● Jenkins
2系で推奨インストール入り ● 変更があったブランチやプルリクエストを自動でビルドする
4.
Webhook設定を忘れがち ● 変更があったら自動でビルドする、と言ったが、 その契機はGitHubのWebHook ● GitHub
Setting -> Webhooks で設定 URL:http://<Name of Jenkins server>:8080/github-webhook/ ● 残念ながらMultiBranchジョブを作成したら 自動では設定されるわけではない。手動で設定する必要がある
5.
GitHub設定を理解する (下2つのfork版も存在) Build origin branches
? Build origin branches also filed as PRs ? Build origin PRs (merged with base branch) ? Build origin PRs (unmerged head) ?
6.
GitHub設定を理解する (下2つのfork版も存在) Build origin branches
ブランチに変更があった場合にビルドする Build origin branches also filed as PRs PRされているブランチに対してビルドする Build origin PRs (merged with base branch) マージ先とマージしてからPRをビルドする。 マージ先に変更があってもビルドする。 Conflictするとコケる。 (PRにコメントする場合に利用) Build origin PRs (unmerged head) PRをビルドする。 (PRにコメントする場合に利用)
7.
Build origin PRsのJenkinsfileの扱いについて Build
origin PRs (merged with base branch) プルリクエスト先にJenkinsfileがある場合に ビルドされる Build origin PRs (unmerged head) プルリクエスト元にJenkinsfileがある場合に ビルドされる
8.
ブランチの設定箇所 GUI? or Pipeline? #!groovy pipeline
{ ... when { branch 'develop' } }
9.
ブランチの設定箇所 GUI? or Pipeline?
⇒ 条件によって使い分け+併用が望ましい GUI Pipeline ブランチの正規表現が豊富。 include/excludeのみ 変更容易性が高いが、 ジョブが増えて可視性が低い。 複合条件も可能。 ジョブの対象が 変わらない場合はGUIがベター ex. develop -> 更新があればビルド ジョブの対象が頻繁に 変わる場合にはPipelineがベター ex. feature/AAA -> BBB環境へリリース
10.
Multibranch Pipeline ver.1.4まで Jenkinsfileは1つのみ、固定パス
(./Jenkinsfile) ● when文を多用して、1ファイルに処理をいくつも書く。 → 処理の複雑化 ● プルリクエストに対するコメント処理を同時に複数実行(Parallelの使用) → stash/unstashでソースファイルを受け渡し → .gitファイルがないため、gitが必要な処理が動かない…
11.
Jenkinsfileでパス指定可能に JENKINS-34561の対応により、ver.1.5よりパスを指定可能 → ジョブを複数作ることで、ジョブごとにJenkinsfileを分けれる
12.
パス指定での複数ジョブの弊害 ● プルリクエストで行う処理をジョブ(Jenkinsfile)を分けることで並列化 ○ テスト ○
SonarQube ○ Lint ○ … ● しかし、GitHubへのステータスはすべてのジョブで共有 最後のものでステータスは上書きされる 1. SonarQube失敗 -> GitHub異常 2. テスト成功 -> GitHub正常 ⇒ 最終GitHubステータス = 正常
13.
MultibranchどころかPipeline知らない問題 ● どうすればいいか模索中 構想中 JOB
Download