2016-05-12 14 views
2

Ich verwende die VSTS-Versionsverwaltung, um Artefakte auf IIS-Websites bereitzustellen. Ich muss mehrere Webanwendungen und Webdienste bereitstellen. Also versuche ich herauszufinden, welche Art von Aufgaben am besten zu meiner Situation passt.VSTS: Versionsverwaltung Bereitstellen von Artefakten in IIS on Premise

Ich habe eine Builddefinition mit Visual Studio Build-Task für Projekte wie diese erstellt: enter image description here

der gut arbeitet, aber ich brauche zum Kopieren des Artefakte unter IIS Website Directory eine Aufgabe hinzuzufügen.

Der andere Ansatz ist IIS Web-Deployment als Aufgabe in Release-Definition zu verwenden, so habe ich die Builddefinition als:

enter image description here

Es ist jedoch ein Profil veröffentlichen erwartet (die Erstellung fehl, weil es kann es nicht finden). Ich muss für jedes Projekt in der Anwendung kein Veröffentlichungsprofil erstellen, da dies zu viel Arbeit wäre.

Gibt es einen Workaround für das oder was ist der bevorzugte Ansatz dafür?

Antwort

2

Sie können Ihre Builddefinition aktualisieren, um ein Webbereitstellungspaket zu generieren und es zu Artefakten hochzuladen. Fügen Sie dann in der Versionsverwaltung eine Aufgabe zum Ausführen von "projectname.deploy.cmd" im Bereitstellungspaket hinzu, um sie auf Ihrem IIS-Server bereitzustellen. Details finden Sie unter diesem Link: How to: Install a Deployment Package Using the deploy.cmd File Created by Visual Studio.

Und Sie können auch FTP Publishing auf Ihrem IIS-Server aktivieren und eine Aufgabe in Ihrer Version hinzufügen, um die Artefakte über FTP zu veröffentlichen. Möglicherweise benötigen Sie diese Aufgabe: FTP Uploader.

2

Mein Continuous Delivery with TFS/VSTS – Server Configuration and Application Deployment with Release Management Blog-Post (unter Bezugnahme auf einigen früheren Veröffentlichungen) zu implementieren hat alle Die Details, die Sie für die Bereitstellung Ihrer Artefakte an Zielknoten benötigen, verwenden Sie Windows-Maschinendatei Kopieren Aufgaben verwenden Sie dann PowerShell auf Zielmaschinen Aufgabe s, um sie an die richtigen Stellen zu bringen und Token-Ersatz und alles andere, was erforderlich ist, zu tun.

Ich würde die Verwendung von PowerShell DSC empfehlen, damit IIS vor der Bereitstellung ordnungsgemäß konfiguriert wird, dies aber nicht erforderlich ist. Wo immer es für Web-Apps möglich ist, bevorzuge ich, Dinge sehr einfach zu halten, indem ich Artefakte erzeuge, die alle Web-Dateien enthalten, die für einen bestimmten Ordner benötigt werden, und dann einfach xcopy für die Bereitstellung verwende.