iCloud container name can contain variables, for example: iCloud.$(CFBundleIdentifier). The code checks if project entitlements mapped to a capability are present in the App ID on Developer Portal. The iCloud containers are a special case, where the exact container is checked for existence in the App ID. If does not exist, the autoprov step fails as can not create iCloud containers at the moment.
I only expand this specific variable (CFBundleIdentifier) for now.
Also if the profile is not valid because of missing iCloud container, now will not fail, but will regenerate the profile.
Added additional logging of the reason if the profile needs to be regenerated, as there were multiple issues with it recently:
(fixed previously) The expiration was checked inversely
(This PR fixes it) Disabled devices on Developer Portal cause the profile to be always regenerated. Fixed by listing enabled devices only, to prevent profile regeneration as disabled devices are not added to profiles.
https://bitrise.atlassian.net/browse/STEP-260
iCloud container name can contain variables, for example:
iCloud.$(CFBundleIdentifier)
. The code checks if project entitlements mapped to a capability are present in the App ID on Developer Portal. The iCloud containers are a special case, where the exact container is checked for existence in the App ID. If does not exist, the autoprov step fails as can not create iCloud containers at the moment.I only expand this specific variable (CFBundleIdentifier) for now. Also if the profile is not valid because of missing iCloud container, now will not fail, but will regenerate the profile.
Added additional logging of the reason if the profile needs to be regenerated, as there were multiple issues with it recently:
Example entitlements file for reference: