首页 文章

管理Azure网站部署/备份/日志的指南

提问于
浏览
1

任务是创建自动Azure部署和交换'工具',我想使用C#和Azure资源管理器并将其添加到WebAPI服务器 . 但是,文件似乎有限 .

例如,以下是ARMs BeginSwapSlotWithProduction()的链接

谷歌搜索该方法只返回7个结果!

我看到Azure PowerShell cmdlet有很好的文档记录 .

Azure资源管理器和模板也是如此 . < - 不安全 .

我曾考虑在C#中使用Powershell inline,例如记录here.但似乎我正在与系统作斗争 .

试图让这个问题不再是基于意见的 . 还有其他我没有在这里提到的选择 .

  • Azure资源管理器(基于流利)

  • Azure资源管理器

  • Azure PowerShell

  • Azure资源管理器REST,带有(弱类型)资源管理器模板 .

寻找一个记录良好,强类型的方式来基本上与Azure交互 .

1 回答

  • 1

    如果要交换或部署WebApp,可以使用Microsoft.Azure.Management.FluentMicrosoft.Azure.Management.ResourceManager.Fluent . 我们还可以从github Azure SDK获得更多的演示代码 . 关于如何获取凭证文件,您可以参考Authentication in Azure Management Libraries for .NET .

    以下是演示代码 .

    var credentials = SdkContext.AzureCredentialsFactory.FromFile(@"Credential file path");
    var azure = Azure
                .Configure()
                .WithLogLevel(HttpLoggingDelegatingHandler.Level.Basic)
                .Authenticate(credentials)
                .WithDefaultSubscription();
    
    //create WebApp
    var webApp = azure.WebApps.Define(appName)
    .WithRegion(Region.USWest)
    .WithNewResourceGroup(rgName)
    .WithNewFreeAppServicePlan()
    .Create();
    
    //Deploy WebApp
     webApp .Deploy().WithPackageUri("packageUri");
    
    //get WebApp
    var webApp = azure.WebApps.GetByResourceGroup("rgName", "appName");
    
    //swap WebApp
    webApp.Swap("slotName");
    

相关问题