apple signing: App Group association fails early under automatic signing too (API capability + newest profile, steps and deep link, exit before the archive); console plan/verify apple-app-group
This commit is contained in:
parent
d978bb7a8b
commit
304407e523
20 changed files with 590 additions and 60 deletions
|
|
@ -2,6 +2,7 @@
|
|||
// storebound console verify <form> [--from <file|->] [--from-text <file|->] [--json]
|
||||
// --from takes the JSON of the plan's verify.capture snippet (input states: aria-checked, checked, aria-selected) or page text.
|
||||
// storebound console verify play-app-record --url <url after Create app> [--write]
|
||||
// storebound console verify apple-app-group [--bundle-id <id>] (API: the App Groups on the App ID's newest readable profile)
|
||||
// apple-app-privacy: the page text of the App Privacy page (the Data Types section's per-type summaries; the App Store
|
||||
// Connect API has no App Privacy endpoint). play-app-record: the JSON of the plan's capture snippet (input states) or
|
||||
// the page text. play-content-rating, play-target-audience: the summary page text. play-app-content: the plan's
|
||||
|
|
@ -43,6 +44,21 @@ export async function run(ctx: Ctx): Promise<void> {
|
|||
const { readyFromApi } = await import('../play/publish-ready');
|
||||
const { verifyPublishChangesApi } = await import('../lib/console-verify');
|
||||
r = verifyPublishChangesApi(await readyFromApi(root, config));
|
||||
} else if (form === 'apple-app-group') {
|
||||
const { discoverTargets, readGroupEvidence } = await import('../apple/signing');
|
||||
const { appGroupVerdicts } = await import('../lib/targets');
|
||||
const { verifyAppGroupsApi } = await import('../lib/console-verify');
|
||||
const want = args.get('bundle-id');
|
||||
const scan = discoverTargets(root, config);
|
||||
const targets = [...(scan.main ? [scan.main] : []), ...scan.extensions].filter(t => t.appGroups.length && (!want || t.bundleId === want));
|
||||
if (!targets.length) throw new Error(`console verify apple-app-group: no target${want ? ` "${want}"` : ''} with App Groups in the project's entitlements or apple.signing.extensions`);
|
||||
const bundleId = config.apple?.bundleId;
|
||||
if (!bundleId) throw new Error('console verify: apple.bundleId is not set');
|
||||
const { ascClient } = await import('../apple/asc');
|
||||
const c = await ascClient(root, bundleId, config.apple?.appId);
|
||||
const style = config.apple?.signing?.style ?? 'automatic';
|
||||
const evidence = await readGroupEvidence(c, targets, style, config.apple?.signing?.profileType ?? 'IOS_APP_STORE');
|
||||
r = verifyAppGroupsApi(targets, appGroupVerdicts(targets, evidence));
|
||||
} else if (form === 'apple-app-record' || form === 'apple-age-rating') {
|
||||
const bundleId = config.apple?.bundleId;
|
||||
if (!bundleId) throw new Error('console verify: apple.bundleId is not set');
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue