TeamCity 7.1: Control The Flow
Feature branches for Git & Mercurial
If you are a true fan of DVCS and branches workflows like Git-flow, you'll definitely appreciate the fresh branches support added in TeamCity 7.1. Our goal was to make development and building in branches as simple as possible, with minimum configuration required. And that's exactly what we've done.
Just push your branch to Git or Mercurial repository — and TeamCity will detect it and start a build on your changes.
Better Integrations and Extensibility
TeamCity edges one step closer to being the ultimate build system by adding a native Xcode runner.
Support for both Xcode 3 and Xcode 4 projects includes: automatic detection of Xcode presence on agent; on-the-fly reporting of tests started by Xcode build; and build log parsing with detection of compilation errors.
TeamCity VS-addin is now fully compatible with Visual Studio 2012 including the dark theme support.
NTLM HTTP authentication
TeamCity now supports transparent/single-sign-on NTLM HTTP authentication, as long as Windows domain authentication is used by TeamCity server and the server is installed on Windows.
EBS-based instances are now supported, in addition to images, which means that cloud-based Amazon EC2 agents can start faster when they are needed for a job.
Change log and changes pages
Updated Build Changes and Pending Changes views now have a unified look with the main Changes view, as well as the ability to filter changes by user or file path.
"Show builds" and "Show graph" options, once enabled, add build markers on the graph so you can see exactly which commits are included in which build.
Current problems & investigations
To ease project monitoring, the summary of current problems in build configurations are now shown on main overview page.
We've added a new ability to allow only manual resolution for specific investigations. This is useful when a successfully passed build or test should not immediately auto-resolve the investigation.
Investigations assigned to you are now highlighted across the TeamCity UI in a similar manner to your VCS changes.
There is a huge number of other changes and improvements. Read the full TeamCity 7.1 release notes »
TeamCity 7.0: Control The Power
Better control and visibility
Build Agent Pools
Remember the days when you had to wait for a free build agent to have your changes built and tested? Forget them. Now you can organize build agents in pools and assign them to build your project only.
You can easily distribute agent pools among divisions or project teams, and also assign them based on the priority of your building tasks.
Why not have one or two spare build agents as a Priority Lane for your VIP projects?
Use the advantages of your projects' proper module decomposition to significantly reduce the build and unit testing time.
Incremental builds is a new option in TeamCity that allows you to re-build and re-run only those modules and tests that are affected by the changes in the build.
At this time, this option only works for Maven, Gradle and IntelliJ IDEA projects.
Build failure conditions
Previously, you had an option to mark a build failed if at least one test failed. We thought that was not flexible enough, so we added more powerful failure conditions.
You can now choose to mark builds as failed on metrics change, and on specific text pattern occurrence in the build log.
Branch graphs on change log
The usability of modern distributed version control systems often becomes a matter of good tooling.
TeamCity 7.0 makes working with Git and Mercurial a pleasure, thanks to interactive branch graphs on the change log page. These graphs provide clean and accurate reading of all branches and commits.
Extended build chains support and visualization
Build chains give you a unique ability to define a sequence of builds and run them consistently, on the same source files revisions.
The main purpose of build chains is to let you define your own delivery pipelines with TeamCity in the most flexible way.
TeamCity 7.0 takes build chains support even further, providing an insightful overview of the completed and running build chains, with all the effective builds and their statuses.
If you chose not to trigger some of the builds automatically, such builds work as manual pipeline stages. Once you trigger them manually, the build sequence continues its execution.
Build parameters with custom UI
The ability to run custom builds has always been one of TeamCity's distinctive features. In TeamCity 7.0, it gets even better.
You can now specify a certain type for any custom parameter you define in either build configuration or the project. Based on this type, the Run Custom Build dialog will present a specific UI control for this parameter, be it a text field, checkbox, select, or password input.
If it's a password, it'll be kept secret and will never appear in any TeamCity files, such as logs, in unscrambled form.
When your project expands and the number of unit tests grows to several thousands, your builds can become really slow. It isn't always obvious how to make them faster or even where to start.
With TeamCity 7.0, you can trigger performance monitor, and have detailed information on hardware resources utilization at each step of your build process.
This unique feature can help you nail down many build performance problems, from reaching memory and disk throughput limits, to suboptimal multi-core CPU utilization.
Better integrations and extensibility
Great news for all .NET users and all ReSharper enthusiasts: starting with TeamCity 7.0, ReSharper Code Analysis is available on the server side as yet another inspections runner.
ReSharper Code Analysis helps you detect problems in C#, XAML, XML, and ASP.NET code.
NuGet: TeamCity as NuGet feed server and more
NuGet is a new tool for dependency management in .NET projects, which is quickly gaining well-deserved popularity.
TeamCity 7.0 comes with an extensive NuGet integration, supporting following scenarios: installing and updating NuGet packages on agents, creating, and publishing package to a given NuGet feed.
TeamCity 7.0 can also act as NuGet feed server, and trigger builds on changes in a specified NuGet package.
Rest API: Remote configuration management
Immediately after introduction, Rest API became indispensable for those integrating with TeamCity, as well as those who write automation tools and scripts.
TeamCity 7.0 brings a feature you've been waiting for so long: the ability to manage projects, build configurations and VCS roots remotely.
Updated bundled software and compatibility
TeamCity now bundles with Maven 3 in addition to Maven 2. You can always select which Maven version to use in Maven build step.
TeamCity 7.0 is now fully compatible with Subversion 1.7.
My Investigations notification
After you spend some time working with investigations in TeamCity 7.0, you'll start noticing a small counter near your name in the top right-hand corner.
Each time a new problem is assigned to you for investigation, the counter becomes orange, showing you the actual number of problems assigned. Click on the counter to instantly navigate to the My Investigations page.
It is an extremely handy tool, and a nice addition to TeamCity.
Artifact browsing within archives
As if browsing artifacts in TeamCity wasn't exciting already, now you can also browse within archives.
The importance of this feature should not be underestimated when you have to download a 1 GB archive to check if all the required files are there.
Redesigned Admin area
After thorough usability research on the Administration area of TeamCity, we've reorganized to make it more scalable and easier to use.
The items you use most are now in closer reach.
- Muting of failed tests
- Personal builds on branches (Git, Mercurial)
- Tests grouping
- Parametrized VCS roots
- Remote agent installation
- Many other improvements
- Build Steps
- New "My Changes" page
- New IntelliJ IDEA projects build engine
- Support for Gradle and Maven 3
- Lots of other improvements and fixes
- Improved support for .NET 4.0 and Maven
- Many features towards general usability
- Better server administration and configurability
- Enhanced IDE Integrations
- Stability improvements and bugfixes