Thursday, April 24, 2008

TeamCity Plugins Repository is Emerging

We are starting to build TeamCity plugin repository. Well, "repository" is too big a word for it at this time, but more entries are under way.

The idea is not only to list a plugin, but provide plugin documentation space, host plugin repository and bug tracker, and (the most interesting part) to build the plugin against the latest released/current trunk TeamCity versions.

We've set this up for several our plugins (build with TeamCity trunk version is a pending task), and plan to provide the same services to the third-party plugins.

So if you want to write a plugin, or already have one that can be of interest to other users, just let us know.

Wednesday, April 23, 2008

Getting test results faster

Have you ever paid attention on how fast you can get results of building your changes from TeamCity? I mean if a test failed you do not need to wait while the whole build finishes, TeamCity will notify you immediately. You can say "So what? It's quite natural to expect this feature from an automated build system". I agree, but show me any other continuous integration server which offers similar functionality. Most of them (if not all) require you to specify paths to test results files (usually in JUnit format) and in turn it means that you have to wait while build finishes (what if tests in your build run 40 minutes?). Not to mention that sometimes you have to modify your build script to produce test results in required format.

This is a great feature and we are going to improve it further. First of all we are going to force your build to run recently failed tests before any other tests. This should help you if you are fixing broken tests. TeamCity will try to do this transparently, but in some cases (for example, if you have your own test runner) it can't be done. For these cases we'll provide list of tests via property or via file and you will be able to modify your test runner to support this feature too.

At the moment this feature is already working on our internal server. Currently it is supported for Ant and IPR runners and for JUnit and TestNG frameworks. We hope to add support for other frameworks and runners before the first EAP.

A further improvement would be to run new and modified tests first. This should be especially useful for personal builds. Since TeamCity tracks changes for every build we can determine whether modified files are test cases or not. We do not have a working code for this feature yet but we hope to add it to the first EAP too.

By the way we are going to release first EAP of Calcutta (TeamCity 4.0 codename) at the next week. I hope you'll find time to install it and try these new features.

Tuesday, April 1, 2008

The fools day TeamCity plugin

We've worked hard to create a new very cool plugin for you (even the 3.1.1 release had not taken so much efforts ;). If you have administrative rights on your TeamCity server then you have unique ability to make fun of your colleagues! Just install this plugin and enable it on the server configuration page. I do not want to describe its abilities here, all I can tell is that "jokes mode" is enabled when browser losts focus... Also if you understand JavaScript take a look at joke.js file, it contains some notes about plugin abilities.

Feel free to extend and improve it :)