How to use bitrise to test macOS app with fastlane #5
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
bitrise.io supports macOS app, not only iOS. But there is less document than iOS world, especially about signing.
π Related documentation
π» My environments
π° Signing problem
fastlane scan
with default settings is success at local machine, but it is failed at bitrise.io by signing certificate error:This problem happens because Mac Developer certificate is tied to your machine, not CI machine.
π Solution
Use Developer ID Application certification explicitly to solve this problem.
Step 1: Use Developer ID Application
At general tab of project setting, disable automatic signing and use "Developer ID Application" for release:
Use same setting for Tests target.
Step 2: Upload private key to bitrise
Export "Developer ID Application" certificate from Xcode accounts preference:
Set strong enough password:
Upload exported p12 file to bitrise in the app's Workflow Editor, and set password:
Step 3: Run test with release configuration
Run tests with release configuration.
If you uses fastlane scan, write Scanfile like:
Step 4: Setup bitrise to use fastlane
π· Protip
Workaround: "code object is not signed at all" error
Sometime,
codesign
command failed with "code object is not signed at all" error.I don't understand detail, but Stack Overflow recommends to use
--deep
flags and solve this.Enable automatic signing at development
Set
Code signing style
at build settings: