BTDF / DeploymentFramework

The Deployment Framework for BizTalk is the most powerful and customizable, yet easy-to-use toolkit for deploying and configuring your BizTalk solutions.
MIT License
53 stars 24 forks source link

BTDF Msi generation and Binaries folder #322

Closed tfabraham closed 6 years ago

tfabraham commented 6 years ago

Hi,

I am trying to create a BizTalk build automation in TFS and it fails with the below warning.

TF270003: Failed to copy. Ensure the source directory C:\Builds\6\BizTalk\CIDemo_Test\Binaries exists and that you have the appropriate permissions.

I changed the "Clean Workspace" option in Buld definition to "None" and manually created the "Binaries" folder. But it only got the ".bat" file and no MSI at all.

I followed the documentation provided in then Build Frame work .

Appreciate if could assist me in this.

Kind Regards,

AF

Attachments

Deployment Log Deployment.log

This work item was migrated from CodePlex

CodePlex work item ID: '10570' Vote count: '1'

tfabraham commented 6 years ago

[tfabraham@3/28/2014] First, make sure that you can successfully build the .sln only without the .btdfproj. If you cleared OutDir then the .sln build should produce no results in the build output folder. Also check the detailed MSBuild log file and make sure that you didn't have other build errors.

tfabraham commented 6 years ago

[UnknownUser@3/30/2014]

tfabraham commented 6 years ago

[AthulaFernando@3/30/2014] Hi Tom,

I can compile the TFS build project with the BTDF project filw without any error. In visual studio I can deploy the project in my local machine successfully with the framework addin. The issue I have is not creating the Binaries folder and the MSI files. I even tried to manually create the Binaries folder removing the clear option in the Build definition and it just created the .bat file.

in addition to that I see the below error in Visual Studio which I am going to address today.

Creating a build definition for the open solution file - C:\xxxx\Projects\xxxx\BizTalk\CIDemo\CIDemo.sln. Summary: There were 0 failures, 1 errors and 0 warnings loading custom activities and services. Error: Could not load file or assembly 'Ionic.Zip, Version=1.9.1.8, Culture=neutral, PublicKeyToken=edbe51ad942a3f5c' or one of its dependencies. The system cannot find the file specified. Creating a build definition for the open solution file - C:\xxxx\Projects\xx\BizTalk\CIDemo\CIDemo.sln. TF209036: warning: Failed to delete label BizTalkCI_20140328.2@$/BizTalk for build BizTalkCI_20140328.2: TF14098: Access Denied: User xxxx\coffde1 needs LabelOther permission(s) for $/BizTalk. TF215018: warning: Failed to delete drop location \xxxxx\CIDemo\BizTalkCI\BizTalkCI_20140328.2 for build BizTalkCI_20140328.2: TFXXXXXX: The controller Default Controller - xxxxxx is unavailable.

I have also attached the Deployment log for your reference.

Appreciate your advise.

Kind Regards,

AF

tfabraham commented 6 years ago

[AthulaFernando@3/30/2014] Hi Tom,

Sorry in my previous comment I meant to say that I can complie the BizTalk project without any errors excluding the BTDF project file. When I include the BTDF file then I get the error for the Binaries folder.

I don't see any MSI in eather case.

Kindly advise me.

Regards,

TF

tfabraham commented 6 years ago

[tfabraham@3/30/2014] The MSI is generated after the .bat file is written out, but the process stops at the .bat file. I was expecting to see in the build log the .sln build followed by the .btdfproj build. Did you set up a single build definition that includes two items to build, the .sln and the .btdfproj?

Are you using a custom build template? The documented configuration is based on the TFS DefaultTemplate.xaml. I've never run into a case with the default template where the Binaries folder is not created automatically. In this case C:\Builds\6\BizTalk\CIDemo_Test\Binaries should be created for you by the build template.

tfabraham commented 6 years ago

[AthulaFernando@3/31/2014] Hi Tom,

Thanks for the reply. Yes I have both project sln and the .btdfproj selected in the items to be built section. I have used the .xmal template provided with the BTDF framework. Should I only use the TFS default template for this?

I really appreciate your assistance.

Kind Regards,

AF

tfabraham commented 6 years ago

[UnknownUser@3/31/2014]

tfabraham commented 6 years ago

[AthulaFernando@3/31/2014] Hi Tom,

I managed to go little bit forward.

Kindly note the steps followed.

  1. Copied the Default TFS template and built the solution.

I did not change anything in the template file and built the solution. This time it has created the Binaries folder and the ".bat" and all the dlls in it. But the build failed saying that it could not find the "bin\Release" folder.

  1. Chnaged the Templete to remove the OutDir empty. Again got the same no Binaries folder exist warning.

  2. Chnaged the Template again to have a create Directory task at the end of the "Clear.All" section to create the Binaries folder right after deletion of the directories. This time it has created everything except the MSI file. Here I refered to your old comment and removed the tfsbuild user from IIS_User group. Still no luck.

Appreciate if you could kindly assist me.

Please note attached the Log files.

Kind Regards,

AF

tfabraham commented 6 years ago

[tfabraham@3/31/2014] The included template was from TFS 2010, and last time I used it, it seemed to work fine. You could certainly start clean by making a copy of the latest DefaultTemplate for your version of TFS, then making the two necessary changes: http://www.tfabraham.com/BTDFDocs/V5_5/CustomizationstotheTeamBuild2010.html. I'm still not sure what would cause the build not to create the Binaries output folder at all.

tfabraham commented 6 years ago

[tfabraham@3/31/2014] It seems that you are not using the final release of v5.0. In the final release, the Installer target writes to the build output "Generating MSI..." and later "Finished generating MSI.". Neither of those appear in your build log. Also, the log shows that an Exec task ran for candle.exe, but the very next step which is an Exec task of light.exe is not present. The WriteLinesToFile task for the .bat file actually comes after the MSI, contrary to my earlier comment.

Please verify that you have the final release of v5.0 installed on your TFS build server as well as on your development machine(s). I highly recommend that you upgrade to v5.5 if you can.

tfabraham commented 6 years ago

[AthulaFernando@4/2/2014] Hi Tom,

Thanks for your input. I had the incorrect BTDF version running on the build server. I have upgraded it and all working now. Is there any way to execute the .bat file in the workflow to deploy the MSI?

Kind Regards,

AF

tfabraham commented 6 years ago

[tfabraham@4/2/2014] Great, thanks. I'll close out this issue then. As for deploying during the build, it's possible but not something that I directly support. There have been some threads in the Discussions area about it, and I recommend Randy Paulo's PowerShell script: http://randypaulo.wordpress.com/2012/01/31/automating-silent-install-biztalk-deployment-framework-btdf-using-powershell/.

Thanks, Tom

tfabraham commented 6 years ago

[UnknownUser@4/2/2014]

tfabraham commented 6 years ago

Issue closed by tfabraham with comment Old version of Deployment Framework installed on build server

Reason closed Not BTDF