2010-07-14 33 views
7

Estoy intentando automatizar la implementación de un sitio. Empecé con este articleLínea de comando MSBuild 4 y MSDeploy

y todo funciona muy bien desde VS 2010. Sin embargo, estoy teniendo problemas con la línea de comandos utilizo este

c:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe "d:\Projects\test.csproj" /T:Package /P:PackageLocation="d:\Package\packageTest.zip" 

para crear el paquete

y

d:\Projects\packageTest.deploy.cmd "-setParam:name='IIS Web Application Name',value=MSBuild/Test2" /y 

para al menos implementar correctamente. Sin embargo, no acepta ninguna de las opciones de IIS (el grupo de aplicaciones es MSBuild en lugar de ASP.NET v2.0) y, como dije antes, el nombre de la aplicación web de IIS es incorrecto. ¿No debería esta información tomarse del archivo .csproj? Todas estas configuraciones están hechas para la configuración de depuración y plataforma cualquier CPU

+0

Todavía no sé qué plataforma toma msbuild, pero cuando establecí estos cambios para todas las plataformas en VS 2010, funcionó bien. – gapo

+0

Incluso sin establecer el nombre de la aplicación web IS. Esta pregunta debe ser cerrada – gapo

Respuesta

6

Generalmente, configura su aplicación en el IIS primero, con la ruta correcta, grupo de aplicaciones, etc. Cuando la instalación se puede utilizar MSBuild para desplegar en ese nombre de la aplicación como esta:

msbuild <your_web_project_name>.csproj /p:Configuration=Release /p:OutputPath=bin /p:DeployOnBuild=True /p:DeployTarget=MSDeployPublish /p:MsDeployServiceUrl=https://<url_to_your_server>:8080/msdeploy.axd /p:username=<username> /p:password=<password> /p:AllowUntrustedCertificate=True /p:DeployIisAppPath=<your_site_name> /p:MSDeployPublishMethod=WMSVC /p:VisualStudioVersion=11.0 

Si no desea configurar manualmente el sitio, se puede ejecutar un shell algo de energía con este aspecto:

Import-Module WebAdministration 
New-Item iis:\Sites\<your_site_name> -bindings @{protocol="http";bindingInformation=":80:<your_site_name>} -physicalPath c:\inetpub\wwwroot\<your_site_name> 
Set-ItemProperty 'IIS:\Sites\<your_site_name>' ApplicationPool "ASP.NET v4.0" 
Cuestiones relacionadas