I'm having some issues with environment variables not being properly set when executing a plan that runs on a Windows 10 agent. Specifically, when I remote into the agent and test the build scripts I've set up, the environment variables don't match the results of an echo when running my plan.
I'm using cmake and cl.exe to build our project. For the compilation step, I've configured a "script task" that runs with cmd.exe. At the beginning of the script, I initialize the command line build environment by calling vcvars64.bat. This initializes a number of environment variables that are necessary for the build to succeed (%PATH%, %LIB%, %LIBPATH%, %INCLUDE% to name a few). My issue is that the environment variables don't match the results of my remote session when I call vcvars64.bat from the script task (confirmed via echo). Does anyone have any ideas as to why I am seeing this inconsistency? I would prefer to not have to manually set these environment variables as the vcvars64.bat script is supposed to automatically set them.
NOTE: I'm running the bamboo remote agent as a service, and I've ensured that it is running as the "bamboo" user as opposed to the "system" user.
Interactive and non-interactive user sessions in Windows do not behave the same way when it comes to environment variables. You need to adjust your script accordingly.
For now, I'm setting the environment variables in my task to match the environment variables for my interactive session. Would you happen to know if there's any way to have the non-interactive session behave similarly to the interactive session?
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.