How to create a build runner to run a external command and translate the output messages to the TeamCity format.

Hi all!


I'm developing a build runner for teamcity to translate the FinalBuilder output.

Facts:
- FinalBuilder have a comand line (FBCMD.EXE) for running the projects.
- I built a java application to run the FinalBuilder command line and translate the output to TeamCity format.

My headaches:
- The examples and documentation for creating builder runners plugins is very weak.
- It's possible to pass variables to the FinalBuilder project, I need to load the project and read the variables for customizations.
       -  I have that class already in java, but can't see how to do this in the plugin.
       - The FinalBuilder project is in the repository, how can I find it for read it.

Please make an simple example to answer this questions, not only for me but for all community. This is a recurrent problem.

References:
https://devnet.jetbrains.com/message/5283872#5283872
https://confluence.jetbrains.com/display/TCD9/Build+Runner+Plugin
https://youtrack.jetbrains.com/issue/TW-6442


Thanks in advance,
Pedro Lopes

1 comment
Comment actions Permalink

It's a bit hard to answer this question in general, but I recommend taking a look at some existing plugins. For instance, FxCop plugin looks like a good candidate:
http://svn.jetbrains.org/teamcity/plugins/fxcop/trunk/

Have a look at agent part of the plugin:
http://svn.jetbrains.org/teamcity/plugins/fxcop/trunk/fxcop-agent/src/jetbrains/buildServer/fxcop/agent/

The class FxCopBuildService can serve as a good example of how to start external process. Basically you need to provide command line to TeamCity, and TeamCity will handle the rest.

0

Please sign in to leave a comment.