Tom
Tom

Reputation: 172

Duplicate xaml Multi-Platform TFS Build definition to new web base build def

I'm trying to duplicate a multi-configuration build definition with the following Configurations.

Current BUild def

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

Answers (2)

Eddie Chen - MSFT
Eddie Chen - MSFT

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

Cece Dong - MSFT
Cece Dong - MSFT

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.

enter image description here

enter image description here

Upvotes: 0

Related Questions