2017-01-31 2 views
0

Ich habe eine Azure-Funktion App/Azure-Website-Setup mit kontinuierlicher Bereitstellung von Source-Control.Azure-Websites: Wie kann eine Bereitstellung abgebrochen werden?

Diese App verfügt über ein benutzerdefiniertes Bereitstellungsskript, das ziemlich viel Zeit in Anspruch nimmt. Gelegentlich habe ich eine Änderung an git vorgenommen, was ein Fehler war, und ich möchte diese eine Implementierung abbrechen (während ich immer noch git pushes erlauben kann, eine Implementierung zu verursachen).

Gibt es einen PowerShell-Befehl, den ich ausführen kann, oder eine Option, die meine aktuelle Bereitstellung abbricht?

Antwort

1

Ich konnte das irgendwann herausfinden, und dachte, ich würde es hier posten. Es gibt keine "saubere" Möglichkeit, dies zu tun, aber es gibt einen "Hack".

  1. Navigieren Sie zu Ihrem SCM-Website:

    [YOUR_WEBSITE] .scm.azurewebsites.net

  2. Klicken Sie auf "Process Explorer"

  3. den Prozess finden, die die aktuelle Bereitstellung ist und wähle "Eigenschaften".

  4. Zurück nach unten auf der Seite und wählen Sie "Kill"

Wallah, Sie die Bereitstellung in der Mitte getötet haben.

0

Es gibt nichts, soweit ich weiß.

Es ist möglich, dass das Löschen der Bereitstellung über Kudu Rest API (https://github.com/projectkudu/kudu/wiki/REST-API#deployment) erreichen würde, was Sie wollen, aber ich erwarte, dass dies während der Bereitstellung fehlschlägt/löschen Sie nur Metadaten und Protokolle über die Bereitstellung.

Außerdem kann das Abbrechen einer Bereitstellung unerwünschte Artefakte im Dateisystem hinterlassen/Ihre Web-App beschädigen. Es ist wahrscheinlich am besten, Ihre Bereitstellungen so zu ändern, dass Sie über einen Entwicklungszweig und einen Versionszweig verfügen, um ein robusteres CI-Szenario einzurichten.

+0

Manson - Ich arbeite an einigen benutzerdefinierten Bereitstellungsskripten, das ist keine Produktion (noch). In jedem Fall werde ich es versuchen, aber ich denke, Sie haben Recht, das wird nur die Protokolle löschen. – Doug

Verwandte Themen