3
votes

We just upgraded to TFS2015 (onsite) and I'm trying to set up a build that will do the same thing as my xaml builds but I can't seem to get the same files built. Here's a picture of the xaml output directory that I use to publish the site. To get this I navigate to the build folder then drill down to the _PublishedWebsites\BOTWSitecoreWeb folder:

enter image description here

Here's a picture of the solution explorer:

enter image description here

So as you can see BOTWSitecoreWeb is my startup project and it forms the basis for the website. So to publish this website I simply copy the folder: _PublishedWebsites\BOTWSitecoreWeb to my IIS directory. Here's what it looks like using the xaml build:

enter image description here

And if I drill down into the TFS2015 build output folder into the Drops/Source/sc/Website folder I get this, which has many more files and folders than what I'm expecting:

enter image description here

So my question is how can I get the same output that I currently get from my xaml builds from a TFS2015 build?

The bin folder has the same number of files, so that's a good start. Here's the bin folder from the xaml build:

enter image description here

And here's the bin folder from the TFS 2015 build. Notice that they both have 57 files, which I assume is a good thing!

enter image description here

Thanks in advance for any insight you can provide!

Ben

2

2 Answers

5
votes

Update your build definition to below:

  1. Add /p:DeployOnBuild=true /p:OutDir="$(build.artifactstagingdirectory)\\" arguments in Visual Studio Build step: enter image description here
  2. Change "Path to Publish" of "Publish Build Artifacts" task to "$(build.artifactstagingdirectory)_PublishedWebsites\ProjectName": enter image description here

Save the build definition and queue a build, now you should get the same files published in drop folder like XAML build.

0
votes

vNext build and XAML build, it's totally different technology. There won't be any automated ways of converting.

The new builds are based on a different architecture and run on a completely different system.

So your situation is predictable, it's very hard to achieve a 100% conversion. Copy the folder in vNext will copy everything under the folder by default. Seems there are some customization during the copy or published in your XAML build which will return the result as above picture.

If you have heavily customized XAML builds and custom activities, you can continue using those builds until you are ready to port your business logic into scripts that can run in the new builds.

And you could also take a look at these series of articles how to upgrade from XAML to Build 2015 with minimal changes.