teamcity overwrites runner type for meta-runners found on disk Follow
I am installing meta-runners via ansible. Some of the runners are of type 'simpleRunner' and some 'gradle-runner'.
When the meta-runner is first installed and viewed in teamcity UI it has the correct type. But in some minutes later the type 'gradle-runner' gets changed to 'simpleRunner', of course causing the builds to either not work or not have a compatible agent.
What could be causing teamcity to want to change this value?
Please sign in to leave a comment.
I also see that teamcity will change the permissions on the meta-runner files. I set it to 0440 when ansible copies it to the server to try to prevent the change in type, but a moment later it has been changed to 0755. I don't really care what the permission mask it, but I can't have teamcity deciding for itself what meta-runner types should be.
I may have found the trigger. A few of the meta-runners I copied to the server had 'simpleRunner' instead of 'gradle-runner'. In that case, teamcity would change the type of all existing 'gradle-runner's to 'simpleRunner'.
After I correct those meta-runners and copied them, then teamcity stopped changing runners.
This is getting worse all the time. Teamcity rewrites the meta-runner xml files just to reorder the lines.
Hi Barry,
TeamCity shouldn't change the file contents or permissions on the meta-runner xml files. Have you tried to install your meta-runners as described in our documentation? If so, do you experience the same issue?
https://www.jetbrains.com/help/teamcity/working-with-meta-runner.html#WorkingwithMeta-Runner-InstallingMeta-Runner
Eric, the doc you mention is where I learned that I can even do this. So yes, I experience this issue using that process.
I have just this minute converted the git repo to kotlin. None of the meta-runners are even included git now.
Hi Barry,
Thank you for writing back. I just wanted to ask since you said that you were installing via Ansible, which is not something that is covered in our documentation. Maybe I can help you find your way to a solution.
As I mentioned, TeamCity does not change the contents or permissions on the meta-runner xml files. Now that you're mentioning you have things strangely missing, I'm wondering if there may be some bigger issue going on. Would it be possible to share your server log with us? It is located at <TeamCity Server home>/logs/teamcity-server.log. You can send it privately to the support team through the Submit a Request button at the top of the page.
Ansible is just the means by which the files are copied to the file system. It is no different than if I copied the files directly.
If we were to keep using the meta-runners I would be happy to help debug. But now that we converted to kotlin, we will fully convert all the meta-runner xml to kotlin. We only have a few dozen and it will be mainly a cut-n-paste job.