Artifacts from one of the multiple possible build configurations

Hey,

I wonder if there is any good solution to this situation: we have multiple build configurations which build the installer for software and difference for these build configurations is just in a few build steps but overall they're mostly the same. They all also provide working installer as an artifact that can be used. Then we have lots of build configurations for different test plans which all require this installer as an artifact dependency.

Currently we have only one of those "installer creator" configurations listed as an artifact dependency in all these test build configurations but our users would like to sometimes use installer from one of those other configurations. Because we have so many test plans we really don't want to duplicate test jobs for all the different installer options. Instead we would like to have some way for user to choose from which of the installer creator configurations the artifacts are fetched from. So the question is: is there any way to do this? I guess something could be hacked together using REST-API at least but that feels a bit un-intuitive. Any better alternatives?

We're using the latest enterprise TeamCity. 

Thanks

0
1 comment

I'm afraid there aren't direct ways to achieve this as of now. We have a request for something very similar here: https://youtrack.jetbrains.com/issue/TW-16426, please watch and vote it to help get it implemented. If you add a comment explaining the scenarios it might also be helpful.

Some options might include getting all the installers in all builds (you can add all artifact dependencies to a template and apply it to all test builds), then via a parameter the person running the build can decide which installer to use (the parameter would be used during the build script or process). This would be some waste of resources but would avoid having to add complex logic into the builds.

Other than that, I'm afraid that using the REST API is the best option, by adding a first step in the build script for your tests builds that downloads the artifact manually that has been passed as a parameter.

0

Please sign in to leave a comment.