label SVN source and build..p

Does anybody have any workarounds or suggestion to be able to branch/label source (SVN) and trigger builds to run off that branch?

I understand that there are a lot of requests for this feature but I figured someone has to have some hack to get around this?

It seems to me that I could probably create a server-side plugin to create VCS roots but I haven't looked much at the plug-in development. Would I be able to label the source, run the custom plug-in to create a new VCS based on this label, modify the down-stream configurations to use this newly created VCS root, and finally trigger the builds?
Is this worth the effort?  Being able to build off of a branch is pretty huge for us.
I guess I could resort to having the build script pull the source, but then I lose the source integration with TC - which is one of the reasons we are using TC.

Thanks in advance.
NSN

2 comments

no spamnerd,

Sorry for the delay in replying.

Does anybody have any workarounds or suggestion to be able to branch/label source (SVN) and trigger builds to run off that branch?

I understand that there are a lot of requests for this feature but I figured someone has to have some hack to get around this?

Can you please describe your need in a bit more detail? Are you addressing a usual branching or need something special? Do you branch a lot so that manually copying build configuraiton and then changing the VCS root is an issue with your setup?

The issue to ease creating branches is TW-4778, but if you do not have many build configurations in different projects using the same VCS roots, current steps (copy+change) should be pretty easy.

If your task is to create a single build off SVN tag without creating a separate build configuraiton, you should be interested in TW-5428, TW-11072. While not implemented, I'd consider the approaches:
- as you noted, handle the checkout inside the build script based on the parameters passed to the build. This way you will not get the Changes for the build, but since this is a single build, there is no build to compare to and no Changes to dispaly, other then used revisions for the build. BTW, when the mentioned issues will be implemented, Changes page in TeamCity will not display changes either for the same reason.
- write a Java plugin for TeamCity that will change the build configuration settings or change the settings stored in XML inside Teamcity Data Directory.

0

Oh, I guess the use case is actually described in the other thread: http://devnet.jetbrains.net/thread/288681

So the question is how you need that to be presented in TeamCity: as a separate set of build configurations building the branch or as some special "out of normal sequence" builds within the same build configuration, but building off a branch.

Both approaches can probably be implemented as plugins. The first one is quite straignforward: copy/change the VCS roots. The second is no so easy and I doubt it can be reliably implemented without side effects and due presentation.

0

Please sign in to leave a comment.