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
キッチハイク社内LT大会 / 2021-06-23
Search
Takuma Yamamoto
July 11, 2021
Programming
0
30
キッチハイク社内LT大会 / 2021-06-23
Takuma Yamamoto
July 11, 2021
Tweet
Share
More Decks by Takuma Yamamoto
See All by Takuma Yamamoto
ドメイン駆動設計 勉強会 〜 リポジトリ編 〜 / 2024-04-23
tamago3keran
0
47
スナックミーの開発はワクワクだらけ! / 2024-04-05
tamago3keran
0
120
アウトプットのハードルを下げた! / 2024-03-25
tamago3keran
0
340
ドメイン駆動設計 勉強会 〜 ドメインサービス編 〜 / 2024-03-05
tamago3keran
0
63
ドメイン駆動設計 勉強会 〜 エンティティ編 〜 / 2024-02-20
tamago3keran
0
66
ドメイン駆動設計 勉強会 〜 値オブジェクト編 〜 / 2024-02-06
tamago3keran
1
1.1k
スカウト返信率を倍にするためにやったこと / 2024-01-29
tamago3keran
2
920
Rails 経験者が FastAPI 本を読んで感じたこと / 2023-11-28
tamago3keran
0
1.1k
アウトプットのモチベーションはみんな違ってみんな良い! / 2023-10-06
tamago3keran
0
1.1k
Other Decks in Programming
See All in Programming
利用者視点で考える、イテレータとの上手な付き合い方
syumai
4
230
pytest プラグインを開発して DRY に自動テストを書こう
inuatsu
2
260
Kubernetes上でOracle_Databaseの運用を楽にするOraOperatorの紹介
nnaka2992
0
150
tsconfig.jsonの最近の新機能 ファイルパス編
uhyo
6
1.7k
Micro Frontends for Java Microservices - dev2next 2024
mraible
PRO
0
210
AWS認定資格を受験するにあたり、気づいたこと・実践していたことのまとめ
satoshi256kbyte
2
130
ACES Meet におけるリリース作業改善の取り組み
fukucheee
0
130
Quarto Clean Theme
nicetak
0
220
perl for shell, awk and sed programmers
mackee
1
690
Pythonによるイベントソーシングへの挑戦と現状に対する考察 / Challenging Event Sourcing with Python and Reflections on the Current State
nrslib
3
1.2k
Kotlin Multiplatform at Stable and Beyond (Kotlin Vienna, October 2024)
zsmb
2
360
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
9
1.2k
Featured
See All Featured
10 Git Anti Patterns You Should be Aware of
lemiorhan
653
59k
Pencils Down: Stop Designing & Start Developing
hursman
119
11k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
131
32k
The Brand Is Dead. Long Live the Brand.
mthomps
53
38k
The Invisible Customer
myddelton
119
13k
Ruby is Unlike a Banana
tanoku
96
11k
How STYLIGHT went responsive
nonsquared
95
5.1k
Git: the NoSQL Database
bkeepers
PRO
425
64k
Adopting Sorbet at Scale
ufuk
73
9k
It's Worth the Effort
3n
183
27k
jQuery: Nuts, Bolts and Bling
dougneiner
61
7.5k
Creatively Recalculating Your Daily Design Routine
revolveconf
217
12k
Transcript
confidential ©KitchHike Inc. Takuma Yamamoto 株式会社キッチハイク 2021.06.23 アプリ申請用Macマシンのクラウド化にGitHub Actionsを選んだ話
confidential ©KitchHike Inc. BIOGRAPHY あなたは誰ですか? • バックエンド: Ruby on Rails
• フロントエンド: React • アプリ: React Native 2 技術スタック SNS • https://github.com/tamago3keran • https://twitter.com/yamataku3831 • https://qiita.com/tamago3keran • サウナ • 韓流ドラマ • アニメ ... 趣味 Takuma Yamamoto Work at KitchHike, Inc. From Miyazaki
confidential ©KitchHike Inc. TODAY’s TOPIC 3 アプリ申請作業の自動化に GitHub Actions を選んだ理由を紹介
confidential ©KitchHike Inc. WWDC21 開催! BACKGROUND 1 4
confidential ©KitchHike Inc. Xcode Cloud を発表! BACKGROUND 2 5
confidential ©KitchHike Inc. What is Xcode Cloud? そもそも Xcode Cloud
とは何ですか? 6
confidential ©KitchHike Inc. Xcode Cloud is a continuous integration and
delivery service built into Xcode and designed expressly for Apple developers. INTRODUCTION 1 7 Apple 製の CI/CD ツール Xcodeに組み込まれ、Appleの開発者のために特 別に設計された CI/CD ツールのことです。 引用元: https://developer.apple.com/xcode-cloud/
confidential ©KitchHike Inc. Xcode Cloud 以外にも多くの CI/CD ツールが存在 INTRODUCTION 2
8 Bitrise Visual Studio App Center GitHub Actions CircleCI
confidential ©KitchHike Inc. Why did you research tools? なぜ CI/CD
ツールを調査するようになったのか? 9
confidential ©KitchHike Inc. セキュリティ面を考慮してオフィスのマシンでのみ申請 BACKGROUND 3 10 アプリ申請するためには「証明書」が保存されている端末で Archive する必要があります。ただし、証
明書を開発メンバー全員が所持していると、流出するリスクを高めてしまいます。よって、「証明書」 をオフィスのマシンにだけ保存するようにしました。 それに伴って、アプリ申請がオフィスのマシンに依存するような状態になっていました。
confidential ©KitchHike Inc. 出社せずともアプリリリースする必要が出てきた BACKGROUND 4 11 コロナがきっかけで出社しづらくなり、オフィスに足を運ばなくてもアプリ申請できる状態にする必要 がありました。だから、 CI/CD
ツールを調査するようになりました。
confidential ©KitchHike Inc. どのサービスを選択するのがよいのだろうか? 12 Which service should we choose?
confidential ©KitchHike Inc. SERVICE 1 Bitrise 料金体系 定額制 プラン Hobby
Tier 無料 Solo Developer 年払い: $36 / month 月払い: $40 / month Org Standard 年払い: $90 / month 月払い: $100 / month ビルドマシンの性能 vCPU: 2 Memory: 4GiB 学習コスト 低 ( GUIで設定可能 ) https://www.bitrise.io/pricing 13
confidential ©KitchHike Inc. SERVICE 2 Visual Studio App Center 料金体系
定額制 プラン Free 無料 ( 毎月240分のビルド時間付与 ) 月額 $ 40 / month ( ビルド時間無制限 ) ビルドマシンの性能 不明 学習コスト 低 ( GUIで設定可能 ) https://visualstudio.microsoft.com/app-center/pricing/ 14
confidential ©KitchHike Inc. SERVICE 3 CircleCI 料金体系 定額制 + 従量課金制
プラン Free 無料 ( 毎週 2,500 credits 付与 ) Perfomance $ 30 / month + 使用分 ( 毎月 50,000 credits 付与 ) ビルドマシンの性能 Free macOS 使用不可 Perfomance vCPU: 2 Memory: 4GiB Credit / Min: 10 学習コスト 中 ( fastlane の理解 ) https://circleci.com/pricing/ 15
confidential ©KitchHike Inc. SERVICE 4 GitHub Actions 料金体系 従量課金制 プラン
Free 毎月200分まで無料 ( 超過分は $0.08 / 分で課金) Pro 毎月300分まで無料 ( 超過分は $0.08 / 分で課金) Team 毎月300分まで無料 ( 超過分は $0.08 / 分で課金) ビルドマシンの性能 vCPU: 3 Memory: 14GiB 学習コスト 高 ( fastlane / GitHub Actions の理 解 ) https://github.com/features/actions 16
confidential ©KitchHike Inc. なぜ GitHub Actions を選んだのか? 17 Why did
we choose GitHub Actions?
confidential ©KitchHike Inc. ビルド1回にかけられる時間に制限がない REASON 1 18 無料プランがあり、GUIで設定できる 10分 30分
1回あたりのビルド時間に制限がある タイムアウトで ビルドが失敗 しかし... ※ 有料プランにすることで1回のビルドにかけられる時間が無制限になるサービスもあります。 無料プランでも、1回あたりのビルド時間が無制限 タイムアウトでビルドが失敗することがない
confidential ©KitchHike Inc. ビルドマシンの性能が良い REASON 2 19 2vCPU 4GiB ビルド完了までに時間がかかりすぎる
Memory 3vCPU 13GiB Memory 比較したサービスの中で最もマシン性能が良い 短い時間でビルド完了する アプリ申請を短い時間で完了できる しかし... 有料プランなら タイムアウトせずビルドが成功する 申請するまでに 時間がかかる
confidential ©KitchHike Inc. 最も安い費用で運用できる REASON 3 20 $40/月 ビルド可能なプランは費用がかかる ※
毎日リリースするようなチームでは、定額プランを利用した方が安く済む場合もあると思います。 ※現状のキッチハイクアプリの場合 しかし... 有料プランなら タイムアウトせずビルドが成功する 無料と比較する と高く感じる ビルドマシンの性能が高いこともあり、 無料枠(200分/月)で十分まかなえる 無料枠を越えても使った分だけの支払い
confidential ©KitchHike Inc. Summary アプリ申請作業の自動化に GitHub Actions を選んだ理由のまとめ 21
confidential ©KitchHike Inc. アプリ申請作業の自動化に GitHub Actions を選んだ理由をまとめると... SUMMARY 22 キッチハイクのアプリ開発状況だと以下の観点からGitHub
Actionsが適している。 • ビルドマシンの性能が良い • ビルド1回にかけられる時間に制限がない • 最も安い費用で運用できる
confidential ©KitchHike Inc. ご静聴ありがとうございました! 23