main branch: Use a special version of fastlane to enable Add Identifiers by marionbarker · Pull Request #286 · LoopKit/LoopWorkspace

Test

Summary
When using fastlane 2.228.0 with the addition of changes from fastlane PR 29596 and the required modifications to Fastfile:

  • Add Identifiers works as expected with one caveat
    • The Time Sensitive Notification capability is not automatically added and must be enabled manually
  • The Build Action works as expected with newly created Identifiers

The GitHub action tests are performed at the GitHub organization name: docs-test.

Confirm Error

Run Add Identifiers using main branch (3.6.1) as the default branch.

with this error:

The provided entity includes an unknown relationship - 'capability' is not a relationship on the resource 'bundleIdCapabilities' - /data/relationships/capability

Confirm Success

Test with Existing Identifiers

The Identifiers required for a successful build already exist for this test.

Run Add Identifiers using hotfix/add_identifiers as the default branch

Test with Missing Identifiers

Initial identifiers list for Loop

loop-4-identifiers

and Loop Watch App

loop-watch-2-identifiers

  1. Delete all except the Loop Identifier, which cannot be deleted.
  2. Run Add Identifiers using hotfix/add_identifiers as the default branch

Build with newly created Identifiers, with Time Sensitive Notifications

  1. Configure the App Groups capability with Loop App Group for the 3 Identifiers that require it.
  2. Delete my Distribution Certificate (this deletes all profiles at developer.apple)
  3. Before Building: check the Loop capabilities:
    • App Groups
    • HealthKit
    • NFC Tag Reading
    • Push Notifications
    • Siri
    • Time Sensitive Notifications << previously enabled, will not be added automatically for new builders
  4. Build

Remove Capabilities from Loop Identifier and run Add Identifier

Remove all capabilities from Loop Identifier and then run Add Identifier again.

  • Successful Add Identifiers
  • Confirm that only 5 of the original 6 capabilities are added back (Time Sensitive Notifications is not enabled)

Build without Time Sensitive Notifications Capability

  1. Delete Certificate (removes all profiles)
  2. Run Build action

I think the relevant error is:

Archiving workspace LoopWorkspace with scheme LoopWorkspace

with more details:

[15:27:31]: Called from Fastfile at line 131
[15:27:31]: ```
[15:27:31]:     129:	    )
[15:27:31]:     130:	
[15:27:31]:  => 131:	    gym(
[15:27:31]:     132:	      export_method: "app-store",
[15:27:31]:     133:	      scheme: "LoopWorkspace",
[15:27:31]: ```
[15:27:31]: Error building the application - see the log above

The other thing mentors can look for is the Loop profile on the https://developer.apple.com/account/resources/profiles/list page shows as Invalid.

Restore Time Sensitive Notifications Capability

  1. Enable the Time Sensitive Notifications Capability to the Loop Identifier
  2. Build