Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Meet Xcode Cloud etc. 要約と所感

Meet Xcode Cloud etc. 要約と所感

集まれSwift好き!Swift愛好会スピンオフ WWDC21セッション要約会 @オンラインでの発表

https://love-swift.connpass.com/event/215687/

jollyjoester

June 25, 2021
Tweet

More Decks by jollyjoester

Other Decks in Technology

Transcript

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

    View Slide

  2. > 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とは

    View Slide

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

    View Slide

  4. 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
    配布
    リリース
    例:

    View Slide

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

    View Slide

  6. 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扱う例とか紹介されてたよ

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide

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

    View Slide