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
15
キッチハイク社内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
24
スナックミーの開発はワクワクだらけ! / 2024-04-05
tamago3keran
0
71
アウトプットのハードルを下げた! / 2024-03-25
tamago3keran
0
260
ドメイン駆動設計 勉強会 〜 ドメインサービス編 〜 / 2024-03-05
tamago3keran
0
34
ドメイン駆動設計 勉強会 〜 エンティティ編 〜 / 2024-02-20
tamago3keran
0
44
ドメイン駆動設計 勉強会 〜 値オブジェクト編 〜 / 2024-02-06
tamago3keran
1
610
スカウト返信率を倍にするためにやったこと / 2024-01-29
tamago3keran
2
780
Rails 経験者が FastAPI 本を読んで感じたこと / 2023-11-28
tamago3keran
0
600
アウトプットのモチベーションはみんな違ってみんな良い! / 2023-10-06
tamago3keran
0
880
Other Decks in Programming
See All in Programming
WebGLで始める コンピュータグラフィックス入門
heller77
0
360
TypeScriptコードの漸進的改善 / Progressive Improvement of TypeScript Code
medley
1
220
Sheets API使ってみた
toshi0383
2
170
株式会社ゼネテック
genetec
0
110
Compose-View Interop in Practice (mDevCamp 2024)
stewemetal
0
170
Deep Dive into React Stream/Serialize
mugi_uno
3
780
Native Federation: The Future of Micro Frontends in Angular
manfredsteyer
PRO
0
150
Folding Cheat Sheet #4
philipschwarz
PRO
0
110
JavaScript Closure
asoluka
0
1.7k
AppRouter Panel Talk
yosuke_furukawa
PRO
1
510
Implementing Design Systems in Swift
seyfoyun
2
510
障害対応を起点としたもっといい開発と運用のサイクル作りのためにできること / Hatena Enginner Seminar #29
polamjag
0
440
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
74
8.3k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
23
1.6k
Embracing the Ebb and Flow
colly
80
4.2k
The Language of Interfaces
destraynor
151
23k
It's Worth the Effort
3n
180
27k
No one is an island. Learnings from fostering a developers community.
thoeni
16
2.1k
Statistics for Hackers
jakevdp
790
220k
The Power of CSS Pseudo Elements
geoffreycrofte
62
5k
The Straight Up "How To Draw Better" Workshop
denniskardys
228
130k
Designing for humans not robots
tammielis
247
25k
Bootstrapping a Software Product
garrettdimon
PRO
302
110k
How STYLIGHT went responsive
nonsquared
92
4.8k
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