Failure to register multiple Windows-based runners with the same authentication token
Summary
Steps to reproduce
.gitlab-ci.yml
- Create a new project runner definition and copy the authentication token.
- Create two identical Windows 10 machines with gitlab-runner installed.
- The machines differ only in their MAC-address, IP-address and their Windows MachineID (in fact, we removed the MachineID).
- Register one Windows machine, using the authentication token.
- Register the second Windows machine, using the same authentication token.
- Check the Runner page on the GitLab server.
Actual behavior
- After the registration of the first Windows machine, the Runner page on the server shows one runner
- After clicking on the runner's link, it shows the correct data of the first runner.
- After the registration of the second Windows machine, the Runner page on the server still shows just one runner.
- After clicking on the runner's link, it shows the correct data of the second runner.
- The first runner is nowhere to be found (it's not clear whether it's active or not).
Expected behavior
- After the registration of the first Windows machine, the Runner page on the server shows one runner
- After clicking on the runner's link, it show the correct data of the first runner.
- After the registration of the second Windows machine, the Runner page on the server shows two runners.
- After clicking on each of the runner's links, it shows the correct data of that runner.
Relevant logs and/or screenshots
Note that the second registration effectively overwrites the first. I also noticed that the "Name" field of the registration is empty, while it is set in the TOML file and is correct. You can also see that the system number 695 is present in both TOML files. Final note: the ".runner_system_id" file content is different for both systems.
Environment description
config.toml contents
Used GitLab Runner version
16.8.0
Possible fixes
For now we keep using the old-style registration.