2009-08-19 11 views

Respuesta

0

que suelen utilizar la tarea Build Publisher para desplegar archivos en servidores remotos. También podría escribir un script con un comando xcopy para implementarlo también.

0

Puede usar Web Deployment Projects para ayudar con esto también. En el WDP puede usar el elemento ExcludeFromBuild para excluir esos archivos. Para más información, vea http://msdn.microsoft.com/en-us/library/aa479568.aspx.

Esto manejaría el sitio para ser precompilado para luego publicar en otro servidor de desarrollo, esto depende de cómo se implemente ahora. Si copia en el recurso compartido de red o ftp, también puede hacerlo con MSBuild. No estoy familiarizado con Build Publisher que menciona la respuesta anterior.

+0

lo que si quería publicar su aplicación web (mvc) y no tiene Visual Studio instalado en el servidor, ¿cómo haría para construir y publicar? – Haroon

0

Encontré this blog muy útil. Esencialmente apuntas el archivo ccnet.config a un archivo MSBuild.xml que creas en el directorio de tu proyecto. Dentro del archivo MSBuild.xml crea un destino que compilará y publicará la aplicación web usando la opción _CopyWebApplication

2

Para publicar sitios web en un servidor de desarrollo una vez que se compile en mi servidor CI en CruiseControl.NET, uso Microsoft Web Deploy . Requiere que instale el servicio de implementación en los servidores que serán destinos de despliegue. Luego, simplemente puede agregar un paso de ejecución a su proceso de compilación que ejecute msdeploy.exe. Aquí hay un ejemplo que utilizo en Nant:

 <exec program="C:\Program Files\IIS\Microsoft Web Deploy V2\msdeploy.exe"> 
     <arg value="-verb:sync"/> 
     <arg value="-source:dirPath=&quot;${tmpdir}&quot;"/> 
     <arg value="-dest:dirPath=&quot;${deploy.dir}&quot;,computerName=http://${servername}/msdeploymentservice/"/> 
    </exec> 

Mediante el uso de Web Deploy, se puede hacer fácilmente una sincronización completa de los contenidos del sitio web de la eliminación de las cosas que no deberían estar allí también. También tiene otras opciones para hacer cosas como ignorar ciertos directorios y los comandos de edición de reciclar piscinas aplicación, etc.

2

Mi solución para CCNET con la transformación Web.config:

<tasks> 
    <msbuild> 
     <executable>C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe</executable> 
     <workingDirectory>E:\VersionesCC\Trunk_4\SBatz\Gertakariak_Orokorrak\GertakariakMS\Web</workingDirectory> 
     <projectFile>GertakariakMSWeb2.vbproj</projectFile> 
     <targets>Build</targets> 
     <timeout>600</timeout> 
     <logger>C:\Program Files\CruiseControl.NET\server\ThoughtWorks.CruiseControl.MSBuild.dll</logger> 
     <buildArgs> 
      /noconsolelogger /p:Configuration=Release /v:diag 
      /p:DeployOnBuild=true 
      /p:AutoParameterizationWebConfigConnectionStrings=false 
      /p:DeployTarget=Package 
      /p:_PackageTempDir=E:\Aplicaciones\GertakariakMS2\Web 
     </buildArgs> 
     </msbuild> 
</tasks> 
Cuestiones relacionadas