Welcome to the Inedo Forums! Check out the Forums Guide for help getting started.
If you are experiencing any issues with the forum software, please visit the Contact Form on our website and let us know!
Bad links.json file in buildmaster container
-
Hi all,
Just to inform that I discovered a "bug" in :
/usr/local/buildmaster/service/agents/linux-x64/links.json
This file contains lines like:
"fr\\Microsoft.Data.SqlClient.resources.dll": "fr\\Microsoft.Data.SqlClient.resources.dll",
From what I can understand, this file makes a mapping (link) between windows named path to Linux named path but in this case the value part should contain "/" instead of "\\"
Because of that, there is an error in server ssh connection as the file name is incorrect.
I changed the file with the help of a configMap replacing the faulty json with a correct one.
This file now contains line like:
"fr\\Microsoft.Data.SqlClient.resources.dll": "fr/Microsoft.Data.SqlClient.resources.dll",
This should be patched in a future release...
Hope this helps,
Marc
-
Hi Marc,
Thanks for the note! That file is actually a sort of cross-platform way of storing symbolic links. BuildMaster also includes all the binaries needed for agents on both Windows and Linux, including .net runtimes for all three. In order to save space we deduplicate identical binaries from the agents. We use a simple json file instead of proper symlinks because we use the same file on Windows/Linux and it's easier this way. All the paths in the file have historically used Windows path separators due to how we generate it, and we convert those in BuildMaster at runtime to the proper format.... or at least we were supposed to. At some point there was a regression added that caused this to not happen when updating from Linux.
Anyway, this will be fixed as BM-3981 in the next release :)