Early Access Program

TeamCity 2021.2 EAP3 is here

The third build of TeamCity 2021.2 Early Access Program is available for download!

TeamCity 2021.2 EAP3 brings over 70 improvements and fixes. In these release notes, we describe its most prominent new features.

TeamCity 2021.2 EAP3

Two-factor authentication

TeamCity now supports two-factor user authentication (2FA). Enabling it on your TeamCity server will grant it an extra level of security. Users will have to verify their identity in two steps: by providing their regular credentials plus by submitting disposable keys, generated on their personal devices.

2FA is disabled by default, but you can make it Optional or Mandatory on your server — in Administration | Authentication. The optional mode allows users to decide whether they want to enable 2FA for their accounts or not. The mandatory mode prevents users from accessing TeamCity without the 2FA verification. We suggest that you only enable this mode after introducing the optional mode first and giving users enough time to set up 2FA for their accounts. After the mandatory mode is enabled, existing users with no 2FA will not be able to sign in to your TeamCity server. New users will get a grace period of 1 week during which they need to enable 2FA as well.

To set up 2FA for your user account:

  1. Download and install any suitable authenticator app on your mobile device: for example, Google Authenticator or Microsoft Authenticator.
  2. In TeamCity, go to Your Profile | Two-factor Authentication.
  3. Scan the generated QR code with the authenticator app.
  4. Enter the numeric code generated by the app in TeamCity.
  5. Save the provided recovery keys to a secure place. They will be needed if you ever lose access to the authenticator.

Next time you will be signing in to TeamCity, it will prompt you to enter the confirmation code from the authenticator app.

Running builds on JetBrains Space merge requests

TeamCity can run builds on changes in pull/merge requests of different types of VCSs. In this EAP, we’ve extended this functionality to support our in-house product for team collaboration — JetBrains Space.

To use this feature in a build configuration, you need to:

  1. Add a JetBrains Space VCS root.
  2. Configure a connection to your JetBrains Space project.
    This is the same connection that is required for publishing build results back to Space. So, if you have previously configured the Commit Status Publisher feature for Space, you can use the same connection. Note that each of these features requires own set of access rights.
  3. Add the new Pull Requests feature of the JetBrains Space type:

This feature extends the branch specification of the Space root by adding merge requests to it. This way, TeamCity will be able to detect pending changes and run builds in branches of Space merge requests. The Overview of such a build will show the details of the respective MR:

If the Commit Status Publisher feature is also added to the current build configuration, TeamCity will report the build status back to Space — you will see it in the details of the related commit.

Experimental UI for change details

In each release, we replicate more and more classic TeamCity screens in our experimental UI, so its users can work within the same new interface — without being switched back to the classic mode. In EAP3, we’ve added the new Change details preview:

It has the familiar layout of the classic page, but looks more modern and works faster. It also lets you preview the details of each build, test, and problem by expanding it in the list.

Other updates

  • Since version 2021.2, TeamCity supports running builds on changes in Perforce shelved files.
    EAP2 introduced an automatic Perforce Shelve Trigger. In EAP3, we’ve added the ability to manually start personal builds on changes in shelved files. To do this, open the Run Custom Build dialog, check the run as a personal build option, and enter the ID of the target changelist.
  • Fixed an inconsistent clean-up behavior in build chains.
    Previously, builds in an artifact dependency configuration were never cleaned up if its dependent configuration had a snapshot dependency on another build and this build was set to be preserved. This included the case when the “Do not prevent clean-up” option was enabled in the respective clean-up rule. Now, the artifact dependency configuration will be cleaned up properly, according to its clean-up rules.
  • The bundled Kotlin compiler, used in TeamCity DSL, has been updated to version 1.5.
  • TeamCity now supports SSH keys of the ECDSA and ED25519 formats.
  • TeamCity now can automatically detect PowerShell in ARM64 systems by checking the recommended locations: ~/powershell and /opt/microsoft/powershell/<version>/. To add a custom location to this scope, you can set a special agent property, as described here.

See all resolved issues.

More features are on their way – stay tuned and check our roadmap for details.

Download TeamCity Morena 2021.2 EAP3 or pull the Docker image with the EAP tag. Remember to install it on a trial server as the new version changes the TeamCity data format and downgrading to the previous production version is not supported.

All our EAP releases come with a 60-day Enterprise evaluation license for an unlimited number of agents and build configurations.

You are welcome to share your feedback in our forum or issue tracker.

Happy building!

image description