リリースの手間を無くす!Botを用いるリリース作業の自動化とその運用の紹介 by 川口 航平

iOSDC Japan 2020
レギュラートーク(20分)

リリースの手間を無くす!Botを用いるリリース作業の自動化とその運用の紹介

k_koheyi 川口 航平 k_koheyi

開発の現場においては,Dangerを用いて定型的な内容のレビューの自動化を行ったり,CIを用いてアプリのベータ版の配布の自動化を行うことがあります.特に,fastlaneを用いてアプリをビルドし,メタデータと共にApp Store Connectへバイナリをアップロードすることがあります.これは,手間を削減してくれるだけではなく,作業ミスをなくすという面で私達を助けてくれます.

しかし,多くの場合リリースの作業はApp Store Connectへバイナリとメタデータをアップロードするだけではありません.例えば,アプリのバージョン番号をインクリメントしたPRの作成や,そのPRを忘れずにマージする必要があります.また,当たり前ですがストアへ公開するためにはApp Store Connectからアプリをストアへ公開するボタンを押す必要があります.つまり,全てを自動化するためには,先述したアップロード以外にもやらなくてはいけない課題がまだ存在しています.

そこで,自社では機械的なリリース作業の大半をBotに任せることによってこの課題を解決しています.このBotはfastlaneを介して,App Store Connectへアップロードをするだけではなく,GitHubの操作やspaceshipの機能を使ってアプリをストアへ公開します.また,開発者の計算機の環境による影響や環境構築の手間をなくすために,チャットツールからコマンドを送信するだけでリリース作業が行えるようにしています.

このトークでは,紹介するBotに自社アプリのリリース作業を任せて半年ほど運用した経験をもとに,手動でやっていた作業をどこまで自動化することができたのか,どのように運用しているのか等を紹介します.トークはCIやfastlaneを使ったことが無い方でも聴講できるものを目指しています.