codemagic-ci-cd / cli-tools

Various utilities to managing Android and iOS app builds, code signing, and deployment.
https://codemagic.io/start/
GNU General Public License v3.0
235 stars 39 forks source link

Entitlements ignored when no signing data in the xcode project file. #417

Open frederikstonge opened 2 weeks ago

frederikstonge commented 2 weeks ago

I've been using your cli-tools from my azure pipeline at work, and also through your solution for my personal project for flutter.

I have not set any signing stuff in my xcode project since I wanted to use the exportoptions.plist solution you guys offer. Turns out that if I have no signing stuff in my xcode project, it skips my Entitlements, giving me an error :

"ITMS-90078: Missing Push Notification Entitlement - Your app appears to register with the Apple Push Notification service, but the app signature's entitlements do not include the 'aps-environment' entitlement. If your app uses the Apple Push Notification service, make sure your App ID is enabled for Push Notification in the Provisioning Portal, and resubmit after signing your app with a Distribution provisioning profile that includes the 'aps-environment' entitlement. Xcode does not automatically copy the aps-environment entitlement from provisioning profiles at build time. This behavior is intentional. To use this entitlement, either enable Push Notifications in the project editor's Capabilities pane, or manually add the entitlement to your entitlements file. For more information, see https://developer.apple.com/library/content/documentation/NetworkingInternet/Conceptual/RemoteNotificationsPG/HandlingRemoteNotifications.html#//apple_ref/doc/uid/TP40008194-CH6-SW1."

So two things :

  1. Does your tool maybe plan to update the project.pbxproj ?
  2. If you don't plan on doing this on your cli-tools (which I would understand), would it be a good idea to use fastlane's update_code_signing_settings on your website's pipelines?

Thank you for having this discussion with me :)