So I have a task to come up with a method of blocking all jobs in a teamcity environment with one or two steps ( we currently have almost a dozen environments) I've come up with two possible methods which will require either adding a new build step or agent requirement to every job (we've got hundreds)
We're on teamcity 9 now so I've exported the config in git and have been poking about. I reckon I can cobble together a script to run through and inject the required config blocks in the right places, the only thing I'm wondering about is the ID. Depending on which method I use, I'll either need a new runner ID or extension ID. It's trivial to do a search, find the highest existing one and increment from there.
But I'm wondering about the effects of just making these IDs up myself, is that OK? Do they need to come from somewhere else?
I also notice that the IDs aren't unique, it looks like if you copy a job, then the copy will have the same runner and extension IDs, that's strongly suggesting that it is OK to just make them up. So basically I'm wondering what the ID numbers are for if they're not for identification and not unique.