Setting up and Running Additional Build Agents
Before you can start customizing projects and creating build configurations, you need to configure build agents.
Installing Additional Build Agents
You can install an additional build agent using any of the following installation options available:
When the newly installed agent connects to the server for the first time, it appears on the Unauthorized agents
tab under Agents
, where administrators can authorize it. This will connect the agent to the server for the first time.
Installing via Java Web Start
Make sure JDK 1.5+ is properly installed on the computer.
On the agent computer, set up the
JAVA_HOME
environment variable to point to the JDK 1.5+ installation directory.Navigate to the Agents tab in the TeamCity web UI.
Click the "Install Build Agents" link and then click "Via Java Web Start".
Follow the instructions.
Installing via a MS Windows installer
Navigate to the Agents tab in the TeamCity web UI.
Click the "Install Build Agents" link and then click MS Windows Installer link to download the installer.
Run the
agentInstaller.exe
Windows Installer and follow the installation instructions.
Installing via ZIP File
In TeamCity Web UI, navigate to the Agents tab
Click the Install Build Agents link and then click download zip file
Unzip the downloaded file into the desired directory.
Make sure that you have a JDK or JRE installed (You will need JDK (not JRE) for some build runners like Ipr runner, Inspections, and Duplicates). Please ensure that the JRE_HOME or JAVA_HOME environment variables are set (pointing to the installed JRE or JDK directory respectively) for the shell in which the agent will be started.
Navigate to the
<installation path>\conf
directory, locate the file calledbuildAgent.dist.properties
and rename it tobuildAgent.properties
.Edit the
buildAgent.properties
file to specify the TeamCity server URL and the name of the agent. Please refer to Build Agent Configuration section for more details on agent configurationUnder Linux, you may need to give execution permissions to the bin/agent.sh shell script.
Starting the Build Agent
To start the agent manually, run the following script:
for Windows: <installation path>\bin\agent.bat start
for Linux and MacOS X: <installation path>\bin\agent.sh start
Stopping the Build Agent
To stop the agent manually, run the <Agent home>\agent
script with a stop
parameter.
Use stop
to request stopping after current build finished. Use stop force
to request immediate stop (if a build is running on the agent, it will be stopped abruptly (canceled)) Under Linux, you have one more option top use: stop kill
to kill the agent process.
If the agent runs with a console attached, you may also press Ctrl+C in the console to stop the agent (if a build is running it will be canceled).
Installing and Running a Build Agent as a Windows Service
In Windows, you may want to use the build agent Windows service to allow the build agent to run without any user logged on.
To install the service:
Make sure there is no TeamCity Build Agent Service <build number> or agentd service already installed, if installed, uninstall the agent.
Check
wrapper.java.command
property in<agent home>\launcher\conf\wrapper.conf
file to contain valid path to Java executable in the JDK installation directory. You can usewrapper.java.command=../jre/bin/java
for agent installed with Windows distribution.Run the
<agent home>/bin/service.install.bat
file.
To start the service:
Run
<agent home>/bin/service.start.bat
To stop the service:
Run
<agent home>/bin/service.stop.bat
The service wrapper allows to change agent JVM parameters via the configuration file: <agent home>\launcher\conf\wrapper.conf
While using net.exe
utility, use TCBuildAgent name. For example:
net start TCBuildAgent
Using LaunchDaemons Startup Files on MacOSx
For MacOSx, TeamCity provides ability to load a build agent automatically at the system startup using LaunchDaemons plist
file.
To use LaunchDaemons plist
file:
Install build agent on Mac either via
buildAgent.zip
or via Java web-startPrepare
conf/buildAgent.properties
fileLoad build agent to LaunchDaemon via command:
sh buildAgent/bin/mac.launchd.sh load
Copy
buildAgent/bin/jetbrains.teamcity.BuildAgent.plist
to/Library/LaunchDaemons
directory for automatic startup (you may need to create this directory, if it doesn't exists)To stop build agent, run the following command:
sh buildAgent/bin/mac.launchd.sh unload
Installing Several Build Agents on the Same Machine
Several agents can be installed on a single machine. They function as separate agents and TeamCity works with them as different agents, not utilizing the fact that they share the same machine. After installing one agent you can install additional one, providing the following conditions are met:
the agents are installed in the separate directories
they have distinctive
work
andtemp
directoriesbuildAgent.properties
is Build Agent Configuration to have different values forname
andownPort
properties
Make sure, there are no build configurations that have absolute Build Checkout Directory specified (alternatively, make sure such build configurations have "Clean Checkout" option enabled and they cannot be run in parallel).
Under Windows, to install additional agents as services, modify <agent>\launcher\conf\wrapper.conf
to change wrapper.console.title
, wrapper.ntservice.name
, wrapper.ntservice.displayname
and wrapper.ntservice.description
properties to have distinct name within the computer.