Slide 1

Slide 1 text

Meet Xcode Cloud etc. 要約と所感 2021/06/25 Swift愛好会 jollyjoester

Slide 2

Slide 2 text

> With Xcode Cloud, you can adopt continuous integration and delivery (CI/CD), a standard practice to monitor, ensure, and improve the quality of your apps and frameworks. Xcode CloudでCI/CDができるよ(意訳) (Xcode 13から使えるよ。Betaだよ) Xcode Cloudとは

Slide 3

Slide 3 text

CIサービス Continuous Integration and Delivery ● 継続的インテグレーション、継続的デリバリー ● Testとか自動化して常に品質を保ちつつ、いつでもリリースできる状態にしとこうな ということ(雑なサマリ) CI/CDとは Clone Build Test Analyze Archive GitHub Push TestFlight App Store Connet 通知 開発者 Slack 配布 リリース 例:

Slide 4

Slide 4 text

CIサービス→それ、Xcode Cloudでできるで! Continuous Integration and Delivery ● 継続的インテグレーション、継続的デリバリー ● Testとか自動化して常に品質を保ちつつ、いつでもリリースできる状態にしとこうな ということ(雑なサマリ) CI/CD with Xcode Cloud Clone Build Test Analyze Archive GitHub Push TestFlight App Store Connet 通知 開発者 Slack 配布 リリース 例:

Slide 5

Slide 5 text

Xcode Cloudの仕組み Apple Cloud Infrastructure Xcode App Store Connect 操作 トリガー ● git push ● 定期実行 ● ・・・ 実行 workflow 設定

Slide 6

Slide 6 text

Xcode Cloudの機能 ● 環境変数・シークレット ○ staging/productionでAPIの向け先変えるとか、他サービスの secret使うとか ○ Xcode Cloudが提供する環境変数もいっぱいあるで( CIのアクションが `archive` だったらなど) ● カスタムスクリプト ○ Post-clone, Pre-Xcodebuild, Post-XcodebuildでShell走らせられるよ ■ projectに`ci_scripts` ってフォルダ作って指定の名前 (`ci_post_clone.sh`)のスクリプト置くと 走るで ○ 環境変数使えるで ● Private repositoryの追加 ○ 簡単にできるで ○ GitHub, Bitbucket, Self-hostedなprivate GitHub repogitoryとか対応しているで ● Webhook ○ Webhookでいろいろ拡張できるよ ○ 1 Product 5個まで使えるで ○ JSONでpayload受け取れるよ ○ AWS LambdaでSwiftでWebhook扱う例とか紹介されてたよ

Slide 7

Slide 7 text

Xcode Cloudに期待すること CI周りでこれだけ覚えれば(普通は)OKというのを実現して欲しい ● サービスごとに使い方覚えるのがめんどいw CI環境が新しいmacOS, Xcodeなどに素早く適応して欲しい ● Xcode betaでCI環境ぶっ壊れるとか早めに検知したい Appleの認証などとの相性の良さ ● 2FAとかめんどくさくありませんように 情報Security ● CIサービスにはいろいろな情報を渡さなければいけない。どうせ渡すならAppleだ けに絞りたい

Slide 8

Slide 8 text

Xcode Cloudへの懸念 価格 ● 秋頃発表だって。 安定性 ● AppleとしてはCIサービスの経験はそんなないはずなので頑張って!

Slide 9

Slide 9 text

その他知りたいこと Workflowの管理の仕方 ● GUIだけじゃなくてas a codeをして管理できるかな? ○ JSONでできるらしい by loveeさん Xcode Cloud enterprise ● Self-hostedなXcode Cloudは今のところないみたい ○ c.f. Xcode cloud enterprise version

Slide 10

Slide 10 text

所感 普通の開発において必要なCI機能は揃ってそうなので積極的に使っていきたい。 Xcode、Xcode Cloud、App Store Connectなど含めて広い範囲での開発環境が急に 進化してきてて楽しみ!

Slide 11

Slide 11 text

Learn more about Xcode Cloud WWDC21動画 ● Meet Xcode Cloud ● Explore Xcode Cloud workflows ● Customize your advanced Xcode Cloud workflows ↑どれも難しくないし、操作のイメージとかイメージ湧くのでこの順番で見とくと良い Document ● Xcode Cloud