我们已经创建了Web应用程序,我们计划在Azure Marketplace中将应用程序发布为Web App。可以使用ARM模板(POC)将Web App发布到Marketplace,以便为我们的客户进行一键式部署。
当我们发布较新版本的应用程序时,我们如何通过Google Play商店等Azure Marketplace提供无缝升级(第一次安装按钮和旧版本使用用户更新按钮?
我通过本文解释了在Azure中的部署。但是,我没有找到任何升级Azure应用程序的文章
https://docs.microsoft.com/en-us/azure/app-service-web/web-sites-deploy
答案 0 :(得分:1)
我们可以使用git pull命令从其他git存储库获取更新。在Azure kudu中,命令可能是这样的,
D:\home\site\wwwroot>git remote add gitsource https://username@passwordyourgitserver.com/xx.git
D:\home\site\wwwroot>git pull gitsource master
当我们发布较新版本的应用程序时,我们如何才能为客户提供无缝升级
发布新版本的应用程序后,您可以强制客户端执行上层命令以获取更新。如果使用C#作为编程语言,则可以使用以下步骤执行powershell命令。
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 :(得分:1)
在用于为客户配置站点的ARM模板中,您可以从GitHub存储库启用到该站点的持续部署。因此,只要更新了repo,您的模板配置的网站(任何或所有网站)都将使用新的drop进行更新。
请参阅此示例模板:https://github.com/Azure/azure-quickstart-templates/tree/master/201-web-app-github-deploy
然后对于自动部署,将其设置为&#34; false&#34;: