visual studio 2012 - studio - Publicando la solución vs2012 de TeamCity
error cs0006 visual studio (1)
Acabo de publicar un blog sobre esto en http://sedodream.com/2013/01/06/CommandLineWebProjectPublishing.aspx .
Estás bastante cerca, espero que pueda cerrar la brecha.
Es correcto que el nombre de usuario y la contraseña estén especificados en el cuadro de diálogo de publicación de VS, pero no guardamos la contraseña en el archivo .pubxml. Actualmente se está guardando en el archivo .pubxml.user, y ese archivo no se utiliza en absoluto para los escenarios de línea de comandos. Por eso tendrá que pasar en la propiedad. Así que en tu caso debería ser
msbuild ./src/solution.sln /p:DeployOnBuild=true /p:PublishProfile=ci /p:Password=<insert-password>
Si su servidor web no tiene certificados de confianza, es posible que también deba pasar /p:AllowUntrustedCertificate=true
.
Una pequeña adición que puede no estar directamente relacionada con su problema, pero puede ser útil para otros que pueden ver esto más adelante. Si está compilando el archivo .csproj / .vbproj ( y posiblemente en algunos escenarios donde se usa el archivo .sln ), debe pasar la propiedad /p:VisualStudioVersion=11.0
. Más información sobre esto disponible en mi blog http://sedodream.com/2012/08/19/VisualStudioProjectCompatabilityAndVisualStudioVersion.aspx
Estoy usando Visual Studio 2012 y la función de publicación. He creado un perfil de publicación que implementa mi aplicación en un servidor de desarrollo, y funciona muy bien cuando se ejecuta desde vs2012 en mi máquina. Aquí está mi problema; en el servidor de desarrollo también tengo TeamCity instalado y me gustaría activar la publicación después de que se haya completado una compilación. Así que creé un paso de compilación simple que se ve así:
Build file path: ./src/Solution.sln
Targets: Rebuild
Command line parameters: /p:DeployOnBuild=true;PublishProfile=Ci
Cuando este paso se está ejecutando obtengo el siguiente error:
C:/Program Files (x86)/MSBuild/Microsoft/VisualStudio/v11.0/Web/Microsoft.Web.Publishing.targets(4377, 5): error ERROR_USER_NOT_ADMIN: Web deployment task failed.
(Connected to ''dev.domain.com'' using the Web Deployment Agent Service, but could not authorize. Make sure you are an administrator on ''dev.domain.com''.
El perfil Ci contiene un nombre de usuario y una contraseña que funcionan cuando ejecuto la publicación desde Visual Studio en mi máquina. También he intentado pasar el nombre de usuario y la contraseña como parámetros en el paso de compilación, pero obtengo el mismo resultado. ¿Debo ejecutar los servicios de TeamCity en las cuentas de administrador para que esto funcione? Todas las sugerencias son apreciadas.