Have runner use just config.toml or command line options to better suit automation
Description
I might be getting messed up here, but the workflow as I see it is this.
Start runner from commandline -> edit the config.toml for global options
.
So for automation I can't just start it from the commandline which could be done easily with systemd because global options like concurrency aren't available.
I can't start it with a config.toml either because the runner token is created on the fly and passed in to the config.toml.
This leaves us in a situation where either we have to write some funky sed statements to edit the config.toml after the it's been created by the register command OR somehow get the runner tokens and again do some search replace magic to insert them to our config.toml.
Proposal
Either:
gitlab-runner -c config.toml #or similar to register/start all runners in the config file
runner tokens should be abstracted from the config file, maybe in a secrets file etc.
or
gliab-runner --global-options [concurrency 10 ] # or similar maybe using env vars.
I might well have missed something and this feature is already available but it's not clear from the docs how you'd go about doing this.
EDIT: AFAIK Both these routes are fine for the initial registration, however on an update the commandline options don't work (I assume because it's already been registered). So currently the only method of updating the runner that I can find is to go in and edit the config.toml. Again this is fine from a automation standpoint if it weren't for the fact that the runner token is automatically generated which plays havoc with templating.
Links to related issues and merge requests / references
Please paste a link of the related issues or/and merge requests