Tuesday, 25 February 2014

06. Setup a Build Server - Setup Virtual Environment for TFS 2013 - Using Virtualbox


In this step of Setup Virtual Environment for TFS 2013 - Using Virtualbox, I will explain how to setup a build server for TFS.

01. First setup an account in PDC as TFS build service




02. Set up a new virtual machine in Oracle Virtual Box for TFS Build server. Set network to isolated internal network.





03. Change the machine name,, set IP and add to domain.









04. Select restart later and add TFA Admin account to local administrators group.








05. Restart the machine and login as TFS Admin.

  

06. Enable File and Printer sharing for the domain, to allow network access.



07. Run mmc and add Group Policy Object snap in to change local computer policies.



08. Add build service account for Log on as a service.


09. Install TFS.




10. Run build service configuration wizard.



11. Select the team project collection



12. If  any issues related to selecting TFS server go to IE options and add tfs root to trusted sites.



13. TFS server can be connected with added to trusted sites. Select the project collection for the build server.



14. Set the number of build agents depending on the number of CPU cores.



15. Set the build service account.


16. Review and configure.







17. Close the wizard and  start the build service, controller and agents.


Oops. Something is wrong. Service starts and stops suddenly. Done some search and really useful info here http://nakedalm.com/tfs-2012-issue-stuck-builds-in-team-foundation-build-with-no-build-number/

But the issue of multiple site bindings was not an issue for me here. So I did not proceed to set multipleSiteBindingsEnabled to true as specified in the above link.


18. After hour or two of search in www without any other valid solution just tried ping the TFS server from the build server. Since its shown resolving with IPv6 added below to hosts file.


19. It did the trick and Build Services are up and running for my TFS environment.


The next step is to install Visual Studio versions and any other required stuff in build server to support the developments solutions build, which I will not explain here.


Tuesday, 11 February 2014

CRM 2013 Deployment Utilities for TFS Build

I have updated CRMCommandLineUtilities to support CRM 2013 Online deployment automation with TFS. This was a codeplex project by Ryan Corrigal which helped me a lot to implement CRM 2011 on premises automated deployments with TFS.


You can find the updated command line utilities @ http://sdrv.ms/1h9lzJW (Code is not yet perfect since some hardcoded values for timeouts.)


To use this easily with TFS build, in the LabDefaultTemplate deployment step, use the command
cmd /c $(BuildLocation)\Deploy_QA.bat $(BuildLocation)


Or if you are using TFS 2013, you can directly execute PowerShell script from the build to invoke command line utilities for CRM.
More information on Zip Files with builds and Deployment Scripts are in my previous posts


Useful Powershell Scripts and .bat files are here


http://sdrv.ms/1bKdCmM, http://sdrv.ms/1bKdTpF, http://sdrv.ms/1bKdZh0


I will update more usage info in future posts. The final goal would be to achieve something similar to below.




The error messages displayed in the build screenshot above are handled and they are coming when verifying the async process status, due to CRM online service sql timeouts. But this is ok since the import continues and finally status check confirms 30 for process succeeded. Immediately afterwards Publish attempt may fail and I have introduced retry mechanism to make sure publish successful.



Sunday, 2 February 2014

05. Install & Configure TFS 2013 - Setup Virtual Environment for TFS 2013 - Using Virtualbox

In this fifth step of Setup Virtual Environment for TFS 2013 - Using Virtualbox, We are going to setup and configure TFS 2013 in the virtual environment.

01. The first step is to setup a service account for TFS. Log on to PDC and setup account for TFS service as below.



02. Log on to TFS machine we have setup, and set up log on as service permission for TFS Service account (Refer Accounts Required for TFS).



03. Start TFS 2013 Installation.



04. Restart required.



05. Once installation done start configuration in advanced mode.


06. Specify the DB server. (For me it is the single server deployment and SQL in the same server)


07. Specify the TFS account we have created above.


08. Below settings are preferred for app tier.


09. Select configure reporting option.


10. Populate URLs with the specified report server. (We have configured report server here).


11.  Specify SQL server for TFS here.


12. Specify the TFS Report Reader account we have created here.


13. Select configure SharePoint Foundation option.


14. Since we have setup SharePoint Foundation in the same box we have to select the option as below.


15. Set a collection name for the initial team project collection.


16. Review configuration with one warning on memory (Can't help it at this time :) )


17. Click configure and TFS 2013 will be configured in VirtualBox VM.



We have successfully set up the TFS server in our virtual environment using VirtualBox. The next step is to setup a build server for the project collection we have created above.

Thursday, 23 January 2014

Resolving - "Verify that the machines are accessible using the user name and password provided" in TFS Lab Setup in Workgroup Environment

I have encountered yet another issue while configuring TFS LAB standard environment and though it would help some one if I explain how did I resolve it.

The error happens in verify step of lab configuration and it is giving "Verify that the machines are accessible using the user name and password provided". Lucky for me this time I do not have to explain much all is well explained here thanks to Subramanyam [MSFT].

The next related error "The agent can connect to the controller but the controller cannot connect to the agent" is explained in my blog post.

The fixes are valid for joining Standard machines to TFS LAB environment, from not trusted domains or work-group.

Popular Posts