We are using a CMS system which is not included as part of our Visual Studio solution. When we develop for the CMS, we create individual projects within the solution for:
- Widgets
- Templates
- Masterpages
- Controls
Each of the projects has a designated destination folder within the CMS, so the website looks like this:
- \\mywebsite\controls\mycontrol.ascx
- \\mywebsite\templates\single-column-template.aspx
- \\mywebsite\widgets\tabbed-content.ascx
- \\mywebsite\masterpages\main.master
And each of their compiled assemblies need to go in \\mywebsite\bin\
Each time a project is built within the Build Definition's process template, MSDeploy is called, but I cannot get MSDeploy to place the .ascx, .aspx, and .master files into their corresponding subfolders while also having their assemblies placed into the bin.
Within the Build Definition's MSBuild Arguments, I have the following string:
/p:DeployOnBuild=true /p:DeployTarget=MSDeployPublish /p:MSDeployPublishMethod=WMSVC /p:MSDeployServiceUrl=myserver:8172/msdeploy.axd /p:AllowUntrustedCertificate=True /p:DeployIISAppPath="myserver/mywebsite" /p:Username={user} /p:Password={password}
If I modify the /p:DeployIISAppPath to be /p:DeployIISAppPath="myserver/mywebsite/controls", then MSDeploy creates a bin folder under that subdirectory, so using a custom parameter during the build process doesn't seem like it will work. Can anyone help me understand how I might be able to accomplish this?