James
James

Reputation: 3555

How to update or add an Environment Variable to a TeamCity agent

TeamCity agent's show a list of "Environment Variables" under Agent Parameters but I cannot get them to update. I've added environment variables to my agent operating system, but cannot get them to refresh. I've tried restarting the agent and disabling and re-enabling the agent.

Upvotes: 36

Views: 38127

Answers (2)

James
James

Reputation: 3555

The TeamCity agent doesn't actually read environment variables from the OS. Instead it reads them from the buildAgent/conf/buildAgent.properties file on your agent machine. Down at the bottom of this file you'll see instructions on how to add new variables. Something like this:

# Environment Variables
#env.exampleEnvVar=example Env Value
env.GRADLE_HOME=/Frameworks/gradle-2.9

Once you've done this, switch to the command prompt on your agent machine, and execute something like this:

./agent.sh stop
./agent.sh start

Obviously OS dependent. There is a .bat file there for Windows.

That should get your environment variables showing up in TeamCity.

Upvotes: 42

EM0
EM0

Reputation: 6327

Just tried it in TeamCity 2017.2.1 and the machine-level environment variables are picked up by TeamCity build agents (as well as the ones in buildAgent.properties), so it looks like this has been fixed.

Upvotes: 9

Related Questions