Currently we are building in a shared environment that has multiple certs. We currently sign on every CI build, but we only want to sign the app when we are ready to release. It would be great if there were some mechanism to be able skip the signing step all together (as we don't have access to the keychain in every environment).
Value: The signing takes a long time and is only necessary at release time (for us). This would drastically speed up CI builds (since we sign both windows and mac on the same machine).
@worldjoe please provide a pull request because you are awesome :)
Seems like a build.option would be called for, rather than a command line flag. I will try to put together a pull request.
Easy and secure way — just unset CSC_LINK and CSC_KEY_PASSWORD in your CI build.
Something like:
- if [[ "$TRAVIS_OS_NAME" == "osx" && "$NODE_VERSION" == "4" ]]; then unset CSC_LINK && unset CSC_KEY_PASSWORD; fi
@develar even when i unset CSC_LINK and CSC_KEY_PASSWORD it still defaults to the last identity in the keychain.
unset CSC_LINK
unset CSC_KEY_PASSWORD
npm i -D
npm run build (webpack)
npm run test
npm run package-all (build -mw)
it eventually hits the
> @[email protected] package-all /Users/workspace/ci
> build -mw
Skip app dependencies rebuild because dev and app dependencies are not separated
Packaging for platform darwin x64 using electron 1.3.6 to dist/mac
Warning: Application icon is not set, default Electron icon will be used
Signing app (identity: Developer ID Application: [developername])
Error: Command failed: codesign --sign Developer ID Application: [developername] --force
@SxMShaDoW Set env CSC_IDENTITY_AUTO_DISCOVERY to false to disable auto discovery.
@develar that was the magic variable. Thanks for the _solution_. Is there any reason that is excluded from the docs?
Is there any reason that is excluded from the docs?
No. PR welcome.
Thanks for the workaround.
I would say not workaround, but solution ;) I will close issue :)
Most helpful comment
@SxMShaDoW Set env
CSC_IDENTITY_AUTO_DISCOVERYtofalseto disable auto discovery.