Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Jenkins + Bitbucketでアプリリリースを自動化してみた
Search
umechanhika
October 31, 2018
Programming
1
650
Jenkins + Bitbucketでアプリリリースを自動化してみた
これまで手動で行なっていたアプリリリース作業を、JenkinsとBitbucketを組み合わせて自動化した話です。
umechanhika
October 31, 2018
Tweet
Share
More Decks by umechanhika
See All by umechanhika
My Workspace [2020/08版]
umechanhika
0
97
My Workspace [2020/06版]
umechanhika
0
42
Badging for Tabs and Bottom Navigation
umechanhika
0
340
Capture view and Register to gallery
umechanhika
0
53
Shape Design with Material Components
umechanhika
3
250
Firebase MLKit AutoML Vision Edgeを触ってみた
umechanhika
3
540
Google Play Consoleの時間指定公開のハマりポイント
umechanhika
1
1.6k
UIテスト初心者のチームにUIテスト自動化を導入した話
umechanhika
0
110
GoogleI/Oアプリのようなフィルター機能を実装する
umechanhika
2
510
Other Decks in Programming
See All in Programming
マイベストのシンプルなデータ基盤の話 - Googleスイートとのつき合い方 / mybest-simple-data-architecture-google-nized
snhryt
0
140
詳細の決定を遅らせつつ実装を早くする
shimabox
1
950
Amazon Bedrock Knowledge Bases Hands-on
konny0311
0
140
CSC509 Lecture 13
javiergs
PRO
0
240
O Que É e Como Funciona o PHP-FPM?
marcelgsantos
0
260
Module Proxyのマニアックな話 / Niche Topics in Module Proxy
kuro_kurorrr
0
2.6k
Functional Calisthenics in Kotlin: Kotlinで「関数型エクササイズ」を実践しよう
lagenorhynque
0
110
ノーコードからの脱出 -地獄のデスロード- / Escape from Base44
keisuke69
0
660
r2-image-worker
yusukebe
1
160
Private APIの呼び出し方
kishikawakatsumi
2
810
ドメイン駆動設計のエッセンス
masuda220
PRO
15
7.6k
SODA - FACT BOOK(JP)
sodainc
1
9.4k
Featured
See All Featured
Principles of Awesome APIs and How to Build Them.
keavy
127
17k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Docker and Python
trallard
46
3.6k
Rebuilding a faster, lazier Slack
samanthasiow
84
9.3k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
10
660
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.7k
Build your cross-platform service in a week with App Engine
jlugia
234
18k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
2
310
Designing for Performance
lara
610
69k
Being A Developer After 40
akosma
91
590k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Making the Leap to Tech Lead
cromwellryan
135
9.6k
Transcript
Jenkins + Bitbucketで アプリリリースを⾃動化してみた
⾃⼰紹介 梅津 光(ウメツ ヒカル) 株式会社ナビタイムジャパン 新卒⼊社 2016~
Androidアプリ開発 バスNAVITIME 法⼈系アプリ 趣味 個⼈アプリ開発 最近Flutterに興味あり Work Private
今⽇話すこと ⾃動化に⾄った背景 ⾃動リリースの仕組み メリット/デメリット まとめ 今⽇話さないこと
Jenkinsの構築⽅法 Bitbucketの導⼊⽅法 具体的なパラメータ
⾃動化に⾄った背景 これまでのリリースフロー リリース⽇を決める。 メンバーそれぞれがいくつかのアイテムを対応。 それぞれの対応をリリースブランチにマージ。
⼿動でビルドジョブを実⾏。 この運⽤の課題点 リリース⽇になるまで対応が積まれまくる。 影響範囲が広くなり検証担当の負担に。 ⼿動実⾏なので時々パラメータを間違える。
そんな折、ある⽇の会話 社内のJenkinsおじさん え︖まだ⼿動実⾏なんてしてるの︖ いまどき⼿動実⾏なんて時代遅れだよ︕ え︖そうなんですか︕︖ そうだよ、 これを使えば簡単に⾃動化できるよ。 社内のJenkinsおじさん
Pipeline しかし、、、
Pipelineを勧められたが、、、 運⽤⾯の課題 チームにはJenkins初⼼者が多い。(⾃分含め) したがって導⼊コストが⾼そう。 (Jenkinsおじさんからもある程度知識のある メンバーがいないと厳しいとの助⾔も。)
リリースフローの要件 リリース対象はリリースブランチのみ。 各ブランチ毎に成果物を作る必要はない。 (リリースブランチ以外は開発途中のブランチの ため。)
Pipeline Webhook to Jenkins for Bitbucket
Webhook to Jenkins for Bitbucketとは BitbucketからJenkinsへ通知を送ることができる ポストレシーブといって、コミットが処理された後に実⾏される仕組み
例)リリースブランチに新機能追加のブランチをマージ→それをトリガーに通知を送信
⾃動リリースの流れ 開発者 検証担当 リリースブランチに 変更をマージ Webhookで Jenkinsジョブを起動 アプリのビルドや リリースノートの⽣成を実⾏ 成果物を確認
メリット 細かい対応毎にアプリを検証できるようになった。 →検証担当の負担が軽減された。 ⼈⼿を煩わせることがなくなった。 →リリースのハードルが下がった。
デメリット 検証不要な⼩さい修正でもアプリがリリースされてしまう。 フォーマット修正 リネーム ect…
α版/β版などの採番ができない。
まとめ ⼿動で動かしていたアプリビルドジョブを⾃動実⾏するように改善 リリースブランチの変更をトリガーにJenkinsへ通知を送るWebhook to Jenkins for Bitbucket
細かいリリースが可能になり検証の負担が軽減 微修正でもリリースされるのが若⼲デメリット
ご清聴ありがとうございました︕