Saturday, December 18, 2010

Plugin Initiatives

After 6.0 release we've got some a bit relaxed time and while we were discussing future plans in a set of meetings we also decided to announce internal "write your own whatever you like plugin" time.

Not all team members were participating as some had urgent tasks, but we've got some new plugins rolling.
Some of them are early prototypes not ready for any public preview and some are mature enough to be called beta versions :)

Here is the list of final entrants that we had demoed today:
- day/week changes commit time visualizer (aka PunchCard)
- PowerShell runner
- Meta runner (make a new runner out of existing one allowing to customize only fixed set of options)
- customized agent lists with selected properties displayed (aka Custom Tables)
- display notifications from administrator to all TeamCity users in web UI
- Android runner
- Eclipse PDE build runner
- Scripted properties: extensible way to provide generated values to TeamCity build properties (build start time, value from a Windows registry on agent, values from TeamCity object model)

- OpenId authentication support
- trigger a build on HTTP URL resource change
- expose server model to Flex code (current usage is to draw Build Configuration dependencies graph)

Several of the plugins are already published with sources publicly available, several more will probably follow.

If you are interested in any of the mentioned topics, let us know.

I'll update this post with links to the plugin details, when available.

Do you have your plugin for TeamCity? Care to share one?

Wednesday, December 1, 2010

Winter and TeamCity 6.0 Have Just Arrived

TeamCity build #15772 is named official 6.0 release and is already sitting in the downloads waiting to be installed on your servers.

What's New pretty much summarizes the major improvements over the previous releases.

We've added lots of new features and started exploring some of the new ones that we will be improving in the following releases. And we need your feedback for the right direction of the improvements. If you love the feature and want just a small improvement or find it unusable - don't forget to let us know.

I will note several not so prominent additions to this release, that can still deserve your attention.
These are mainly of interest to build engineers and TeamCity administrators:
  • Property completion lists (those available via an icon in text fields) now list properties that come from agents: you no longer need to consult agent pages when referencing a property. In the same mood, defining agent requirements dialog is now aware of available agent properties and their values.
  • Schedule build trigger got an option not to trigger if only specific changes are pending.
  • Snapshot dependencies can now enforce a build to be run on the same agent as the one it depends from.
  • Server Diagnostics got presets for debug logging, so for basic debugging tasks you no longer need to go hack log4j config file.
If you are interested in specific issues, you can browse all 6.0 fixed issues in our YouTrack installation. Are there any filed or voted by you? (Just add "created by:me" or "voted by:me" to the query string while being logged in.) My score is 259. What is yours?

Ready to go? Do not forget to review the upgrade notes before performing the upgrade.

Wednesday, November 17, 2010

TeamCity 6.0 RC2 (build 15700): Changes Filter in Schedule Trigger and Fixes

As one more bit before the release here is a RC2 build.

It has only several noteworthy changes and some issues fixed.

A little but wanted feature still slipped in at this time: ability to make Schedule trigger skip triggering a build if the pending changes match specific pattern.

Please note that this build comes without bundled EAP license key (but you can still get one form previous EAP build if you wish :).

Want to get a preview of the almost ready TeamCity 6.0? Jump on the train.

BTW, if you happen to still have TeamCity 4.x installed, you might want to consider buying an upgrade before 6.0 comes out (you can count days now). This way you can still get upgrade discount and get 6.0 and (as with a usual license) get all following releases within a year included into the price.

Friday, November 12, 2010

TeamCity 6.0 RC1 (build 15673): .Net coverage and other improvements

As the release is close we are trying to share the current TeamCity state more frequently with you.

The version has "RC" in the footer to denote close release, while we are still working on fixes and minor improvements.

This release moves Swabra settings out of the build step settings into a new place called "Features". The "Features" section will also get XML test reporter settings soon. This new section is designed to hold settings not specific to any particular build step, but participating in the build behavior.

If you have a plugin for TeamCity which affects build behavior but is not specific to a build step, you can consider moving plugin settings into the section. See the sources of the mentioned plugins for an example.

