We've started to use XCode bots for CI with some success. Due to the presence of libraries and pods we have some pre and post triggers that invokes cocoapods, crashlytics etc.
Is there a way to persist the bots to source control so that if the server is reinstalled or moved to a different machine, I don't need to recreate the bot and the trigger scripts?
Apart from the trigger scripts, there are git repos that need to be connected to, verified, credentialled etc.
(I know I can create bash scripts in the source folder and invoke them however the invoking step would still need to be added)
Xcode bots are stored in a database in Xcode Server. Even though you create them locally, they are stored on the Server in /Library/Developer/XcodeServer/Database
More information dissecting how Xcode bots and server work can be found here Pretty informative look underneath.
They claim that you can hook into the api yourself from the current version of server (4.x), although apple has announced the ability to that in the next version OSX Server 5.0