WebAppActiveSlotArgs

data class WebAppActiveSlotArgs(val overwriteNetworkConfig: Output<Boolean>? = null, val slotId: Output<String>? = null) : ConvertibleToJava<WebAppActiveSlotArgs>

Manages a Web App Active Slot.

Example Usage

Windows Web App

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";
const example = new azure.core.ResourceGroup("example", {
name: "example-resources",
location: "West Europe",
});
const exampleServicePlan = new azure.appservice.ServicePlan("example", {
name: "example-plan",
resourceGroupName: example.name,
location: example.location,
osType: "Windows",
skuName: "P1v2",
});
const exampleWindowsWebApp = new azure.appservice.WindowsWebApp("example", {
name: "example-windows-web-app",
resourceGroupName: example.name,
location: exampleServicePlan.location,
servicePlanId: exampleServicePlan.id,
siteConfig: {},
});
const exampleWindowsWebAppSlot = new azure.appservice.WindowsWebAppSlot("example", {
name: "example-windows-web-app-slot",
appServiceId: exampleWindowsWebApp.name,
siteConfig: {},
});
const exampleWebAppActiveSlot = new azure.appservice.WebAppActiveSlot("example", {slotId: exampleWindowsWebAppSlot.id});
import pulumi
import pulumi_azure as azure
example = azure.core.ResourceGroup("example",
name="example-resources",
location="West Europe")
example_service_plan = azure.appservice.ServicePlan("example",
name="example-plan",
resource_group_name=example.name,
location=example.location,
os_type="Windows",
sku_name="P1v2")
example_windows_web_app = azure.appservice.WindowsWebApp("example",
name="example-windows-web-app",
resource_group_name=example.name,
location=example_service_plan.location,
service_plan_id=example_service_plan.id,
site_config={})
example_windows_web_app_slot = azure.appservice.WindowsWebAppSlot("example",
name="example-windows-web-app-slot",
app_service_id=example_windows_web_app.name,
site_config={})
example_web_app_active_slot = azure.appservice.WebAppActiveSlot("example", slot_id=example_windows_web_app_slot.id)
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Azure = Pulumi.Azure;
return await Deployment.RunAsync(() =>
{
var example = new Azure.Core.ResourceGroup("example", new()
{
Name = "example-resources",
Location = "West Europe",
});
var exampleServicePlan = new Azure.AppService.ServicePlan("example", new()
{
Name = "example-plan",
ResourceGroupName = example.Name,
Location = example.Location,
OsType = "Windows",
SkuName = "P1v2",
});
var exampleWindowsWebApp = new Azure.AppService.WindowsWebApp("example", new()
{
Name = "example-windows-web-app",
ResourceGroupName = example.Name,
Location = exampleServicePlan.Location,
ServicePlanId = exampleServicePlan.Id,
SiteConfig = null,
});
var exampleWindowsWebAppSlot = new Azure.AppService.WindowsWebAppSlot("example", new()
{
Name = "example-windows-web-app-slot",
AppServiceId = exampleWindowsWebApp.Name,
SiteConfig = null,
});
var exampleWebAppActiveSlot = new Azure.AppService.WebAppActiveSlot("example", new()
{
SlotId = exampleWindowsWebAppSlot.Id,
});
});
package main
import (
"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/appservice"
"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/core"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
example, err := core.NewResourceGroup(ctx, "example", &core.ResourceGroupArgs{
Name: pulumi.String("example-resources"),
Location: pulumi.String("West Europe"),
})
if err != nil {
return err
}
exampleServicePlan, err := appservice.NewServicePlan(ctx, "example", &appservice.ServicePlanArgs{
Name: pulumi.String("example-plan"),
ResourceGroupName: example.Name,
Location: example.Location,
OsType: pulumi.String("Windows"),
SkuName: pulumi.String("P1v2"),
})
if err != nil {
return err
}
exampleWindowsWebApp, err := appservice.NewWindowsWebApp(ctx, "example", &appservice.WindowsWebAppArgs{
Name: pulumi.String("example-windows-web-app"),
ResourceGroupName: example.Name,
Location: exampleServicePlan.Location,
ServicePlanId: exampleServicePlan.ID(),
SiteConfig: &appservice.WindowsWebAppSiteConfigArgs{},
})
if err != nil {
return err
}
exampleWindowsWebAppSlot, err := appservice.NewWindowsWebAppSlot(ctx, "example", &appservice.WindowsWebAppSlotArgs{
Name: pulumi.String("example-windows-web-app-slot"),
AppServiceId: exampleWindowsWebApp.Name,
SiteConfig: &appservice.WindowsWebAppSlotSiteConfigArgs{},
})
if err != nil {
return err
}
_, err = appservice.NewWebAppActiveSlot(ctx, "example", &appservice.WebAppActiveSlotArgs{
SlotId: exampleWindowsWebAppSlot.ID(),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azure.core.ResourceGroup;
import com.pulumi.azure.core.ResourceGroupArgs;
import com.pulumi.azure.appservice.ServicePlan;
import com.pulumi.azure.appservice.ServicePlanArgs;
import com.pulumi.azure.appservice.WindowsWebApp;
import com.pulumi.azure.appservice.WindowsWebAppArgs;
import com.pulumi.azure.appservice.inputs.WindowsWebAppSiteConfigArgs;
import com.pulumi.azure.appservice.WindowsWebAppSlot;
import com.pulumi.azure.appservice.WindowsWebAppSlotArgs;
import com.pulumi.azure.appservice.inputs.WindowsWebAppSlotSiteConfigArgs;
import com.pulumi.azure.appservice.WebAppActiveSlot;
import com.pulumi.azure.appservice.WebAppActiveSlotArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var example = new ResourceGroup("example", ResourceGroupArgs.builder()
.name("example-resources")
.location("West Europe")
.build());
var exampleServicePlan = new ServicePlan("exampleServicePlan", ServicePlanArgs.builder()
.name("example-plan")
.resourceGroupName(example.name())
.location(example.location())
.osType("Windows")
.skuName("P1v2")
.build());
var exampleWindowsWebApp = new WindowsWebApp("exampleWindowsWebApp", WindowsWebAppArgs.builder()
.name("example-windows-web-app")
.resourceGroupName(example.name())
.location(exampleServicePlan.location())
.servicePlanId(exampleServicePlan.id())
.siteConfig()
.build());
var exampleWindowsWebAppSlot = new WindowsWebAppSlot("exampleWindowsWebAppSlot", WindowsWebAppSlotArgs.builder()
.name("example-windows-web-app-slot")
.appServiceId(exampleWindowsWebApp.name())
.siteConfig()
.build());
var exampleWebAppActiveSlot = new WebAppActiveSlot("exampleWebAppActiveSlot", WebAppActiveSlotArgs.builder()
.slotId(exampleWindowsWebAppSlot.id())
.build());
}
}
resources:
example:
type: azure:core:ResourceGroup
properties:
name: example-resources
location: West Europe
exampleServicePlan:
type: azure:appservice:ServicePlan
name: example
properties:
name: example-plan
resourceGroupName: ${example.name}
location: ${example.location}
osType: Windows
skuName: P1v2
exampleWindowsWebApp:
type: azure:appservice:WindowsWebApp
name: example
properties:
name: example-windows-web-app
resourceGroupName: ${example.name}
location: ${exampleServicePlan.location}
servicePlanId: ${exampleServicePlan.id}
siteConfig: {}
exampleWindowsWebAppSlot:
type: azure:appservice:WindowsWebAppSlot
name: example
properties:
name: example-windows-web-app-slot
appServiceId: ${exampleWindowsWebApp.name}
siteConfig: {}
exampleWebAppActiveSlot:
type: azure:appservice:WebAppActiveSlot
name: example
properties:
slotId: ${exampleWindowsWebAppSlot.id}

Linux Web App

resources:
example:
type: azure:core:ResourceGroup
properties:
name: example-resources
location: West Europe
exampleServicePlan:
type: azure:appservice:ServicePlan
name: example
properties:
name: example-plan
resourceGroupName: ${example.name}
location: ${example.location}
osType: Linux
skuName: P1v2
exampleLinuxWebApp:
type: azure:appservice:LinuxWebApp
name: example
properties:
name: example-linux-web-app
resourceGroupName: ${example.name}
location: ${exampleServicePlan.location}
servicePlanId: ${exampleServicePlan.id}
siteConfig: {}
exampleLinuxWebAppSlot:
type: azure:appservice:LinuxWebAppSlot
name: example
properties:
name: example-linux-web-app-slot
appServiceName: ${exampleLinuxWebApp.name}
location: ${exampleServicePlan.location}
servicePlanId: ${exampleServicePlan.id}
siteConfig: {}
exampleWebAppActiveSlot:
type: azure:appservice:WebAppActiveSlot
name: example
properties:
slotId: ${exampleLinuxWebAppSlot.id}

Import

a Web App Active Slot can be imported using the resource id, e.g.

$ pulumi import azure:appservice/webAppActiveSlot:WebAppActiveSlot example "/subscriptions/12345678-1234-9876-4563-123456789012/resourceGroups/resGroup1/providers/Microsoft.Web/sites/site1"

Constructors

Link copied to clipboard
constructor(overwriteNetworkConfig: Output<Boolean>? = null, slotId: Output<String>? = null)

Properties

Link copied to clipboard
val overwriteNetworkConfig: Output<Boolean>? = null

The swap action should overwrite the Production slot's network configuration with the configuration from this slot. Defaults to true. Changing this forces a new resource to be created.

Link copied to clipboard
val slotId: Output<String>? = null

The ID of the Slot to swap with Production.

Functions

Link copied to clipboard
open override fun toJava(): WebAppActiveSlotArgs