Gitlab migration Runner registration token secret


I’m in the process of migrating my Gitlab server (version 14.8). I have another server running the same version of Gitlab Omnibus.
So far, I have restored all of my projects and I have copied and restored the gitlab-secret.json.
Now, I’m in the process of setting up the runners. The problem i’m encountering is that, the restored version, has a different registration token for the runners. Because of that I’m forced to register new runners. However, these new runners don’t seem to have access to all my projects. I suspect that is due to the fact that, being the registration token different, all the projects don’t allow this runner to connect.
I tried verifying the runner authentication with curl --request POST "" \ --form "token=<authentication_token>" . The response I receive is 403 (invalid).
The same command works correctly in the original version.

I double checked the gitlab-secrets.json file and I can see that there is no entry for the gitlab registration token.
Is there a way to add that to the secrets json? Is there another way to go about this?

Thanks in advance for the support, any advice would be really helpful!

You can register runners at the instance, group and project level. These all use their own registration token. Check what level you registered your runners at and then check those runners have actually registered at the expected level. See the scope of runners documentation for details.

If the runner(s) are properly registered at their expected levels, they should be picking up jobs unless

  1. group or project settings actively disable those runners. Projects and groups can disable instance runners for example.
  2. runners are configured so they only pick up tagged jobs. This would prevent any jobs that do not declare any tag(s) from getting picked up.
  3. runner tags do not match any of the tags that jobs specify

BTW and TTBOMK, gitlab-secrets.json does not play a role in any of this.

Hope this helps

Hello @paddy-hack, thanks for your reply. I figured out what was wrong with my setup. The issue was in the DNS, as i’m currently migrating, I had to setup the correct /etc/hosts IPs. The requests were sent to the gitlab server which was live at that moment. Also because of that the docker instances in my gitlab runner needed to run with network=host setup.