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
690
1
Share
Jenkins + Bitbucketでアプリリリースを自動化してみた
これまで手動で行なっていたアプリリリース作業を、JenkinsとBitbucketを組み合わせて自動化した話です。
umechanhika
October 31, 2018
More Decks by umechanhika
See All by umechanhika
My Workspace [2020/08版]
umechanhika
0
110
My Workspace [2020/06版]
umechanhika
0
55
Badging for Tabs and Bottom Navigation
umechanhika
0
380
Capture view and Register to gallery
umechanhika
0
63
Shape Design with Material Components
umechanhika
3
270
Firebase MLKit AutoML Vision Edgeを触ってみた
umechanhika
3
580
Google Play Consoleの時間指定公開のハマりポイント
umechanhika
1
1.6k
UIテスト初心者のチームにUIテスト自動化を導入した話
umechanhika
0
120
GoogleI/Oアプリのようなフィルター機能を実装する
umechanhika
2
540
Other Decks in Programming
See All in Programming
Stage 3 Decorators でできること / できないこと / TSKaigi 2026
susisu
1
1.5k
密結合なバックエンドから TypeScript のコードを生成する
kemuridama
1
700
TSKaigi 2026 TypeScriptバックエンドのオブザーバビリティ戦略 — Datadog × NestJSの実践
taiseiyamamotoan
2
280
Swiftのレキシカルスコープ管理
kntkymt
0
210
作って学ぶ、 JSX (TSX) ランタイムの基本
syumai
7
1.5k
「エンジニアインターン、どうやって取った?」準備のリアルを語るLT会 Progate BAR
akiomatic
0
120
メソッドのジェネリクスでGoの夢は広がるか? / Kyoto.go #65
utgwkk
3
460
AI駆動開発勉強会 広島支部 第一回勉強会 AI駆動開発概要とワークショップ
hayatoshimiu
0
440
ローカルLLMを使ってB2Bサービスを作っていての学び
yaotti
0
110
ユニットテストの先へ:テスト技法で要求・仕様を整理するJava開発実践 / Beyond_Unit_Testing_Practical_Java_Development_Techniques_for_Organizing_Requirements_and_Specifications
shimashima35
0
350
AIとASP.NET Coreで雑Webアプリを作った話
mayuki
0
270
CSC307 Lecture 17
javiergs
PRO
0
310
Featured
See All Featured
Done Done
chrislema
186
16k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
220
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
160
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4.1k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
570
Docker and Python
trallard
47
3.9k
What's in a price? How to price your products and services
michaelherold
247
13k
SEO for Brand Visibility & Recognition
aleyda
0
4.6k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
25k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.7k
Principles of Awesome APIs and How to Build Them.
keavy
128
17k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
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
細かいリリースが可能になり検証の負担が軽減 微修正でもリリースされるのが若⼲デメリット
ご清聴ありがとうございました︕