2017-04-25 7 views
0

Wir haben die Webanwendungen erstellt und planen, die Anwendung als Web App in Azure Marketplace zu veröffentlichen. Die Veröffentlichung der Web App auf dem Marktplatz kann mithilfe von ARM-Vorlagen (POC) für die Bereitstellung mit einem Klick für unsere Kunden erfolgen.Azure Web App-Aktualisierung

Wenn wir die neuere Version der Anwendung freigeben, wie können wir bieten die nahtlose Upgrade auf unsere Kunden durch den Azure Marktplatz wie Google Play Store (Schaltfläche Installieren für 1. Mal und Schaltfläche Update für ältere Version verwenden Benutzer?

ich kam diesem Artikel durch den Einsatz in Azure erklärt. Aber ich jeden Artikel für Upgrade Azure App

nicht https://docs.microsoft.com/en-us/azure/app-service-web/web-sites-deploy

Antwort

1

finden wir Git-Pull-Befehl verwenden, um die Updates von anderen Git Repository zu bekommen. in Azure Kudu, könnte der Befehl so sein,

D:\home\site\wwwroot>git remote add gitsource https://[email protected]/xx.git 
D:\home\site\wwwroot>git pull gitsource master  

Wenn wir die neuere Version der Anwendung freigeben, wie können wir bieten das nahtlose Upgrade für unsere Kunden

Nach der neuen Version der Anwendung freigegeben, Sie Ihre Kunden zwingen könnten zu Führe den oberen Befehl aus, um die Aktualisierungen zu erhalten. Wenn Sie C# als Programmiersprache verwenden, können Sie die folgenden Schritte ausführen, um den Powershell-Befehl auszuführen.

  1. Installieren Sie System.Management.Automation dll mit NuGet.
  2. Führen Sie Powershell-Skripts mit der folgenden Methode aus.
private static string RunScript(string scripts) 
{ 
    // create Powershell runspace 
    Runspace runspace = RunspaceFactory.CreateRunspace(); 
    // open it 
    runspace.Open(); 
    // create a pipeline and feed it the script text 
    Pipeline pipeline = runspace.CreatePipeline(); 

    pipeline.Commands.AddScript(scripts); 
    pipeline.Commands.Add("Out-String"); 
    //execute the script 
    Collection<PSObject> results = pipeline.Invoke(); 
    //close the runspace 
    runspace.Close(); 
    // convert the script result into a single string 
    StringBuilder stringBuilder = new StringBuilder(); 
    foreach (PSObject obj in results) 
    { 
     stringBuilder.AppendLine(obj.ToString()); 
    } 
    return stringBuilder.ToString(); 
} 
1

In der ARM-Vorlage, die Sie für die Bereitstellung für den Kunden die Website nutzen, können Sie kontinuierliche Bereitstellung dieser Stelle von einem GitHub Repo ermöglichen. Wenn das Repo aktualisiert wird, wird die von Ihrer Vorlage bereitgestellte Website (alle oder alle) mit dem neuen Drop aktualisiert.

diese Mustervorlage Siehe: https://github.com/Azure/azure-quickstart-templates/tree/master/201-web-app-github-deploy

Und dann für den automatisierten Abruf-Implementierungen diese auf "false":

https://github.com/Azure/azure-quickstart-templates/blob/master/201-web-app-github-deploy/azuredeploy.json#L101