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
Bitrise Pipelinesを使って リリース作業を効率化する
Search
horitamon
January 17, 2023
0
56
Bitrise Pipelinesを使って リリース作業を効率化する
horitamon
January 17, 2023
Tweet
Share
More Decks by horitamon
See All by horitamon
Kotlin Multiplatformで考えるクリーンアーキテクチャ
horitamon
0
66
スタートアップ企業のフェーズ転換期を乗り越えるためのリアーキテクト戦略
horitamon
0
490
ActでGithub Actionsの動作確認をする
horitamon
0
950
コルーチンを使って処理の見通しをよくする
horitamon
2
2.1k
解決むずかったバグ3選
horitamon
0
350
「OK Google」でアプリの機能を呼び出してみる
horitamon
0
1.1k
Featured
See All Featured
Designing on Purpose - Digital PM Summit 2013
jponch
115
7k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
109
49k
The Pragmatic Product Professional
lauravandoore
31
6.3k
For a Future-Friendly Web
brad_frost
175
9.4k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
10
720
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
329
21k
Why Our Code Smells
bkeepers
PRO
334
57k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
6
410
The Language of Interfaces
destraynor
154
24k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Teambox: Starting and Learning
jrom
133
8.8k
Building Flexible Design Systems
yeseniaperezcruz
327
38k
Transcript
Bitrise Pipelinesを使って リリース作業を効率化する horitamon • 2023 年 1月 17 日
@Voicy tech bar
堀 多聞 - horitamon - Androidエンジニア5年目 2020/9〜 Voicy 品質改善チーム 最近はiOSの実装時間の方が長い
Twitter: @horitamon
© Voicy, Inc. ❶ Bitrise Pipelinesとは ❷ Bitrise Pipelinesでリリース作業の効率化 ❸
Pipelinesを使うメリット ❹ 少しだけ困ったこと 今日お話しすること
Bitrise Pipelinesとは
© Voicy, Inc. Bitriseとは
https://bitrise.io/ モバイル特化型のCI/CDツール
© Voicy, Inc. Bitrise Pipelinesとは • Bitriseのフロー構成の最上位、 元々あったWorkflowという処理のまとまりのさらに上位の概念 • クレジットベース(時間消費型)のアカウントでのみ利用可能
• 公式ブログ
© Voicy, Inc. 並列実行 順次実行 Bitrise Pipelinesの特徴
© Voicy, Inc. • Stage=Workflowのまとまり • 同じStageのWorkflowは並列で実行される Stage 並列実行 Workflow
A Workflow B Workflow C
© Voicy, Inc. 順次実行 • Stage内のWorkflowの全てが完了してから次のStageに進む Stage 1 Workflow A
Workflow B Workflow C Stage 2 Workflow D Workflow E Stage 3 Workflow F
Bitrise Pipelinesで リリース作業の効率化
© Voicy, Inc. Voicyアプリのリリース手順 Workflow 実行トリガー Unit Test Mainブランチへのマージ QA環境版アプリをApp
Testerへ配信 手動 本番アプリをストアへアップロード Tag 次回releaseブランチの作成 Tag それぞれ別作業でした…
© Voicy, Inc. 並列で進める 効率を上げるには 自動で次に進める
© Voicy, Inc. 成功したら自動で次へ進むようにする Unit Test QA版配信 本番アップ ロード release
ブランチ作成
© Voicy, Inc. 同時に進められるものは同時に Unit Test QA版配信 本番アップロード release ブランチ作成
© Voicy, Inc. 全体像 Stageに分ける Stage 1 Unit Test Stage
2 Stage 3 releaseブランチ作成 QA版配信 本番アップロード
© Voicy, Inc. 作ってみる ymlファイルを 直接編集する
© Voicy, Inc. GUIで組んだWorkflowが記載されている状態
© Voicy, Inc. Stageを定義 run_ut Unit Test deploy create_branch
release ブランチ作成 QA版配信 本番
© Voicy, Inc. Pipelineを定義
© Voicy, Inc. 最後にトリガーに追加すれば完成
© Voicy, Inc. 実行してみると
Pipelinesを使うメリット
© Voicy, Inc. 並列実行する方法は元々あった Start BuildとWait for Buildを使う
© Voicy, Inc. 元々あった方法 Workflow A Workflow B Workflow C
Workflow D Workflow E Workflow F Workflow
© Voicy, Inc. クレジットを消費しない
途中からやり直せる Pipelinesを使うメリット
© Voicy, Inc. 元々あった方法だと… Workflowを呼ぶWorkflow自体でクレジットを消費する Workflow A Workflow B Workflow
C Workflow D Workflow E Workflow F Workflow
© Voicy, Inc. Pipeline自体はクレジット消費なし Stage 1 Workflow A Workflow B
Workflow C Stage 2 Workflow D Workflow E Stage 3 Workflow F クレジットを消費するのはWorkflowのみ
© Voicy, Inc. 「待ち」が無いなら従来の方法でもよい • 複数のWorkflowを同一トリガーで並列で動かしたいだけ →Start Buildだけでよい • クレジット消費は少ない
Workflow A Workflow B Workflow C start
© Voicy, Inc. クレジットを消費しない
途中からやり直せる Pipelinesを使うメリット
© Voicy, Inc. 途中で失敗すると… 最初からしかやり直せない Workflow A Workflow B Workflow
C Workflow D Workflow E Workflow F Workflow
© Voicy, Inc. Pipelineは失敗した時点から再開できる Stage 1 Workflow A Workflow B
Workflow C Stage 2 Workflow D Workflow E Stage 3 Workflow F
© Voicy, Inc.
少しだけ困ったこと
© Voicy, Inc. ymlファイルを直接書き換える必要がある • まだ簡単なフローだから簡単に書けた • 複雑だと大変かも
© Voicy, Inc. 謎にymlファイルがロールバックする • 同時にWorkflowも作っていた時に ymlファイルからPipelineがごっそり消えた →Git管理しましょう
© Voicy, Inc. まとめ ❶ Pipelinesを使うことで既存のWorkflowの自動化・並列化が手軽にできる ❷ Pipeline自体はクレジットを消費しない ❸ 途中のWorkflowが失敗してもそこからやり直せる
❹ ymlを直接編集する必要がある
© Voicy, Inc. Voicy のエンジニアが テックや開発組織について いろいろ語っています voi-chord配信中!
音声×テクノロジーでワクワクする社会をつくる