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
640
Jenkins + Bitbucketでアプリリリースを自動化してみた
これまで手動で行なっていたアプリリリース作業を、JenkinsとBitbucketを組み合わせて自動化した話です。
umechanhika
October 31, 2018
Tweet
Share
More Decks by umechanhika
See All by umechanhika
My Workspace [2020/08版]
umechanhika
0
96
My Workspace [2020/06版]
umechanhika
0
42
Badging for Tabs and Bottom Navigation
umechanhika
0
340
Capture view and Register to gallery
umechanhika
0
49
Shape Design with Material Components
umechanhika
3
240
Firebase MLKit AutoML Vision Edgeを触ってみた
umechanhika
3
540
Google Play Consoleの時間指定公開のハマりポイント
umechanhika
1
1.5k
UIテスト初心者のチームにUIテスト自動化を導入した話
umechanhika
0
110
GoogleI/Oアプリのようなフィルター機能を実装する
umechanhika
2
510
Other Decks in Programming
See All in Programming
Vibe Codingの幻想を超えて-生成AIを現場で使えるようにするまでの泥臭い話.ai
fumiyakume
18
9.5k
#QiitaBash TDDで(自分の)開発がどう変わったか
ryosukedtomita
1
110
PHPUnitの限界をPlaywrightで補完するテストアプローチ
yuzneri
0
350
코딩 에이전트 체크리스트: Claude Code ver.
nacyot
0
1k
はじめてのWeb API体験 ー 飲食店検索アプリを作ろうー
akinko_0915
0
180
Understanding Kotlin Multiplatform
l2hyunwoo
0
230
それ CLI フレームワークがなくてもできるよ / Building CLI Tools Without Frameworks
orgachem
PRO
13
3.1k
AIに安心して任せるためにTypeScriptで一意な型を作ろう
arfes0e2b3c
0
280
QA x AIエコシステム段階構築作戦
osu
0
220
SQLアンチパターン第2版 データベースプログラミングで陥りがちな失敗とその対策 / Intro to SQL Antipatterns 2nd
twada
PRO
35
10k
AIコーディングエージェント全社導入とセキュリティ対策
hikaruegashira
15
8.6k
ZeroETLで始めるDynamoDBとS3の連携
afooooil
0
130
Featured
See All Featured
Making Projects Easy
brettharned
117
6.3k
Embracing the Ebb and Flow
colly
86
4.8k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
The Straight Up "How To Draw Better" Workshop
denniskardys
235
140k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
47
9.6k
A designer walks into a library…
pauljervisheath
207
24k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
It's Worth the Effort
3n
185
28k
A better future with KSS
kneath
238
17k
Typedesign – Prime Four
hannesfritz
42
2.7k
Making the Leap to Tech Lead
cromwellryan
134
9.4k
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
細かいリリースが可能になり検証の負担が軽減 微修正でもリリースされるのが若⼲デメリット
ご清聴ありがとうございました︕