I have an old post that perform the same idea with TFS 2010 but as usual there are some differences with TFS 2013:-) How to run remote deploy with MS Deploy I tried many ways with many blog posts, they are almost the same but none of them worked for me, so I decide to create my own solution and share that include the Build Process Template, Of course I needed to install MSDeploy (Web Deploy 3.5) on the Build machine, remember how to install Web Deployment Agent Service if it’s not available
Customize the process template as the following:
Note: I didn’t include error handling during the customization, you may need to do that
- Adding ConverWorkspaceItem and If activities, we could add ConverWorkspaceItem part of the If sequence, this even could be better, you can do that too
- The ConverWorkspaceItem will transform the web application selected in the build definition to a local path
- In the If activity the main 2 activities are, Create Package (MSBuild activity) and Deploy Package (InvokeProcess activity)
- The Create Package activity will be as the following:
- Configuration —> the configuration that entered in the build definition
- CommandLineArgument —-> /t:build;publish
- Project —-> the project that transformed from ConverWorkspaceItem activity
- The Deploy Web Package (InvokeProcess) activity will be as the following image:
- The created package on the working directory on the build agent will be as the following:
- The Deployment section on the build definition will be as the following:
- How to test the create deployment file on the build agent
- How to publish without a package using a publish profile
- How to add a parameters value inside the parameter file.xml that created with the package