🌟
【2024年11月】fastlaneによるiOSアプリのビルドとTestFlightへのアップロードの自動化
こんにちは、趣味で開発している個人アプリについて、fastlaneによるiOSアプリのビルドとTestFlightへのアップロードの自動化を行いました。
何回かやったことがあるのですが、地味にハマったので残しておきます。
コード
fastlane init
して、適当に選択しつつ、自動出力されたコードに手を加えています
.env.default
APP_IDENTIFIER="" # The bundle identifier of your app
APPLE_ID="" # Your Apple Developer Portal username
ITC_TEAM_ID="" # App Store Connect Team ID
TEAM_ID=""
FASTLANE_USER=""
FASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD=""
Appfile
require 'dotenv'
Dotenv.load
app_identifier(ENV['APP_IDENTIFIER']) # The bundle identifier of your app
apple_id(ENV['APPLE_ID']) # Your Apple Developer Portal username
itc_team_id(ENV['ITC_TEAM_ID']) # App Store Connect Team ID
team_id(ENV['TEAM_ID']) # Developer Portal Team ID
# For more information about the Appfile, see:
# https://docs.fastlane.tools/advanced/#appfile
Fastfile
default_platform(:ios)
platform :ios do
before_all do
Dotenv.load
end
desc "Push a new beta build to TestFlight"
lane :beta do
increment_build_number(xcodeproj: "XXXXX.xcodeproj")
build_app(
scheme: "XXXX",
export_xcargs: "-allowProvisioningUpdates"
)
upload_to_testflight
end
end
ハマった点
error: exportArchive: No profiles for 'xxxxx' were found
-> build_app
にexport_xcargs: "-allowProvisioningUpdates"
をつける
Automatically manage signing
を有効にしているときはこれが必要っぽい
Fastlane : [altool] Error: Unable to upload archive. Failed to get authorization for username and password
-> 環境変数FASTLANE_USER
とFASTLANE_APPLE_APPLICATION_SPECIFIC_PASSWORD
を設定する
-> https://stackoverflow.com/questions/74210927/fastlane-altool-error-unable-to-upload-archive-failed-to-get-authorization/74229749#74229749
Discussion