Tuesday, 29 April 2014

Build VS2010 Setup Projects with TFS Build

I wanted to build a .vdproj (setup project in VS 2010) with TFS build and found MS Build does not support that out of the box. Below are few link that explains  “how to do this with build template changes”.
 
All of above suggested changing build templates, which I am OK to do with. I thought there should be a easy way out. Yes of course there is. “Old but GOLD” article in MSDN has given me a hint.
I created an additional solution and a C# Class Library project.

001

I already had VS 2010 available in my build server.  I used my Setup Builder C# project “AfterBuild” to execute devenv.exe and build my solution with .vdproj. Then copied the Setup.exe and .msi file to Output to directory so that it will be copied to TFS build drop.
Below are the commands used in “AfterBuild” .

002


  
  
 


This builds my setup project with MSBuild and it executes devenv.exe to build the Main.Solution with .vdproj (setup project).

004
005

I believe it would be better if I could use the Build Template change approach. But with the time constraints, and when you need a quick solution using what I have explained above is definitely a useful workaround.







Sunday, 27 April 2014

Upgrading TFS2013 to TFS 2013.2

TFS 2013.2 is out there I thought of upgrading my demo environment to TFS2013.2 from TFS 2013. Below are steps for to do this. For more details always refer Installation Guide for TFS2013.2.

1. Open command prompt in administrator mode in TFS Server and stop all TFS services with “ TFSServiceControl quiesce”.
001

2.  Start TFS2013.2 setup.
002

003

004

 005

3. Can safely ignore this warning (It is the latest update :) ) and you will not get this if internet is connected to the server. Close to Launch upgrade wizard.
 006

4. Wait till current settings detected.
007

5. Click Next.
008

6. TFS Configuration database selected. Click Next.
009

7. Enter password for TFS service account.
010

8. Specify “File Cache Folder” for TFS. (You can change the root folder and settings later if required)
011

9. Select configure reporting.
012

10.  Report server details populated.
013

11. Warehouse DB selected.
014

12. Analysis services ready.
015

13. Enter password for TFS reports account.
  016

14. Select to configure SharePoint.
017

15.  User the current settings.
018

16. Inspect all settings and click Verify.
 019

020

17. Click Configure.
 021

022

18. Configuration competed. Click Next to upgrade project collections.
023

 024

025

026

027

19. Upgrade completed smoothly.
028

029

20. Verify in Web Access shows everything up and running for existing projects.
030

 031

Let’s configure and explore new features for TFS2013.2 in coming posts.

Thursday, 24 April 2014

Resolve "Run On Agent (reserved build agent ) Cannot create unknown type '{clr-namespace:" for TFS Custom Build Templates

Today I came across a strange error. I have a custom build template which manipulates assembly version and was running for long time without issues. Today when I try to use this on a newly provisioned build server I came across below error

Run On Agent (reserved build agent BLDSVR - Agent1)
 Cannot create unknown type '{clr-namespace:MyCustomActivityNamespace;assembly=MyCutomActivityAssembly}MyCodeActivity'.




This Template was used for so many builds/projects in this collection so I was 100% ++ sure this is nothing wrong with my template or custom activities. Few minutes trial and error, I searched in www.. and Wow ! this was exactly my issue... Cannot create unknown type clr-namespace: ONLY on one “TFS build agent” and really thankful to Jupaol for sharing his experience. He saved my day and by spending almost his day figuring out his similar issue. Yeah..it was just a restart of the problematic build agent build service.


My custom template successfully builds the application now with the build server after restarting the build service.






This is awesome lesson...restart and try if something strange with MS windows from good old days :)

This error could be because of your mistakes as well, for example have a look at Stuck on “Cannot create unknown type {clr-namespace:” in TFS Build?

Tuesday, 8 April 2014

08. Create Instance of Development Machine - Setup Virtual Environment for TFS 2013 - Using Virtualbox

In this step of Setup Virtual Environment for TFS 2013 - Using Virtualbox, we create machine instance for development use.

01. First we need to create a Development user in our PDC


02. Then create machine with Virtualbox using the base machine hard disk we have created.


03. Change the machine name



04. Assign an IP address and assign DNS and Default gateway to PDC


05. Restart the machine

06. Add the machine to domain



07. Choose restart later


08. Add developer domain account to the administrators group in local machine




09. Restart the machine and login with developer domain account.


Next we will setup the first team project in our environment.