Reputation: 172
I'm trying to duplicate a multi-configuration build definition with the following Configurations.
Notice we only have 1 debug and several Release configurations.
I've seen several multi-config examples where they say to create 2 variables:
BuildConfiguration="this,that,and,other" BuildPlatform="x86,x64"
And under the options check the Multi-configuration and set the Multiplier to "BuildConfiguration,BuildPlatform" and that will build "this|x86, this|x64, that|x86, that|x64", etc...
But we only want to build the debug version of one user-defined platform, and the release of the rest.
I was able to get this to actually build everything by creating one variable, BuildConfigurations, and giving it a value: "_ThunderApps|Debug,_ThunderApps|Release,ThunderApps64|Release,ThunderCloudLightningServices|Release,DataProviderPlatformService|Release,ThunderSTATSXinfoService|Release,Multicam|Release" - cut and pasted from my old build def.
The problem I'm having is I cannot seem to get the output of each build into its own Configuration directory. Is this possible to do?
Upvotes: 0
Views: 117
Reputation: 29966
There isn't any way to achieve the feature perfectly right now. You have to separate the build configuration or platform by different build definition or different build agent phase if it is support on your TFS Server. For example, one agent phase to run the debug configuration and another agent phase to run the release configuration with multiple configuration enabled.
Upvotes: 0
Reputation: 31023
Since you use on-premises TFS, a workaround is select/unsecelt the project with configuration and platform in the solution. For example, you have Configuration="Debug,Release", Platform="x86,x64,Any CPU"`, for Debug Configuration, you only select x64, but unselect others (check the screenshots below). In this way, although you still see Debug|Any CPU, Debug|x86 in your build, these are actually not building.
Upvotes: 0