Parámetros válidos para MSDeploy a través de MSBuild


Estoy intentando desplegar una aplicación web usando MSDeploy, en Team Build en TFS. Hay varias preguntas que abordan las propiedades que deben pasarse en MSBuild para llamar a MSDeploy, pero no he encontrado suficiente documentación para saber qué propiedades están disponibles. ¿Alguien tiene una lista de propiedades disponibles?

Aquí hay algunas preguntas que he encontrado, pero no he podido encontrar una lista definitiva de las propiedades:

Author: Community, 2011-04-08

6 answers

Aquí hay una lista que he compilado para mi propia referencia, junto con algunos de los valores legales que se pueden usar. Tenga en cuenta que estos se pasan a MSBuild usando la sintaxis /p:<PropertyName>=<Value>.

  • DeployOnBuild
    • Verdadero
    • False
  • DeployTarget
    • MsDeployPublish
    • Paquete
  • Configuración
    • Nombre de una solución válida configuración
  • CreatePackageOnPublish
    • Verdadero
    • False
  • DeployIisAppPath
    • /
  • MsDeployServiceUrl
    • Ubicación de la instalación de MSDeploy que desea utilizar
  • MsDeployPublishMethod
    • WMSVC (Servicio de Administración Web)
    • Agente remoto
  • Permitir certificado de confianza (utilizado con certificados SSL autofirmados)
    • Verdadero
    • False
  • Nombre de usuario
  • Contraseña
  • SkipExtraFilesOnServer (deje solos los archivos existentes no conflictivos)
    • Verdadero
    • False
 107
Author: Philip Hanson,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-03-28 15:23:29

Desafortunadamente la documentación para esto es casi inexistente en este momento. Si las diversas publicaciones de blog y publicaciones en foros no son lo suficientemente completas, siempre puedes mirar el .archivo de destino que utiliza MSDeploy que muestra cómo se utilizan las diversas propiedades si está dispuesto a pasar el tiempo para vadear a través de grandes cantidades de XML.

En mi máquina se encuentra aquí:

C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v10.0\Web\Microsoft.Web.Publishing.targets
 7
Author: Dylan Smith,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2014-10-23 15:52:56

No se si esto es lo que está buscando pero puede invocar msdeploy con el argumento /? y mostrará una lista de argumentos válidos

 4
Author: Victor Hurdugaci,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2011-04-08 17:43:21

Qué tal este / p: IncrementalBuild = True

 1
Author: user2646516,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-08-02 15:27:37

Algo más aquí https://msdn.microsoft.com/en-us/ff622991.aspx (para sharepoint)

Para crear un paquete en build: /p: IsPackaging = true

Para establecer el directorio publish en la misma ubicación de salida de drop: / p:PublishDir= Cuando la solución contenga varios proyectos de aplicaciones, establezca el siguiente parámetro para producir directorios de publicación específicos de la aplicación. / p:AppSpecificPublishOutputs = true

 1
Author: Franc Schiphorst,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2015-12-29 12:07:53

Configuración WebDeploy de una aplicación.NET Core2 AutoContenida. Nota 2 propiedades obligatorias:

Falta RuntimeIdentifier lanza:

Error NETSDK1031: No se admite la compilación o publicación de aplicación autónoma sin especificar un RuntimeIdentifier. Por favor, especifique un RuntimeIdentifier o establezca SelfContained en falso.

Falta DeployIisAppPath puede lanzar:

Error: Propiedad 'DeployIisAppPath' no debe estar vacío.

En caso de que esté pasando los parámetros a dotnet publish , evite la dependencia circular con /p: DeployOnBuild = false

Error MSB4006: Hay una dependencia circular en la dependencia de destino gráfico que implica el objetivo "Publicar".

Configuración completa de WebDeploy para la línea de comandos:

/P:WebPublishMethod=MSDeploy
/P:DeployOnBuild=True 
/P:DeployTarget=MsDeployPublish 
/P:TargetFramework=netcoreapp2.0 
/P:SelfContained=true 
/P:MsDeployServiceUrl=https://my_subdomain.jobit.io:8172/MsDeploy.axd?site=subdomain_path
/P:AllowUntrustedCertificate=True 
/P:MSDeployPublishMethod=WMSvc 
/P:CreatePackageOnPublish=True 
/P:UserName=OTB
/P:Password=Expert 
/P:RuntimeIdentifier=win-x86
/P:DeployIisAppPath=subdomain_path
 0
Author: profimedica,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2018-10-03 00:21:03