Getting started

Hello everyone,

I'm having a massive amount of trouble getting started with TeamCtiy plugin development.

I started by following this guide:
but beyond "run ant dist", there isn't much explanation on how this plugin works.

I attempted to follow this guide:
but I coudln't find information on:
     1. What's the content and format of build-server-plugin-name.xml ?
     2. What is teamcity-plugin.xml used for, when we already have build-server-plugin-name.xml?

Finally, is there a guide that explains how to modify an existing TeamCity interface? For example, I might want to add a field under custom run dialog box.

Thank you all in advance for help. Getting started seems to be the trickiest part.


1 comment
Comment actions Permalink


I'm working on a TC plugin as well, and I'm having a lot of trouble. The confluence wiki is awfully incomplete and the APIdocs spare to a point that they are useless. I downloaded the source code for an existing plugin and learned a lot from it, and I'd recommend you do the same.

To answer your questions:

1. build-server-PLUGIN-NAME.xml is a Spring beans definition in which you can wire up your beans. You need to at least create on bean with your core plugin class, TC will find the plugin based on its class. For a VCS plugin for example, you'd need to create an instance of jetbrains.buildServer.vcs.ServerVcsSupport.

2. teamcity-plugin.xml is used to store some generic meta data and configuration settings about your plugin. Other than the plugin name and description I don't really have anything in there.

I hope that helps.


Please sign in to leave a comment.