Wire YatteeTopShelf into tvOS release lane

Fetch a match profile for the new stream.yattee.app.TopShelf bundle,
switch the extension target to manual signing, and map its profile in
build_app export_options so the tvOS archive signs both the main app
and the Top Shelf extension.
This commit is contained in:
Arkadiusz Fal
2026-04-17 18:35:11 +02:00
parent 9f86ff0667
commit fb14ed8ae9

View File

@@ -174,7 +174,7 @@ platform :tvos do
match( match(
type: 'appstore', type: 'appstore',
platform: 'tvos', platform: 'tvos',
app_identifier: "#{DEVELOPER_APP_IDENTIFIER}", app_identifier: ["#{DEVELOPER_APP_IDENTIFIER}", "#{DEVELOPER_APP_IDENTIFIER}.TopShelf"],
git_basic_authorization: Base64.strict_encode64(GIT_AUTHORIZATION), git_basic_authorization: Base64.strict_encode64(GIT_AUTHORIZATION),
readonly: true, readonly: true,
keychain_name: TEMP_KEYCHAIN_USER, keychain_name: TEMP_KEYCHAIN_USER,
@@ -191,6 +191,15 @@ platform :tvos do
targets: [SCHEME] targets: [SCHEME]
) )
update_code_signing_settings(
use_automatic_signing: false,
path: XCODEPROJ,
team_id: TEAM_ID,
code_sign_identity: "Apple Distribution",
profile_name: "match AppStore #{DEVELOPER_APP_IDENTIFIER}.TopShelf tvos",
targets: ["YatteeTopShelf"]
)
build_app( build_app(
scheme: SCHEME, scheme: SCHEME,
destination: "generic/platform=tvOS", destination: "generic/platform=tvOS",
@@ -199,7 +208,8 @@ platform :tvos do
export_method: "app-store", export_method: "app-store",
export_options: { export_options: {
provisioningProfiles: { provisioningProfiles: {
"#{DEVELOPER_APP_IDENTIFIER}" => "match AppStore #{DEVELOPER_APP_IDENTIFIER} tvos" "#{DEVELOPER_APP_IDENTIFIER}" => "match AppStore #{DEVELOPER_APP_IDENTIFIER} tvos",
"#{DEVELOPER_APP_IDENTIFIER}.TopShelf" => "match AppStore #{DEVELOPER_APP_IDENTIFIER}.TopShelf tvos"
} }
} }
) )