The notes in the fastlane docs call this out to be run in a before_all block.
If I do that on an ubuntu android image - An exception is raised about keychain errors - it looks like there aren't guardrails if this is run in an android container image (like semaphoreci/android:29-node.)
example Fastfile:
before_all do
setup_semaphore # exceptions happen on android image if left here
end
platform :ios do
before_all do
setup_sempahore # no problem here
end
end
output:
512 | [23:04:24]: --- Step: setup_semaphore ---
514 | [23:04:24]: -----------------------------
515 | [23:04:24]: Creating temporary keychain: "semaphore_temporary_keychain".
515 | +---------------+------------------------+
517 | | Lane Context |
517 | +---------------+------------------------+
518 | | PLATFORM_NAME | android |
520 | | LANE_NAME | android capture_screen |
520 | +---------------+------------------------+
522 | [23:04:24]: Shell command exited with exit status 127 instead of 0.
Would it be possible to check the image this is being run on and safely skip trying to create the keychain if it will cause issues? Or if that's difficult - maybe just update docs for this plugin and the fastlane docs?
The notes in the fastlane docs call this out to be run in a before_all block.
If I do that on an ubuntu android image - An exception is raised about keychain errors - it looks like there aren't guardrails if this is run in an android container image (like semaphoreci/android:29-node.)
example Fastfile:
output:
Would it be possible to check the image this is being run on and safely skip trying to create the keychain if it will cause issues? Or if that's difficult - maybe just update docs for this plugin and the fastlane docs?