Plugins

Introducing the New TeamCity Plugin for IntelliJ IDEA

We’re excited to announce the release of the updated TeamCity plugin for IntelliJ IDEA! 🎉 You can now download it directly from JetBrains Marketplace.

Using the plugin, you can trigger TeamCity builds directly from within your IDE and test any changes before committing them to the version control system.

Why get the new plugin?

This plugin has been built from the ground up to ensure it will eventually be able to replace the existing TeamCity plugin once support for the most frequently used and requested features has been added. 

Here’s what’s new in the plugin:

  • We’ve added functionality enabling you to link TeamCity projects and build configurations to your IDE project so that you only see build configurations related to your IDE project.
  • With the help of the remote run feature, you can run build configurations on your local changes without committing them to the VCS.
  • The plugin’s tool window now contains a new Personal Builds tab where past personal builds are listed. It also shows live updates of all builds executed using the remote run feature.
  • Now it’s possible to select a build configuration and watch its build status for each commit in the VCS Log tool window.

Key benefits of this updated plugin include:

  • The ability to manually configure which TeamCity projects relate to your code, giving you more control over your builds.
  • Enhanced performance that significantly reduces lag between your actions in the IDE and the TeamCity server’s response.

We’re actively developing this plugin and planning to add even more features in upcoming releases. Your feedback is critical in shaping the tool to better meet the needs of IntelliJ IDEA developers. 

You can install both the old and new plugin versions side by side, so feel free to compare and explore!

How to get started with the TeamCity plugin for IntelliJ IDEA

Initial setup

1. Download the plugin from Marketplace.

2. Once the plugin is installed, open your project in IntelliJ IDEA and invoke the plugin’s settings using the Tools | TeamCity (Experimental) | Settings… menu.

3. Click Log In and enter the following values:

  • Server URL – the HTTP(S) address of your TeamCity server.
  • Access token – your user access token that can be generated on the Your Profile | Access Tokens page in TeamCity.

With the new plugin, you can link build configurations from TeamCity directly to the project you have open. In the old plugin, this had to be configured through VCS roots, which wasn’t an easy process.

Now, users only need to create a given configuration once, and it will be saved in the source code. Everyone who downloads the project will then have it automatically configured and available without the need to set it up themselves.

Testing your local changes

One of the key benefits of the TeamCity IDEA plugins (both old and new) is the ability to run builds with your local changes before they are pushed to a remote branch, also known as a remote run. This allows you to spot issues without breaking the build for everyone else on your team.

Here’s how you can initiate a remote run from your IDE.

1. Make some changes to your code.

2. Go to Tools | TeamCity (Experimental) | Remote Run….

3. Then, under Remote Run… | Settings…, click the target build configurations that you want to run with your local changes. The plugin will then remember your choice and run builds for the same configuration(s) on subsequent remote runs. You can configure these project-configuration relations in the plugin settings.

Link your projects to TeamCity build configurations

Setting up project-configuration relations allows you to explicitly choose which configurations should be triggered depending on the introduced changes.

TeamCity’s IntelliJ IDEA integration enables you to choose the linking scope, selecting whether you want to link the whole project or only individual project modules to your TeamCity build configurations.

1. Click Tools | TeamCity (Experimental) | Settings… to open the plugin’s settings.

2. Choose the required Linking scope value:

  • PROJECT – allows you to link the entire IntelliJ IDEA project to the target build configuration(s). This option works best when you need to trigger builds of the same configuration(s) regardless of which part of your code changed.
  • MODULE – allows you to link individual modules to corresponding build configurations. For example, you can run both Build and Test configurations if the main module of your application changes, and only the Test configuration if you edit a separate module with unit and functional tests. This mode also benefits mono repositories where each module is a separate project with its own target build configuration(s).

Share your feedback

We’re still working on making the new plugin ready to replace the old one. For the time being, you can download both plugins – they won’t interfere with each other.

Is there any functionality that you’d like us to add to the new plugin? Let us know in the comments below! We want to make the plugin as useful as possible, and your feedback can help us do exactly that.

Happy building!

image description