HY
我们有两个应用服务:
RESTService(Azure App Service Web App - > ASP.NET)
WebApplication(Azure App Service Web App - > Angular.JS SPA)
RESTService有一个web.config,WebApplication有一个appconfig.json作为他们的配置文件。
在每个应用服务上,我们都有一个临时插槽,我们想在那里做一些测试(自动和手动)。因此,我们需要为web.config和appconfig.json文件设置粘滞槽设置。使用门户网站的粘滞槽设置,我认为这是不可能的(这些设置仅适用于我认为的web.config中的appsettings-configurations)。
最好的方法是什么?
我想到这样的事情: - 在我的发布配置中,我将web-apps部署到临时插槽,然后在web.config和任务中的appjson.config(power-shell等)上进行修改(调整登台环境的设置)类似的)...然后我可以进行自动测试,如果他们成功我撤消我在配置文件中的更改并交换到生产。但是,如果我想进行一些手动测试并在门户中进行交换,那该怎么办?我不得不自己撤消变更......
是否有类似于交换前作业的内容,可能会在交换之前触发?
感谢您的帮助,
彼得
答案 0 :(得分:0)
据我所知,如果您只将设置存储在web.config中,则很容易执行此操作。您只需在Azure门户中选择“插槽设置”。如果你想在交换之前做一些交换工作,我建议你使用Microsoft.WindowsAzure.Management.WebSites,以下是交换插槽的代码。
var cert = new X509Certificate2();
cert.Import(Convert.FromBase64String("MIIDBjCCAe6gAwIBAgIQbaFn9SASQoFHELar....."));
var _client = new Microsoft.WindowsAzure.Management.WebSites.WebSiteManagementClient(new Microsoft.WindowsAzure.CertificateCloudCredentials("***", cert));
//do somethings.....
client.WebSites.SwapSlots("<web space>", "<website name>", "<source slot name>", "<target slot name>");