2016-03-26 4 views
0

Ich versuche, meine Website von einem Jenkins-Job bereitgestellt zu bekommen.Bereitstellen über die Befehlszeile mit MSBUILD und MSDEPLOY (.NET 3.5)

Ich verwende die folgende Befehlszeile Satz, ohne Erfolg:

"C:\Windows\Microsoft.NET\Framework\v3.5\msbuild.exe" myproj.csproj /p:DeployOnBuild=true 

Ich habe auch versucht:

"C:\Windows\Microsoft.NET\Framework\v3.5\msbuild.exe" myproj.csproj /p:Configuration=Debug /p:OutputPath="obj\debug" /p:DeployIisAppPath="Default Web Site/demo" 

Keiner arbeitet, obwohl mein Projekt richtig kompiliert wird.

Wenn ich nach C: \ inetpub \ wwwroot gehe, gibt es nichts Neues. Ich möchte, dass meine Website gestartet wird und von meinem Browser in Localhost aus erreichbar ist.

+0

Welche Fehlermeldung erhalten Sie? –

+0

@ OğuzhanTopçu Bitte sehen Sie meine erweiterte Beschreibung. Meine Site wird weder in inetpub kopiert noch im IIS-Administrationsbereich angezeigt. –

Antwort

1

Sie können MSDeploy benutzen, um Ihre Web-App mit den folgenden MSBuild Argumente

/p:Configuration=release 
/p:DeployOnBuild=True 
/p:DeployTarget=MSDeployPublish 
/p:MsDeployServiceUrl=https://targetServer:8172/MsDeploy.axd 
/p:DeployIisAppPath=MySite 
/p:AllowUntrustedCertificate=True 
/p:Username= 
/p:AuthType=NTLM 

MSDeploy jedoch zu implementieren, für uns bessere Lösung erwiesen hat. Wir verwenden MSBuild, um ein MSDeploy-Paket zu erstellen, und dann können wir dieses Paket mit MSDeploy.exe in vielen Umgebungen bereitstellen. Einmal erstellen, viele bereitstellen. Hier ist eine Übersicht von WebDeploy, die hilfreich sein können:

http://dotnetcatch.com/2016/02/25/the-anatomy-of-a-webdeploy-package/

+0

Ich habe Folgendes verwendet: ... \ Microsoft.NET \ Framework64 \ v4.0.30319 \ MSBuild.exe/t: Paket und das ein Paket generiert. Allerdings ist meine App für .NET 3.5 (und nur mit .NET 4 scheint MBUILD das Paket ohne Fehler zu generieren). Darf ich jetzt für .NET 3.5 bereitstellen? Wie? Danke –

+0

BTW, wenn ich die Version 3.5 von MSBUILD verwende, wirft es: error MSB4057: Das Ziel "Paket" existiert nicht im Projekt. –

+0

Ja, Sie können das Paket (erstellt über MSBuild 4) auf einer .NET 3.5-Site bereitstellen. Führen Sie die Datei * .deploy.cmd zum Bereitstellen des Pakets aus. Wenn Sie die .cmd-Datei ohne Params ausführen, wird die Hilfedokumentation angezeigt. – chief7