What’s New
in TeamCity 2018.2

TeamCity 2018.2 brings you full support for GitHub pull requests, a secondary node setup for increased scalability, direct integration with the plugin repository, automatic assigning of investigations, screenshots in test results, and Kotlin DSL preview for settings.

Increase scalability with a secondary TeamCity node

The secondary TeamCity node is designed to take the load off the main TeamCity server by taking over the task of collecting and checking for changes from the Version Control Systems. Outsourcing the collecting of VCS changes to the secondary node thus increases the scalability of the whole installation. It is also possible to use the secondary node for a high availability setup.

Replay
Replay
  • Polling
  • Commit Hook

Build GitHub pull requests

TeamCity now extends its support for GitHub pull requests. Filter the pull requests by author and limit it to internal or external collaborators, or open it for everyone. There is also the option to filter the pull requests by target branch.

Improved experience for working with plugins

Install from the plugin repository

You can now browse and install plugins in TeamCity directly from the JetBrains plugin repository.

Hassle-free plugin development

Similarly, when developing a plugin for TeamCity, there is no need to restart the server anymore.

No server restart

Once a plugin is installed from the plugin repository, you no longer need to restart the TeamCity server for it to be applied.

Add screenshots in test results

TeamCity 2018.2 lets you add screenshots and other test data, such as links, artifacts, logs, and numeric values, to the test results. These will be displayed natively in the test details section of the UI.

Preview settings in Kotlin DSL

Unsure how best to describe a setting in the Kotlin DSL format? TeamCity now automatically generates DSL code for all your settings and lets you preview it in the admin UI. Handy for learning DSL format or for just copying parts of DSL to insert into already existing settings.kts file.

Assign investigations automatically

You can now let TeamCity suggest or automatically assign investigations to team members based on a number of heuristics. That way the person who most likely broke a build will receive a notification to investigate the failure.

Multiple NuGet feeds

TeamCity 2018.2 lets you specify multiple NuGet feeds to be used by builds in a project and all its subprojects. It also introduces support for NuGet Server API v3.

There is more to this release! Find out about the other new features.

Learn about TeamCity 2018.1

TeamCity Professional is FREE

Up to 100 build configurations and 3 concurrent builds. No user or time limits. Fully featured.

Welcome new Kotlin DSL

Kotlin DSL has been significantly reworked and improved and now allows simpler usage, portability, and creation of projects from just one file.

Simple

The format of the DSL has been simplified. TeamCity no longer requires uuid and project IDs, which makes the code simpler and more readable. As an example, this is all the code you would need for a basic “Hello world!” project in TeamCity:

All in one

One .teamcity/settings.kts file is now all you need to describe the project settings.

Portable

Kotlin DSL scripts are now server and project independent, which means you can share the same script between different servers or even projects on the same server. All you need to do is to check it into the repository.

Create from URL

When creating a project in TeamCity, just point it to the repository with your .teamcity/settings.kts file and TeamCity will automatically create the project with all the required settings and build configurations, as described in code.

Learn More about Kotlin DSL

High Availability

Spin up a High Availability TeamCity installation with the new read-only server mode. The read-only server has access to the database and the data directory, and in the event of the main server becoming unavailable, will accept all the requests and allow read access to the builds, artifacts, etc. Handy for running seamless server upgrades or during unplanned downtime.

IDE Plugin
User
Build Agents
Proxy
TC Main Server
TC Main Server
TC Read-Only Server
TC Read-Only Server
Database
NAS Data Directory
  • Main Server is Up
  • Mains Server is Down

Revamped Docker support

Docker support has been significantly improved:

  • Docker wrapper now supports .NET CLI and PowerShell runners.
  • build, push, and other Docker commands are now available directly in the new Docker runner, which replaces the old Docker Build Runner.

Bundled Amazon S3 artifact storage

TeamCity 2018.1 comes with built-in Amazon S3 support. Storing, uploading, downloading, and removing artifacts from S3 is now integrated natively and can be done via the TeamCity UI. The integration handles the dependencies and clean-up so that users wouldn’t even need to know that S3 is under the hood.

There is more to this release! Find out about the other new features.

Learn about TeamCity 2017.2

100 reasons to upgrade

In 2017.2, we give you ONE HUNDRED free build configurations in the Professional version!

Essentially, this is making TeamCity free for many more users and even decent-sized teams. Users of the Professional version can now get real benefit from some of TeamCity’s more advanced features – snapshot dependencies, composite builds, and configuration as code (Kotlin DSL), just to name a few.

So if you are a TeamCity Professional user, stop reading this and go upgrade your server to get your limits bumped up to 100 build configurations!

Docker all the way

TeamCity 2017.2 significantly ramps up Docker support.

Docker-specific build runners
  • Docker Build Runner. Build Docker images as a separate build step. If TeamCity detects a Dockerfile in your VCS repository, it will automatically offer you this runner in the list of build steps.
  • Docker Compose Runner. Launches Docker Compose build services as the build begins, and shuts them down when the build is finished.
  • Docker Wrapper. As an extension to other runners (Gradle, Maven, Ant, and Command Line) lets you run a build step within a specified Docker container.
Docker support build feature

See the information about all the Docker-related operations and events in your build on a dedicated Docker tab, by adding the Docker support build feature.

This also lets you:

  • Clean up all the images published by the build.
  • Create a Docker registry connection. When this is done, your build agent will automatically log in to the registry before the build and log out after it’s finished.

.NET CLI support

TeamCity 2017.2 extends its support for the .NET CLI toolchain to building .NET Core projects. The highly popular .NET CLI plugin has been bundled and now provides the simulated behavior of the dotnet command out of the box.

Here is what it brings:

  • Dedicated .NET CLI build runner
  • Automatic discovery of build steps when given the URL of your repository
  • Detection of .NET CLI on the build
  • Hierarchical build log
  • Real-time reporting of tests, compilation errors, and other problems
  • Code coverage powered by JetBrains dotCover

Composite builds

TeamCity adds a new build configuration type called Composite Build. It aggregates results from several other builds connected via snapshot dependencies and presents them in a single build. See the progress of the whole chain in one place, as well as failed tests, build problem notifications, and artifacts.

Deployment builds

Deploying from TeamCity just got easier.

TeamCity 2017.2 allows you to mark build configurations as deployments. The builds they depend on will then get the dedicated Deployments section on the build results page of that build, allowing you to quickly deploy the build.

Automatic upgrade

Upgrading TeamCity is now a piece of cake – TeamCity detects a new version when it comes out and notifies the system administrator. It provides a list of possible options, checks your license compatibility, and lets you download the distribution package and perform the auto-upgrade.

Kotlin DSL improvements: editable UI

Enabling Kotlin DSL for projects doesn’t switch the admin UI to a read-only mode anymore. Project and build configuration settings stay editable and available for changes. Any change in the UI will be synchronized with the Kotlin settings repository, and vice versa.

Default and multiple templates

It is now possible to set up a default build configuration template for a project. Propagate changes to all the build configurations in the project by changing just one template. Attaching a build configuration to multiple templates at a time has also been added.

Improved plugin management

TeamCity 2017.2 provides dedicated options to manage your list of plugins. Disable or delete your plugins in the UI, and upload new ones. When uploading a plugin, TeamCity will offer a server restart from the UI.

Restart from the UI

Restarting the server is now possible right from TeamCity’s administration interface.