TeamCity 8.0 Help

Creating and Editing Build Configurations

TeamCity provides several ways to create a new build configuration for a project. You can:

Creating New Build Configuration

  1. On the Administration > Projects page, select the desired project in the list. (Alternatively, select the project from the Projects popup, and click the Edit Project Settings link on the right). On the project settings page, click Create build configuration.

  2. Specify general settings for the build configuration, click "Create" then click the VCS settings button.

  3. Create/edit VCS roots and specify VCS-specific settings, then click the Add Build Step button.

  4. On the New Build Step page, configure the first build step by selecting a desired build runner from the drop-down list, and defining its settings. Click Save. You can add as many build steps as you need within one build configuration. Note, that they will be executed sequentially. In the end, the build gets the merged status and the output goes into the same build log. If some step fails, the rest are not executed.

  5. Additionally, configure build triggering options, dependencies, properties and variables and agent requirements.

Creating Build Configuration Template

Creating a build configuration template is similar to creating a new configuration. On the Project settings page, click the Create template button and proceed with configuring general settings, VCS settings and build steps.

Alternatively, you can create a build configuration template from an existing build configuration using the Extract Template option from the Actions menu at the top right corner of the screen.

Creating Build Configuration From Template

To create a build configuration based on a template:

  1. On the Project settings page locate the desired template and click its name or use Edit.

  2. Click the Create Build Configuration button on the right side-bar of the page (since TeamCity 8.1 this option is available from the Actions button at top right corner of the screen.)

  3. Specify a name for the new configuration.

  4. The settings set up in the template cannot be edited in a configuration created from this template. However, some of the can be redefined in a build configuration. Note that modifying the settings of the template itself will affect all configurations based on this template.

Alternatively, you can create a build configuration based on a template by clicking Create build configuration and selecting Create from template on the project settings page.

Creating Maven Build Configuration

To create a new build configuration automatically from the POM.xml file, on the Project settings page click Create Maven build configuration. Specify the following options:

Option

Description

POM file

Specify the POM file to load configuration data from. You can either provide an URL to the pom.xml file in a repository or upload pom.xml file from your local working PC. The URL to the POM file should be specified in the #Maven SCM URL format.

Username

Username to access the VCS repository.

Password

Password to access the VCS repository.

Goals

Provide goals for the Maven build runner to be executed with the new configuration.

Triggering

Select the check box to set automatic build triggering on snapshot dependency.

When a new Maven configuration is created, any further configuring is similar to editing an ordinary build configuration.

Refer to Maven documentation on the SCM Implementation for the following supported version control systems:

Maven SCM URL Format

The general format for a SCM Url is

scm:<scm_provider><delimiter><provider_specific_part>

As a delimiter, use either a colon ':' or, if you use a colon for one of the variables (for example, a windows path), you can use a pipe '|'.

For more information, refer to the official Maven SCM documentation page.

In TeamCity you can use simplified SCM URL format:

  • If the protocol defined in the provider-specific part unambiguously identifies the SCM-provider, then the scm:<scm_provider>: prefix of the URL can be omitted. For instance, the "scm:starteam:starteam://host.com/trunk/pom.xml" URL will be valid in the "starteam://host.com/trunk/pom.xml" format. In any other case, for example if HTTP protocol is used for SVN repository, then the SCM-provider must be specified explicitly:

  • The scm prefix can be omitted, or can be replaced with vcs prefix.

Examples of the SCM URL for Supported SCM Providers

The following URLs will be considered equal:

  • Subversion:

    scm:svn:svn://svn.company.com/project/trunk/pom.xml or vcs:svn:svn://svn.company.com/project/trunk/pom.xml or svn:svn://svn.company.com/project/trunk/pom.xml or svn://svn.company.com/project/trunk/pom.xml
  • StarTeam:

    scm:starteam:starteam://host.com/project/view/pom.xml or starteam:starteam://host.com/project/view/pom.xml or starteam://host.com/project/view/pom.xml
  • Perforce:

    scm:perforce:user@//main/myproject/pom.xml or perforce:user@//main/myproject/pom.xml
Last modified: 20 April 2023