2009-08-19 7 views

Odpowiedz

0

I zazwyczaj użyć zadania Build Publisher wdrożyć pliki na serwerach zdalnych. Można również napisać skrypt za pomocą polecenia xcopy, aby go również wdrożyć.

0

Możesz użyć Web Deployment Projects, aby pomóc w tym również. W WDP możesz użyć elementu ExcludeFromBuild, aby wykluczyć te pliki. Aby uzyskać więcej informacji, patrz http://msdn.microsoft.com/en-us/library/aa479568.aspx.

Zająłby się tą witryną, aby wstępnie ją skompilować, a następnie opublikować na innym serwerze, zależy to od tego, jak ją wdrożyć. Jeśli kopiujesz do udziału sieciowego lub ftp, możesz to zrobić również przy pomocy MSBuild. Nie jestem zaznajomiony z Build Publisher, o którym wspomina poprzednia odpowiedź.

+0

co jeśli chciałem opublikować twoją aplikację internetową (mvc) i nie masz zainstalowanego Visual Studio na serwerze, jak byś poszła na temat budowania i publikowania? – Haroon

0

Znalazłem this blog bardzo przydatne. Zasadniczo wskaż plik ccnet.config do pliku MSBuild.xml, który utworzysz w katalogu projektu. W ramach MSBuild.xml plik utworzyć docelowej, która będzie budować i publikowania aplikacji internetowych za pomocą opcji _CopyWebApplication

2

do publikowania stron internetowych na serwerze rozwoju po to budować na mój serwer CI w CruiseControl.NET, używam Microsoft Web Deploy . Wymaga zainstalowania usługi wdrażania na dowolnych serwerach, które będą obiektami docelowymi wdrażania. Następnie możesz po prostu dodać krok wykonywania do procesu budowania, który uruchamia msdeploy.exe. Oto przykład używać w 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> 

Korzystając Web Deploy, można łatwo wykonać pełną synchronizację zawartości strony internetowej usuwania rzeczy, które nie powinny być tam również. Posiada także inne opcje, aby robić takie rzeczy jak ignorować pewne katalogów i poleceń problem recyklingu pule aplikacji itp

2

Moje rozwiązanie dla CCNET z transformacją 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>