orta / cocoapods-keys

A key value store for storing per-developer environment and application keys
MIT License
1.55k stars 92 forks source link

Keys don't persist with xcodeserver on macOS Sierra + Xcode 8 #149

Closed niklassaers closed 8 years ago

niklassaers commented 8 years ago

Hi Orta, thanks for making cocoapods-keys! :-)

I've used it for a long while in my project, and really like it. At the moment, though, I have an issue on macOS Sierra with Xcode server. I log in as the xcodeserver user and run "pod install". It asks me for the keys I've listed, but when the pod install is done, CocoaPodsKeys/MyKeys.m doesn't contain the keys it does on my own device. When I do "pod install" again, it asks me for the keys again.

I've done a bit of prodding and I've noticed that the user xcodeserver that Xcode Server made doesn't have a login.keychain. It has /private/tmp/CI.keychain (CI is the name of the computer), and /Library/Keychains/System.keychain. It got me thinking that perhaps I should be using a keychain in a file instead.

Does that sound related? If so, is there a way I can specify what keychain to use?

Cheers -Nik

orta commented 8 years ago

Hrm, I'd recommend going with environment vars:

For example:

export MY_THING="thingy"
bundle exec pod install 

If you have a key called MY_THING it would have the value of thingy bypassing the Keychain completely. We use this for unit tests, and deployment in Eigen - so it's 👍

niklassaers commented 8 years ago

Cool, thanks, that works well. :-)