For this build's changes review, see the release notes or dive into resolved issues in the tracker.

As we are approaching release we are extremely interested in any upgrade and stability issues with this build.

Want to ensure seamless upgrade of your setup to final TeamCity 6.0? Try upgrading your data with a test installation of this RC.

PS I was a bit quick to announce some surprise feature in the previous EAP post. Unfortunately, we decided to postpone it till future releases since it will require some more work (and your feedback too!)

Tuesday, November 2, 2010

TeamCity EAP: Upgrade Confirmation, Bundled dotCover and More

This EAP build (#15638) is one of the last ones to have major feature additions before the upcoming TeamCity 6.0.

Our plans are to release 6.0 in about a month and now we are shifting our main effort to bugfixing and minor improvements. If you want to try new 6.0 features and give us feedback so that we can address it before the release, it's high time to grab the build and test-drive it in your environment.

If you are from .Net camp you can now start to collect code coverage with several simple settings configured from web UI. This is possible thanks to bundled JetBrains dotCover console tool. You can view coverage reports in TeamCity web UI before you decide to equip each developer with dotCover add-in for Visual Studio.

As to changes before 6.0, we have one more card in our sleeve that is likely to be exposed in one of the final EAP builds, so stay tuned.

Beware of the new upgrade confirmation screen that you will see upon first launch of  this TeamCity server.
Starting from this version TeamCity displays the current settings and allows to create backup of the data before proceeding. (Creating backup is only available if you upgrade from previous 6.0 EAP and any future builds)

Please check the settings are correct before proceeding (so that you do not point your test server to a production database by mistake).

This information is displayed only to authenticated users who have physical access to the server: can view TeamCity logs (logs/teamcity-server.log) and grab "Maintenance Authentication Token" from the log.

See the release notes for other major additions or look through full fixed issues list.

And please do not forget to let us know what you think.

Monday, October 18, 2010

TeamCity 5.1.5 Bugfix Update

Here is a fresh update for stable TeamCity versions: build 13602 available on the download page.

Included are several improvements in web UI and various fixes throughout the system. See our YouTrack installation for the full list.

This is a minor upgrade so you can probably do light version of upgrade (comparing to the full instructions).
This light approach is:
  1. Create backup of your data from TeamCity Administration UI (backing up database and configuration data)
  2. Install the updated TeamCity version over your existing one. The simplest way to do that is to:
  • stop the server
  • backup your <TeamCity home>/webapps/ROOT directory
  • delete it's content
  • unpack TeamCity-5.1.5.war (this is a zip archive) into the directory
  • start the server
And consider trying 6.0 EAP as a test install to let us know how it suits your current or future needs!

Easy Access to GitHub Commit Page from TeamCity

(inspired by the tweet)

If your TeamCity is watching GitHub repo, you can add a link to GitHub commit page from every change displayed in TeamCity. The feature to allow that is called external changes viewer.

This requires some config file editing effort, but don't be scared:
Locate .BuildServer/config/change-viewers.properties file and add a line into it:
<NN>.changeSetUrl=http://github.com/<user>/<repository>/commit/${changeSetId}
Where:
<NN> - internal TeamCity id of the VCS root used. You can get the id if you open VCS root editing page in TeamCity and find "&vcsRootId=<NN>" in the URL.
<user> and <repository> - parts of GitHub repository URL.

See detailed description of the format in the comments inside "change-viewers.properties.dist" file.

Once you save the file (no TeamCity restart is required), all the changes of the VCS root affected should get icon that you can click to open GitHub commit page.

Like the feature? Let us know about this in the forums and suggest improvements in our issue tracker so that we can further enhance it.

Wednesday, October 6, 2010

TeamCity EAP: Collapsible Build Log, Gradle Support and More

This EAP build continues improvements in redesigned My Changes page and IntelliJ IDEA project runner while also adds several new features like build log displayed as a collapsible tree (wow, that was the very second feature filed for TeamCity project), Gradle runner (in experimental status) and ability to display some server-wide usage statistics (see Server Configuraiton/Usage Statistics).
Grab the build as usual.

If you are keen on details, then full report from our issue tracker is for your service.

It probably makes sense to install the build as a test server and try upgrading data of your main server to see how it goes.

Several notes on the things that have been changed and might affect your installation:
  • if you relied on automatically defined system.DotNetFramework* properties, they are no longer available as system.* properties, but rather as properties with no prefix/configuration parameters (and so they are not automatically passed into your build script).
  • NUnit and MSTest settings are now extracted into separate runners
  • several data structures got more fields in REST API
  • open API on agent was adopted to allow for multiple build steps
 
With our monthly pace with EAP builds this is one of the last EAP builds before TeamCity 6.0 which we plan to release in several months. So if you are interested in any of the 6.0 features (see the change log) do not postpone trying the build so that your feedback can still contribute to 6.0 release.

Tuesday, September 7, 2010

TeamCity 6.0 EAP: New My Changes Page, Filtering Controls and More

Want to try new features? We hav'em!

The latest EAP build of TeamCity 6.0 (build 15400) adds:

  • revamped My Changes page (love or hate it? Let us know!);
  • new UI controls powered by jQuery to ease your input: filtering drop-downs and calendar chooser. Keyboard navigation in "Projects" popup as a bonus;
  • assign responsibility for a group of tests in a single action;
  • ability to re-run failed tests in Visual Studio plugin (requires installed ReSharper that you have probably  already installed anyway);
  • improvements in IntelliJ IDEA/RubyMine/PyCharm plugin;
  • and more.

Try is and tell us what you think!

Tuesday, August 31, 2010

TeamCity 5.1.4 Bugfix Update

We've just published a bugfix update for TeamCity: version 5.1.4 (build 13550).

This release contains fixes for various issues uncovered throughout the system, and introduces minor improvements.

Please consider upgrading especially if you use TeamCity with Subversion, Git, EC2 cloud agents integration, RSpec 2.0 or Visual Studio add-in.
This release also adds transparent reporting for tests run by Maven Failsafe plugin.

See the full issues list in our tracker.

Get it from the official download page.

If you like living on the cutting edge, consider upgrading to TeamCity 6.0 EAP build which contains lots of improvements and new features over TeamCity 5.1.x.

Tuesday, August 10, 2010

Next TeamCity 6.0 EAP build: 15311

For those of you who like to live on the cutting edge, here is one more piece to try: build 15311 of 6.0 EAP.

What's in it?
  • Multi-step build configurations AKA "multiple build runners"
  • Java coverage display in Eclipse plugin
  • Ability to execute IntelliJ IDEA JUnit/TestNG run configuration after IDEA project compilation
  • and more

We especially need your feedback on the new features so if you try the build please do not hesitate to let us know how well they suit your needs.

P.S. This EAP release is also compatible with experimental VMWare integration plugin that we just published.

Monday, July 26, 2010

5.1.3 Bugfix Update is out

Recently, we've published a minor release 5.1.3 with several bug fixes.

Just to name a few, server cleanup times were improved in case of many builds with artifact cleanup level configured and a number of Visual Studio plugin exceptions were fixed.

Update is recommended to all users.

Please review the fixed issues, download the build and upgrade.

Saturday, July 10, 2010

TeamCity 6.0 EAP is Open

It's been several days since the first EAP build of upcoming TeamCity 6.0 is live.

The changes page pretty much describes it all.

Along with improvements like separate status for the builds that did not actually start the build process and agent-side Perforce checkout, there are new features like completely new runner for IntelliJ IDEA projects (supporting IDEA artifacts building) and build configurations' build queue priorities.

The last one has experimental status and we might rethink the approach based on your input. Please let us know how well it matches your needs and how easy you find it to use.

The EAP should be pretty stable as we run the trunk version of the server internally for quite a while already. However, as always please mind pre-beta state and experimental status for the new features. TeamCity 6.0 is planned for the end of this year, and we want to hear from you on the features so that we can rework or polish them to match our audience.

Sorry for the late announcement here, but it takes some time to keep up to the team's pace being on vacation :)

Saturday, May 22, 2010

TeamCity 5.1.2 Bugfix Update

TeamCity 5.1.2 is available from the download page.

Please consider upgrading especially if you use Git with ssh protocol or Visual Studio add-in - you may find this version more stable in the areas.

See also the full list of fixed issues.

Tuesday, May 18, 2010

TeamCity 6 codename: ఏలూరు

Hope the Telugu characters in the title did not screw your reader.

So the next major TeamCity release is going to have codename Eluru. We reverted to the plain English spelling since otherwise the entire team would be forced to learn Telugu instead of developing new features for you.

Care to tell us what your dream TeamCity feature is? Please do.

Sunday, May 2, 2010

TeamCity 5.1.1: Bugfix update

Here is a bugfix update to 5.1, 5.1.1 build 13398. It fixes several issues that were introduced in 5.1, contains several minor improvements and bugfixes. Update is recommended to all users.

Most import changes are:
- in 5.1, the relative path to .sln and command line runner executable were resolved based on the working directory and not checkout directory, as it used to be prior to 5.1. If you updated the path for 5.1 to workaround the issue, please change it back after upgrading to 5.1.1.
- while still in experimental status, we include agent-side checkout for git

For the full list, see our issue tracker.

Wednesday, April 21, 2010

TeamCity 5.1 is here

And finally, here is build 13360 already available from the official download page as TeamCity 5.1 release.

You can get an overview of the new additions in the What's New or review the full fixed issues list.

As usual, please backup before you drive.

Thank you for the continuous support and feedback.
You can prepare to vote for (and suggest) the new features as we are going to make up our minds on the next major release.

Monday, April 19, 2010

TeamCity 5.1 RC2: build 13340

As release is really-really close, here is one more RC build.

It has some issues fixed and also has SourceGear Vault plugin bundled with "experimental" status.

Please backup, download, report.

And we are back polishing the build to remove that "candidate" from it's current "RC" name.

Thursday, April 15, 2010

TeamCity 5.1 RC: #13300

The EAP build we are publishing today has a Release Candidate status: we are now focused on most critical fixes and checking the general state of the build.

So help us discover any critical issues in the build (BTW, what a fancy number: #13300 :).

There are almost no changes as we are focused on the bugfixing.

As usual do not forget to backup your existing data before upgrade!

Update: At some point we bundled Swabra plugin, but then decided this is a bit too early and being it a separate plugin would let us brush it up more effectively. Anyway, everyone is encouraged to try it and let us know how useful it is for you.

Wednesday, April 7, 2010

One more EAP build before 5.1: #13245

Here is the latest snapshot of the current TeamCity state: build #13245.


One of the major improvements introduced in the build is new UI for editing build configuration triggers. We migrated from tab-based triggers UI to list with add/edit/remove operations as this is necessary for further extending triggers capabilities and configuration.

See the other changes in the release notes or browse through the list of fixed issues in our tracker.

Please try the build and let us know if anything goes wrong - 5.1 is within weeks, so we need your help to discover any hidden issues.

And just in case, do not forget to backup your existing data before upgrade!

Monday, March 29, 2010

Prepare for April the 1st - try TeamCity Fools Day Plugin

Fools Day is close so if you would like to joke on your colleagues try TeamCity Fools Day plugin.
Please install it only if your organization can afford little disruption from the work as the plugin is a bit intrusive. Also, feel free to look into the code and tweak it.

The page has the version from the last year but it still works OK with TeamCity 5.0.3 (what a stable API :)

We might add something fresh to the plugin if we have time these days (our colleagues got a bit tired of the screen shooting last year), so watch for the plugin page updates.

Thursday, March 25, 2010

TeamCity 5.1 EAP build #13215 is available

We are coming closer to 5.1 release (will hopefully happen in about month) and here is a new EAP build for you to try and let us know your feedback.

Some of the improvements that many existing TeamCity users will probably be interested in:
  • Ability to hide and reorder build configurations on the Overview page. After some discussions this is made a per-user setting that affects only the Overview (as an exception, the changed order is also used on My Changes page). If you try the feature, please let us know how well this suits your needs;
  • support for putting external database drive jars under .BuildServer/lib/jdbc directory. If you upgraded TeamCity in the past you probably know that the driver jars need to be added again after upgrade. So the feature is aimed to reduce necessity to patch existing TeamCity installation after upgrade;
  • HTML email notifications (and with the recent addition of advanced notification templates customization you can further extend the messages) ;
  • support for image files in the web file diff view: two images will be displayed side by side;
  • ability to add a comment for a build right on the build triggering - in the custom run build dialog;
  • and more.
The build is waiting for your download requests.

Do not forget to backup your existing data before upgrade.

Care to make TeamCity better? Do not stay silent, drop us a line.

Tuesday, March 16, 2010

TeamCity 5.0.3 Bugfix Update

While we are working on 5.1 release, some of the fixes seem important enough to be integrated into our 5.0.x branch. The number of fixes seems enough to release an update and we gladly do it today.

The update is recommended but is not mandatory, if you do not experience any issues with your TeamCity setup, you can skip the update.

Thank you all who reported issues and let us investigate and fix them.

Download the new verison and ... happy building!

Thursday, February 25, 2010

TeamCity 5.1 EAP is Open

Today we are opening EAP for TeamCity 5.1 - the next minor version which we plan to release in about a month.

This EAP adds many new features and improvements as well as bug fixes.
What you can do with this EAP:
  • collapse Projects on the Overview page;
  • track failing tests across the whole project in a single place: Current Problems tab;
  • see build start/finish times in Web UI in your timezone (turn this on via a setting on user profile);
  • pack build artifacts into archive via a UI-configured setting;
  • enable code coverage gathering for the Maven runner with several clicks;
  • build your .NET 4.0 projects and use Visual Studio 2010 (RC);
  • tweak Email/Jabber/IDE/Windows Tray notification messages using powerful template engine (Freemarker).

For more details please review Release Notes or fixed tracker issues

Interested? Go download one to try. As usual, the build comes bundled with EAP license key valid for 60 days so if you are not yet on 5.0 or your 5.0 evaluation expired you can try TeamCity for free as a kind of extended evaluation valid while EAP lasts.

Do not forget to backup your existing data before upgrade. If you are on 5.0, you can do this form the web UI.

As usual, we are awaiting for your feedback.

Friday, February 5, 2010

5.0.2 (bugfix update) is Available

Here we are with a new bugfix update for TeamCity 5.0: version 5.0.2 is ready to download.

It contains fixes that improve different TeamCity integrations including Subversion, Perforce, Git, EC2, Visual Studio plugin, MS SQL Server and Maven.

As usual, do not forget to create a backup before upgrading (and with 5.0.x you can do this from the admin web UI).

We are now moving for TeamCity 5.1 with a plan to release it in several months.

Monday, January 18, 2010

One more popular version control system support: SourceGear Vault

Good news coming for SourceGear Vault users!

Did you hear about Eric Sink's impressive advertising campaign for Vault? Yeah, he's the one who invented the daring slogan "SourceSafe Must Die" (in advantage to Vault of course). Vault even contains a Handoff feature which makes it easier than ever to make the transition from Visual SourceSafe. They also show Vault advantages over Subversion.

So we decided to take a closer look at this version control tool and it's APIs. First offhand approach was to parse command line client output. Xml-based, well-stuctured, but still
insufficient (e.g. no simple way to determine whether object type is file or folder). Thus it was necessary to dig into the Java API (fortunately Vault provides the last and some .NET documentation appropriate for Java API as well).

For TeamCity specific purposes (collecting changes and patch building) we are using history and source retrieval API methods, which conduct developer through certain tricky cases (the delete operation is some kind of destructive and wipes out from history such principal operations as renaming).

Fortunately any of them had a workaround and TeamCity server does show all history operations and provides users with all possible information on transactions in the Change Log!

Here is the result - Vault support plugin early access program designed to work with TeamCity 5.0 and newer is open.

As always, any feedback will be highly appreciated.

Develop with pleasure!
The JetBrains TeamCity Team