2013-06-02 10 views
5

Próbuję skonfigurować serwer kompilacji za pomocą Jenkinsa (w systemie Windows Server 2012), który będzie odpowiedzialny za budowanie (z transformacją konfiguracji) i pakowanie (plik zip) projektów ASP.NET MVC/Web API, a następnie przenoszenie ich do wyznaczonych lokalizacja (C:/Opublikowany).Co jest potrzebne, aby skonfigurować serwer budujący Jenkins, który może budować projekty ASP.NET bez Visual Studio?

Zasadniczo potrzebuję Visual Publish Web Publish dla systemu plików za pomocą wiersza poleceń bez konieczności instalowania Visual Studio. Proces skompresowania może zostać odroczony do wiersza poleceń przez Jenkinsa.

Od poszukiwania, wykonaj następujące kroki, co robiłem do tej pory:

  1. zainstalowana Jenkins
  2. zainstalowaną wtyczkę Jenkins MSBuild
  3. Skopiowane „C: \ Program Files (x86) \ MSBuild \ Microsoft \ VisualStudio \ V11.0 \ WebApplications \ Microsoft.WebApplication.targets' do mojego serwera kompilacji
  4. Zainstalowane Windows 8 SDK
  5. Utworzono zadanie Jenkins, który ciągnie kodu źródłowego z repo
  6. Dodane argumenty wiersza polecenia do zadania MSBuild ....

etapie 6, co mnie stumping. Próbowałem wielu sugestii w trybie online, ale nie wiem, jak uzyskać pełny efekt polecenia publikowania programu Visual Studio.

Jedna z propozycji było użyć publikowania właściwości profilu jako parametry:

/p:WebPublishMethod=FileSystem 
/p:LastUsedBuildConfiguration=Release 
/p:LastUsedPlatform=AnyCPU 
/p:ExcludeApp_Data=False 
/p:publishUrl=C:\Published\ 
/p:DeleteExistingFiles=True 

Ale to nie robi przenieść żadnych plików na c:\Published\.

Odpowiedz

8

Potrzebowałem skopiować pliki z C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\Web z mojego dev boxa do tej samej lokalizacji na serwerze kompilacji, wtedy właściwości działały poprawnie.

Oprócz etapów I opisanych powyżej, poniżej są dodatkowe kroki, co musiałem zrobić, aby dostać tę pracę:

  1. Zmieniono obsługę Jenkins Windows, aby zalogować się jako Administrator
  2. kopiowania plików w C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v11.0\Web od moja maszyna dev do tej samej lokalizacji na serwerze kompilacji przywrócenia
  3. Włączone pakiet Nuget uruchamiając [Environment]::SetEnvironmentVariable("EnableNuGetPackageRestore", "true.", "Machine") w PowerShell
Powiązane problemy