1. Packages
  2. Azure Classic
  3. API Docs
  4. nginx
  5. Deployment

We recommend using Azure Native.

Azure v6.23.0 published on Thursday, May 22, 2025 by Pulumi

azure.nginx.Deployment

Explore with Pulumi AI

Manages an NGINX Deployment.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as azure from "@pulumi/azure";

const example = new azure.core.ResourceGroup("example", {
    name: "example-rg",
    location: "West Europe",
});
const examplePublicIp = new azure.network.PublicIp("example", {
    name: "example",
    resourceGroupName: example.name,
    location: example.location,
    allocationMethod: "Static",
    sku: "Standard",
    tags: {
        environment: "Production",
    },
});
const exampleVirtualNetwork = new azure.network.VirtualNetwork("example", {
    name: "example-vnet",
    addressSpaces: ["10.0.0.0/16"],
    location: example.location,
    resourceGroupName: example.name,
});
const exampleSubnet = new azure.network.Subnet("example", {
    name: "example-subnet",
    resourceGroupName: example.name,
    virtualNetworkName: exampleVirtualNetwork.name,
    addressPrefixes: ["10.0.2.0/24"],
    delegations: [{
        name: "delegation",
        serviceDelegation: {
            name: "NGINX.NGINXPLUS/nginxDeployments",
            actions: ["Microsoft.Network/virtualNetworks/subnets/join/action"],
        },
    }],
});
const exampleDeployment = new azure.nginx.Deployment("example", {
    name: "example-nginx",
    resourceGroupName: example.name,
    sku: "standardv2_Monthly",
    location: example.location,
    diagnoseSupportEnabled: true,
    automaticUpgradeChannel: "stable",
    frontendPublic: {
        ipAddresses: [examplePublicIp.id],
    },
    networkInterfaces: [{
        subnetId: exampleSubnet.id,
    }],
    capacity: 20,
    email: "user@test.com",
});
Copy
import pulumi
import pulumi_azure as azure

example = azure.core.ResourceGroup("example",
    name="example-rg",
    location="West Europe")
example_public_ip = azure.network.PublicIp("example",
    name="example",
    resource_group_name=example.name,
    location=example.location,
    allocation_method="Static",
    sku="Standard",
    tags={
        "environment": "Production",
    })
example_virtual_network = azure.network.VirtualNetwork("example",
    name="example-vnet",
    address_spaces=["10.0.0.0/16"],
    location=example.location,
    resource_group_name=example.name)
example_subnet = azure.network.Subnet("example",
    name="example-subnet",
    resource_group_name=example.name,
    virtual_network_name=example_virtual_network.name,
    address_prefixes=["10.0.2.0/24"],
    delegations=[{
        "name": "delegation",
        "service_delegation": {
            "name": "NGINX.NGINXPLUS/nginxDeployments",
            "actions": ["Microsoft.Network/virtualNetworks/subnets/join/action"],
        },
    }])
example_deployment = azure.nginx.Deployment("example",
    name="example-nginx",
    resource_group_name=example.name,
    sku="standardv2_Monthly",
    location=example.location,
    diagnose_support_enabled=True,
    automatic_upgrade_channel="stable",
    frontend_public={
        "ip_addresses": [example_public_ip.id],
    },
    network_interfaces=[{
        "subnet_id": example_subnet.id,
    }],
    capacity=20,
    email="user@test.com")
Copy
package main

import (
	"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/core"
	"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/network"
	"github.com/pulumi/pulumi-azure/sdk/v6/go/azure/nginx"
	"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-rg"),
			Location: pulumi.String("West Europe"),
		})
		if err != nil {
			return err
		}
		examplePublicIp, err := network.NewPublicIp(ctx, "example", &network.PublicIpArgs{
			Name:              pulumi.String("example"),
			ResourceGroupName: example.Name,
			Location:          example.Location,
			AllocationMethod:  pulumi.String("Static"),
			Sku:               pulumi.String("Standard"),
			Tags: pulumi.StringMap{
				"environment": pulumi.String("Production"),
			},
		})
		if err != nil {
			return err
		}
		exampleVirtualNetwork, err := network.NewVirtualNetwork(ctx, "example", &network.VirtualNetworkArgs{
			Name: pulumi.String("example-vnet"),
			AddressSpaces: pulumi.StringArray{
				pulumi.String("10.0.0.0/16"),
			},
			Location:          example.Location,
			ResourceGroupName: example.Name,
		})
		if err != nil {
			return err
		}
		exampleSubnet, err := network.NewSubnet(ctx, "example", &network.SubnetArgs{
			Name:               pulumi.String("example-subnet"),
			ResourceGroupName:  example.Name,
			VirtualNetworkName: exampleVirtualNetwork.Name,
			AddressPrefixes: pulumi.StringArray{
				pulumi.String("10.0.2.0/24"),
			},
			Delegations: network.SubnetDelegationArray{
				&network.SubnetDelegationArgs{
					Name: pulumi.String("delegation"),
					ServiceDelegation: &network.SubnetDelegationServiceDelegationArgs{
						Name: pulumi.String("NGINX.NGINXPLUS/nginxDeployments"),
						Actions: pulumi.StringArray{
							pulumi.String("Microsoft.Network/virtualNetworks/subnets/join/action"),
						},
					},
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = nginx.NewDeployment(ctx, "example", &nginx.DeploymentArgs{
			Name:                    pulumi.String("example-nginx"),
			ResourceGroupName:       example.Name,
			Sku:                     pulumi.String("standardv2_Monthly"),
			Location:                example.Location,
			DiagnoseSupportEnabled:  pulumi.Bool(true),
			AutomaticUpgradeChannel: pulumi.String("stable"),
			FrontendPublic: &nginx.DeploymentFrontendPublicArgs{
				IpAddresses: pulumi.StringArray{
					examplePublicIp.ID(),
				},
			},
			NetworkInterfaces: nginx.DeploymentNetworkInterfaceArray{
				&nginx.DeploymentNetworkInterfaceArgs{
					SubnetId: exampleSubnet.ID(),
				},
			},
			Capacity: pulumi.Int(20),
			Email:    pulumi.String("user@test.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}
Copy
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-rg",
        Location = "West Europe",
    });

    var examplePublicIp = new Azure.Network.PublicIp("example", new()
    {
        Name = "example",
        ResourceGroupName = example.Name,
        Location = example.Location,
        AllocationMethod = "Static",
        Sku = "Standard",
        Tags = 
        {
            { "environment", "Production" },
        },
    });

    var exampleVirtualNetwork = new Azure.Network.VirtualNetwork("example", new()
    {
        Name = "example-vnet",
        AddressSpaces = new[]
        {
            "10.0.0.0/16",
        },
        Location = example.Location,
        ResourceGroupName = example.Name,
    });

    var exampleSubnet = new Azure.Network.Subnet("example", new()
    {
        Name = "example-subnet",
        ResourceGroupName = example.Name,
        VirtualNetworkName = exampleVirtualNetwork.Name,
        AddressPrefixes = new[]
        {
            "10.0.2.0/24",
        },
        Delegations = new[]
        {
            new Azure.Network.Inputs.SubnetDelegationArgs
            {
                Name = "delegation",
                ServiceDelegation = new Azure.Network.Inputs.SubnetDelegationServiceDelegationArgs
                {
                    Name = "NGINX.NGINXPLUS/nginxDeployments",
                    Actions = new[]
                    {
                        "Microsoft.Network/virtualNetworks/subnets/join/action",
                    },
                },
            },
        },
    });

    var exampleDeployment = new Azure.Nginx.Deployment("example", new()
    {
        Name = "example-nginx",
        ResourceGroupName = example.Name,
        Sku = "standardv2_Monthly",
        Location = example.Location,
        DiagnoseSupportEnabled = true,
        AutomaticUpgradeChannel = "stable",
        FrontendPublic = new Azure.Nginx.Inputs.DeploymentFrontendPublicArgs
        {
            IpAddresses = new[]
            {
                examplePublicIp.Id,
            },
        },
        NetworkInterfaces = new[]
        {
            new Azure.Nginx.Inputs.DeploymentNetworkInterfaceArgs
            {
                SubnetId = exampleSubnet.Id,
            },
        },
        Capacity = 20,
        Email = "user@test.com",
    });

});
Copy
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.network.PublicIp;
import com.pulumi.azure.network.PublicIpArgs;
import com.pulumi.azure.network.VirtualNetwork;
import com.pulumi.azure.network.VirtualNetworkArgs;
import com.pulumi.azure.network.Subnet;
import com.pulumi.azure.network.SubnetArgs;
import com.pulumi.azure.network.inputs.SubnetDelegationArgs;
import com.pulumi.azure.network.inputs.SubnetDelegationServiceDelegationArgs;
import com.pulumi.azure.nginx.Deployment;
import com.pulumi.azure.nginx.DeploymentArgs;
import com.pulumi.azure.nginx.inputs.DeploymentFrontendPublicArgs;
import com.pulumi.azure.nginx.inputs.DeploymentNetworkInterfaceArgs;
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-rg")
            .location("West Europe")
            .build());

        var examplePublicIp = new PublicIp("examplePublicIp", PublicIpArgs.builder()
            .name("example")
            .resourceGroupName(example.name())
            .location(example.location())
            .allocationMethod("Static")
            .sku("Standard")
            .tags(Map.of("environment", "Production"))
            .build());

        var exampleVirtualNetwork = new VirtualNetwork("exampleVirtualNetwork", VirtualNetworkArgs.builder()
            .name("example-vnet")
            .addressSpaces("10.0.0.0/16")
            .location(example.location())
            .resourceGroupName(example.name())
            .build());

        var exampleSubnet = new Subnet("exampleSubnet", SubnetArgs.builder()
            .name("example-subnet")
            .resourceGroupName(example.name())
            .virtualNetworkName(exampleVirtualNetwork.name())
            .addressPrefixes("10.0.2.0/24")
            .delegations(SubnetDelegationArgs.builder()
                .name("delegation")
                .serviceDelegation(SubnetDelegationServiceDelegationArgs.builder()
                    .name("NGINX.NGINXPLUS/nginxDeployments")
                    .actions("Microsoft.Network/virtualNetworks/subnets/join/action")
                    .build())
                .build())
            .build());

        var exampleDeployment = new Deployment("exampleDeployment", DeploymentArgs.builder()
            .name("example-nginx")
            .resourceGroupName(example.name())
            .sku("standardv2_Monthly")
            .location(example.location())
            .diagnoseSupportEnabled(true)
            .automaticUpgradeChannel("stable")
            .frontendPublic(DeploymentFrontendPublicArgs.builder()
                .ipAddresses(examplePublicIp.id())
                .build())
            .networkInterfaces(DeploymentNetworkInterfaceArgs.builder()
                .subnetId(exampleSubnet.id())
                .build())
            .capacity(20)
            .email("user@test.com")
            .build());

    }
}
Copy
resources:
  example:
    type: azure:core:ResourceGroup
    properties:
      name: example-rg
      location: West Europe
  examplePublicIp:
    type: azure:network:PublicIp
    name: example
    properties:
      name: example
      resourceGroupName: ${example.name}
      location: ${example.location}
      allocationMethod: Static
      sku: Standard
      tags:
        environment: Production
  exampleVirtualNetwork:
    type: azure:network:VirtualNetwork
    name: example
    properties:
      name: example-vnet
      addressSpaces:
        - 10.0.0.0/16
      location: ${example.location}
      resourceGroupName: ${example.name}
  exampleSubnet:
    type: azure:network:Subnet
    name: example
    properties:
      name: example-subnet
      resourceGroupName: ${example.name}
      virtualNetworkName: ${exampleVirtualNetwork.name}
      addressPrefixes:
        - 10.0.2.0/24
      delegations:
        - name: delegation
          serviceDelegation:
            name: NGINX.NGINXPLUS/nginxDeployments
            actions:
              - Microsoft.Network/virtualNetworks/subnets/join/action
  exampleDeployment:
    type: azure:nginx:Deployment
    name: example
    properties:
      name: example-nginx
      resourceGroupName: ${example.name}
      sku: standardv2_Monthly
      location: ${example.location}
      diagnoseSupportEnabled: true
      automaticUpgradeChannel: stable
      frontendPublic:
        ipAddresses:
          - ${examplePublicIp.id}
      networkInterfaces:
        - subnetId: ${exampleSubnet.id}
      capacity: 20
      email: user@test.com
Copy

API Providers

This resource uses the following Azure API Providers:

  • Nginx.NginxPlus: 2024-11-01-preview

Create Deployment Resource

Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

Constructor syntax

new Deployment(name: string, args: DeploymentArgs, opts?: CustomResourceOptions);
@overload
def Deployment(resource_name: str,
               args: DeploymentArgs,
               opts: Optional[ResourceOptions] = None)

@overload
def Deployment(resource_name: str,
               opts: Optional[ResourceOptions] = None,
               resource_group_name: Optional[str] = None,
               sku: Optional[str] = None,
               location: Optional[str] = None,
               logging_storage_accounts: Optional[Sequence[DeploymentLoggingStorageAccountArgs]] = None,
               email: Optional[str] = None,
               frontend_privates: Optional[Sequence[DeploymentFrontendPrivateArgs]] = None,
               frontend_public: Optional[DeploymentFrontendPublicArgs] = None,
               identity: Optional[DeploymentIdentityArgs] = None,
               auto_scale_profiles: Optional[Sequence[DeploymentAutoScaleProfileArgs]] = None,
               diagnose_support_enabled: Optional[bool] = None,
               managed_resource_group: Optional[str] = None,
               name: Optional[str] = None,
               network_interfaces: Optional[Sequence[DeploymentNetworkInterfaceArgs]] = None,
               capacity: Optional[int] = None,
               automatic_upgrade_channel: Optional[str] = None,
               tags: Optional[Mapping[str, str]] = None,
               web_application_firewall: Optional[DeploymentWebApplicationFirewallArgs] = None)
func NewDeployment(ctx *Context, name string, args DeploymentArgs, opts ...ResourceOption) (*Deployment, error)
public Deployment(string name, DeploymentArgs args, CustomResourceOptions? opts = null)
public Deployment(String name, DeploymentArgs args)
public Deployment(String name, DeploymentArgs args, CustomResourceOptions options)
type: azure:nginx:Deployment
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.

Parameters

name This property is required. string
The unique name of the resource.
args This property is required. DeploymentArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
resource_name This property is required. str
The unique name of the resource.
args This property is required. DeploymentArgs
The arguments to resource properties.
opts ResourceOptions
Bag of options to control resource's behavior.
ctx Context
Context object for the current deployment.
name This property is required. string
The unique name of the resource.
args This property is required. DeploymentArgs
The arguments to resource properties.
opts ResourceOption
Bag of options to control resource's behavior.
name This property is required. string
The unique name of the resource.
args This property is required. DeploymentArgs
The arguments to resource properties.
opts CustomResourceOptions
Bag of options to control resource's behavior.
name This property is required. String
The unique name of the resource.
args This property is required. DeploymentArgs
The arguments to resource properties.
options CustomResourceOptions
Bag of options to control resource's behavior.

Constructor example

The following reference example uses placeholder values for all input properties.

var azureDeploymentResource = new Azure.Nginx.Deployment("azureDeploymentResource", new()
{
    ResourceGroupName = "string",
    Sku = "string",
    Location = "string",
    Email = "string",
    FrontendPrivates = new[]
    {
        new Azure.Nginx.Inputs.DeploymentFrontendPrivateArgs
        {
            AllocationMethod = "string",
            IpAddress = "string",
            SubnetId = "string",
        },
    },
    FrontendPublic = new Azure.Nginx.Inputs.DeploymentFrontendPublicArgs
    {
        IpAddresses = new[]
        {
            "string",
        },
    },
    Identity = new Azure.Nginx.Inputs.DeploymentIdentityArgs
    {
        Type = "string",
        IdentityIds = new[]
        {
            "string",
        },
        PrincipalId = "string",
        TenantId = "string",
    },
    AutoScaleProfiles = new[]
    {
        new Azure.Nginx.Inputs.DeploymentAutoScaleProfileArgs
        {
            MaxCapacity = 0,
            MinCapacity = 0,
            Name = "string",
        },
    },
    DiagnoseSupportEnabled = false,
    Name = "string",
    NetworkInterfaces = new[]
    {
        new Azure.Nginx.Inputs.DeploymentNetworkInterfaceArgs
        {
            SubnetId = "string",
        },
    },
    Capacity = 0,
    AutomaticUpgradeChannel = "string",
    Tags = 
    {
        { "string", "string" },
    },
    WebApplicationFirewall = new Azure.Nginx.Inputs.DeploymentWebApplicationFirewallArgs
    {
        ActivationStateEnabled = false,
        Statuses = new[]
        {
            new Azure.Nginx.Inputs.DeploymentWebApplicationFirewallStatusArgs
            {
                AttackSignaturesPackages = new[]
                {
                    new Azure.Nginx.Inputs.DeploymentWebApplicationFirewallStatusAttackSignaturesPackageArgs
                    {
                        RevisionDatetime = "string",
                        Version = "string",
                    },
                },
                BotSignaturesPackages = new[]
                {
                    new Azure.Nginx.Inputs.DeploymentWebApplicationFirewallStatusBotSignaturesPackageArgs
                    {
                        RevisionDatetime = "string",
                        Version = "string",
                    },
                },
                ComponentVersions = new[]
                {
                    new Azure.Nginx.Inputs.DeploymentWebApplicationFirewallStatusComponentVersionArgs
                    {
                        WafEngineVersion = "string",
                        WafNginxVersion = "string",
                    },
                },
                ThreatCampaignsPackages = new[]
                {
                    new Azure.Nginx.Inputs.DeploymentWebApplicationFirewallStatusThreatCampaignsPackageArgs
                    {
                        RevisionDatetime = "string",
                        Version = "string",
                    },
                },
            },
        },
    },
});
Copy
example, err := nginx.NewDeployment(ctx, "azureDeploymentResource", &nginx.DeploymentArgs{
	ResourceGroupName: pulumi.String("string"),
	Sku:               pulumi.String("string"),
	Location:          pulumi.String("string"),
	Email:             pulumi.String("string"),
	FrontendPrivates: nginx.DeploymentFrontendPrivateArray{
		&nginx.DeploymentFrontendPrivateArgs{
			AllocationMethod: pulumi.String("string"),
			IpAddress:        pulumi.String("string"),
			SubnetId:         pulumi.String("string"),
		},
	},
	FrontendPublic: &nginx.DeploymentFrontendPublicArgs{
		IpAddresses: pulumi.StringArray{
			pulumi.String("string"),
		},
	},
	Identity: &nginx.DeploymentIdentityArgs{
		Type: pulumi.String("string"),
		IdentityIds: pulumi.StringArray{
			pulumi.String("string"),
		},
		PrincipalId: pulumi.String("string"),
		TenantId:    pulumi.String("string"),
	},
	AutoScaleProfiles: nginx.DeploymentAutoScaleProfileArray{
		&nginx.DeploymentAutoScaleProfileArgs{
			MaxCapacity: pulumi.Int(0),
			MinCapacity: pulumi.Int(0),
			Name:        pulumi.String("string"),
		},
	},
	DiagnoseSupportEnabled: pulumi.Bool(false),
	Name:                   pulumi.String("string"),
	NetworkInterfaces: nginx.DeploymentNetworkInterfaceArray{
		&nginx.DeploymentNetworkInterfaceArgs{
			SubnetId: pulumi.String("string"),
		},
	},
	Capacity:                pulumi.Int(0),
	AutomaticUpgradeChannel: pulumi.String("string"),
	Tags: pulumi.StringMap{
		"string": pulumi.String("string"),
	},
	WebApplicationFirewall: &nginx.DeploymentWebApplicationFirewallArgs{
		ActivationStateEnabled: pulumi.Bool(false),
		Statuses: nginx.DeploymentWebApplicationFirewallStatusArray{
			&nginx.DeploymentWebApplicationFirewallStatusArgs{
				AttackSignaturesPackages: nginx.DeploymentWebApplicationFirewallStatusAttackSignaturesPackageArray{
					&nginx.DeploymentWebApplicationFirewallStatusAttackSignaturesPackageArgs{
						RevisionDatetime: pulumi.String("string"),
						Version:          pulumi.String("string"),
					},
				},
				BotSignaturesPackages: nginx.DeploymentWebApplicationFirewallStatusBotSignaturesPackageArray{
					&nginx.DeploymentWebApplicationFirewallStatusBotSignaturesPackageArgs{
						RevisionDatetime: pulumi.String("string"),
						Version:          pulumi.String("string"),
					},
				},
				ComponentVersions: nginx.DeploymentWebApplicationFirewallStatusComponentVersionArray{
					&nginx.DeploymentWebApplicationFirewallStatusComponentVersionArgs{
						WafEngineVersion: pulumi.String("string"),
						WafNginxVersion:  pulumi.String("string"),
					},
				},
				ThreatCampaignsPackages: nginx.DeploymentWebApplicationFirewallStatusThreatCampaignsPackageArray{
					&nginx.DeploymentWebApplicationFirewallStatusThreatCampaignsPackageArgs{
						RevisionDatetime: pulumi.String("string"),
						Version:          pulumi.String("string"),
					},
				},
			},
		},
	},
})
Copy
var azureDeploymentResource = new com.pulumi.azure.nginx.Deployment("azureDeploymentResource", com.pulumi.azure.nginx.DeploymentArgs.builder()
    .resourceGroupName("string")
    .sku("string")
    .location("string")
    .email("string")
    .frontendPrivates(DeploymentFrontendPrivateArgs.builder()
        .allocationMethod("string")
        .ipAddress("string")
        .subnetId("string")
        .build())
    .frontendPublic(DeploymentFrontendPublicArgs.builder()
        .ipAddresses("string")
        .build())
    .identity(DeploymentIdentityArgs.builder()
        .type("string")
        .identityIds("string")
        .principalId("string")
        .tenantId("string")
        .build())
    .autoScaleProfiles(DeploymentAutoScaleProfileArgs.builder()
        .maxCapacity(0)
        .minCapacity(0)
        .name("string")
        .build())
    .diagnoseSupportEnabled(false)
    .name("string")
    .networkInterfaces(DeploymentNetworkInterfaceArgs.builder()
        .subnetId("string")
        .build())
    .capacity(0)
    .automaticUpgradeChannel("string")
    .tags(Map.of("string", "string"))
    .webApplicationFirewall(DeploymentWebApplicationFirewallArgs.builder()
        .activationStateEnabled(false)
        .statuses(DeploymentWebApplicationFirewallStatusArgs.builder()
            .attackSignaturesPackages(DeploymentWebApplicationFirewallStatusAttackSignaturesPackageArgs.builder()
                .revisionDatetime("string")
                .version("string")
                .build())
            .botSignaturesPackages(DeploymentWebApplicationFirewallStatusBotSignaturesPackageArgs.builder()
                .revisionDatetime("string")
                .version("string")
                .build())
            .componentVersions(DeploymentWebApplicationFirewallStatusComponentVersionArgs.builder()
                .wafEngineVersion("string")
                .wafNginxVersion("string")
                .build())
            .threatCampaignsPackages(DeploymentWebApplicationFirewallStatusThreatCampaignsPackageArgs.builder()
                .revisionDatetime("string")
                .version("string")
                .build())
            .build())
        .build())
    .build());
Copy
azure_deployment_resource = azure.nginx.Deployment("azureDeploymentResource",
    resource_group_name="string",
    sku="string",
    location="string",
    email="string",
    frontend_privates=[{
        "allocation_method": "string",
        "ip_address": "string",
        "subnet_id": "string",
    }],
    frontend_public={
        "ip_addresses": ["string"],
    },
    identity={
        "type": "string",
        "identity_ids": ["string"],
        "principal_id": "string",
        "tenant_id": "string",
    },
    auto_scale_profiles=[{
        "max_capacity": 0,
        "min_capacity": 0,
        "name": "string",
    }],
    diagnose_support_enabled=False,
    name="string",
    network_interfaces=[{
        "subnet_id": "string",
    }],
    capacity=0,
    automatic_upgrade_channel="string",
    tags={
        "string": "string",
    },
    web_application_firewall={
        "activation_state_enabled": False,
        "statuses": [{
            "attack_signatures_packages": [{
                "revision_datetime": "string",
                "version": "string",
            }],
            "bot_signatures_packages": [{
                "revision_datetime": "string",
                "version": "string",
            }],
            "component_versions": [{
                "waf_engine_version": "string",
                "waf_nginx_version": "string",
            }],
            "threat_campaigns_packages": [{
                "revision_datetime": "string",
                "version": "string",
            }],
        }],
    })
Copy
const azureDeploymentResource = new azure.nginx.Deployment("azureDeploymentResource", {
    resourceGroupName: "string",
    sku: "string",
    location: "string",
    email: "string",
    frontendPrivates: [{
        allocationMethod: "string",
        ipAddress: "string",
        subnetId: "string",
    }],
    frontendPublic: {
        ipAddresses: ["string"],
    },
    identity: {
        type: "string",
        identityIds: ["string"],
        principalId: "string",
        tenantId: "string",
    },
    autoScaleProfiles: [{
        maxCapacity: 0,
        minCapacity: 0,
        name: "string",
    }],
    diagnoseSupportEnabled: false,
    name: "string",
    networkInterfaces: [{
        subnetId: "string",
    }],
    capacity: 0,
    automaticUpgradeChannel: "string",
    tags: {
        string: "string",
    },
    webApplicationFirewall: {
        activationStateEnabled: false,
        statuses: [{
            attackSignaturesPackages: [{
                revisionDatetime: "string",
                version: "string",
            }],
            botSignaturesPackages: [{
                revisionDatetime: "string",
                version: "string",
            }],
            componentVersions: [{
                wafEngineVersion: "string",
                wafNginxVersion: "string",
            }],
            threatCampaignsPackages: [{
                revisionDatetime: "string",
                version: "string",
            }],
        }],
    },
});
Copy
type: azure:nginx:Deployment
properties:
    autoScaleProfiles:
        - maxCapacity: 0
          minCapacity: 0
          name: string
    automaticUpgradeChannel: string
    capacity: 0
    diagnoseSupportEnabled: false
    email: string
    frontendPrivates:
        - allocationMethod: string
          ipAddress: string
          subnetId: string
    frontendPublic:
        ipAddresses:
            - string
    identity:
        identityIds:
            - string
        principalId: string
        tenantId: string
        type: string
    location: string
    name: string
    networkInterfaces:
        - subnetId: string
    resourceGroupName: string
    sku: string
    tags:
        string: string
    webApplicationFirewall:
        activationStateEnabled: false
        statuses:
            - attackSignaturesPackages:
                - revisionDatetime: string
                  version: string
              botSignaturesPackages:
                - revisionDatetime: string
                  version: string
              componentVersions:
                - wafEngineVersion: string
                  wafNginxVersion: string
              threatCampaignsPackages:
                - revisionDatetime: string
                  version: string
Copy

Deployment Resource Properties

To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.

Inputs

In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.

The Deployment resource accepts the following input properties:

ResourceGroupName
This property is required.
Changes to this property will trigger replacement.
string
The name of the Resource Group where the NGINX Deployment should exist. Changing this forces a new NGINX Deployment to be created.
Sku This property is required. string
AutoScaleProfiles List<DeploymentAutoScaleProfile>
An auto_scale_profile block as defined below.
AutomaticUpgradeChannel string
Specify the automatic upgrade channel for the NGINX deployment. Defaults to stable. The possible values are stable and preview.
Capacity int

Specify the number of NGINX capacity units for this NGINX deployment.

Note: For more information on NGINX capacity units, please refer to the NGINX scaling guidance documentation

DiagnoseSupportEnabled bool
Should the metrics be exported to Azure Monitor?
Email string
Specify the preferred support contact email address for receiving alerts and notifications.
FrontendPrivates List<DeploymentFrontendPrivate>
One or more frontend_private blocks as defined below.
FrontendPublic DeploymentFrontendPublic
A frontend_public block as defined below.
Identity DeploymentIdentity
An identity block as defined below.
Location Changes to this property will trigger replacement. string
The Azure Region where the NGINX Deployment should exist. Changing this forces a new NGINX Deployment to be created.
LoggingStorageAccounts List<DeploymentLoggingStorageAccount>

Deprecated: The logging_storage_account block has been deprecated and will be removed in v5.0 of the AzureRM Provider. To enable logs, use the azure.monitoring.DiagnosticSetting resource instead.

ManagedResourceGroup string

Deprecated: The managed_resource_group field isn't supported by the API anymore and has been deprecated and will be removed in v5.0 of the AzureRM Provider.

Name Changes to this property will trigger replacement. string
The name which should be used for this NGINX Deployment. Changing this forces a new NGINX Deployment to be created.
NetworkInterfaces List<DeploymentNetworkInterface>
One or more network_interface blocks as defined below.
Tags Dictionary<string, string>
A mapping of tags which should be assigned to the NGINX Deployment.
WebApplicationFirewall DeploymentWebApplicationFirewall
A web_application_firewall blocks as defined below.
ResourceGroupName
This property is required.
Changes to this property will trigger replacement.
string
The name of the Resource Group where the NGINX Deployment should exist. Changing this forces a new NGINX Deployment to be created.
Sku This property is required. string
AutoScaleProfiles []DeploymentAutoScaleProfileArgs
An auto_scale_profile block as defined below.
AutomaticUpgradeChannel string
Specify the automatic upgrade channel for the NGINX deployment. Defaults to stable. The possible values are stable and preview.
Capacity int

Specify the number of NGINX capacity units for this NGINX deployment.

Note: For more information on NGINX capacity units, please refer to the NGINX scaling guidance documentation

DiagnoseSupportEnabled bool
Should the metrics be exported to Azure Monitor?
Email string
Specify the preferred support contact email address for receiving alerts and notifications.
FrontendPrivates []DeploymentFrontendPrivateArgs
One or more frontend_private blocks as defined below.
FrontendPublic DeploymentFrontendPublicArgs
A frontend_public block as defined below.
Identity DeploymentIdentityArgs
An identity block as defined below.
Location Changes to this property will trigger replacement. string
The Azure Region where the NGINX Deployment should exist. Changing this forces a new NGINX Deployment to be created.
LoggingStorageAccounts []DeploymentLoggingStorageAccountArgs

Deprecated: The logging_storage_account block has been deprecated and will be removed in v5.0 of the AzureRM Provider. To enable logs, use the azure.monitoring.DiagnosticSetting resource instead.

ManagedResourceGroup string

Deprecated: The managed_resource_group field isn't supported by the API anymore and has been deprecated and will be removed in v5.0 of the AzureRM Provider.

Name Changes to this property will trigger replacement. string
The name which should be used for this NGINX Deployment. Changing this forces a new NGINX Deployment to be created.
NetworkInterfaces []DeploymentNetworkInterfaceArgs
One or more network_interface blocks as defined below.
Tags map[string]string
A mapping of tags which should be assigned to the NGINX Deployment.
WebApplicationFirewall DeploymentWebApplicationFirewallArgs
A web_application_firewall blocks as defined below.
resourceGroupName
This property is required.
Changes to this property will trigger replacement.
String
The name of the Resource Group where the NGINX Deployment should exist. Changing this forces a new NGINX Deployment to be created.
sku This property is required. String
autoScaleProfiles List<DeploymentAutoScaleProfile>
An auto_scale_profile block as defined below.
automaticUpgradeChannel String
Specify the automatic upgrade channel for the NGINX deployment. Defaults to stable. The possible values are stable and preview.
capacity Integer

Specify the number of NGINX capacity units for this NGINX deployment.

Note: For more information on NGINX capacity units, please refer to the NGINX scaling guidance documentation

diagnoseSupportEnabled Boolean
Should the metrics be exported to Azure Monitor?
email String
Specify the preferred support contact email address for receiving alerts and notifications.
frontendPrivates List<DeploymentFrontendPrivate>
One or more frontend_private blocks as defined below.
frontendPublic DeploymentFrontendPublic
A frontend_public block as defined below.
identity DeploymentIdentity
An identity block as defined below.
location Changes to this property will trigger replacement. String
The Azure Region where the NGINX Deployment should exist. Changing this forces a new NGINX Deployment to be created.
loggingStorageAccounts List<DeploymentLoggingStorageAccount>

Deprecated: The logging_storage_account block has been deprecated and will be removed in v5.0 of the AzureRM Provider. To enable logs, use the azure.monitoring.DiagnosticSetting resource instead.

managedResourceGroup String

Deprecated: The managed_resource_group field isn't supported by the API anymore and has been deprecated and will be removed in v5.0 of the AzureRM Provider.

name Changes to this property will trigger replacement. String
The name which should be used for this NGINX Deployment. Changing this forces a new NGINX Deployment to be created.
networkInterfaces List<DeploymentNetworkInterface>
One or more network_interface blocks as defined below.
tags Map<String,String>
A mapping of tags which should be assigned to the NGINX Deployment.
webApplicationFirewall DeploymentWebApplicationFirewall
A web_application_firewall blocks as defined below.
resourceGroupName
This property is required.
Changes to this property will trigger replacement.
string
The name of the Resource Group where the NGINX Deployment should exist. Changing this forces a new NGINX Deployment to be created.
sku This property is required. string
autoScaleProfiles DeploymentAutoScaleProfile[]
An auto_scale_profile block as defined below.
automaticUpgradeChannel string
Specify the automatic upgrade channel for the NGINX deployment. Defaults to stable. The possible values are stable and preview.
capacity number

Specify the number of NGINX capacity units for this NGINX deployment.

Note: For more information on NGINX capacity units, please refer to the NGINX scaling guidance documentation

diagnoseSupportEnabled boolean
Should the metrics be exported to Azure Monitor?
email string
Specify the preferred support contact email address for receiving alerts and notifications.
frontendPrivates DeploymentFrontendPrivate[]
One or more frontend_private blocks as defined below.
frontendPublic DeploymentFrontendPublic
A frontend_public block as defined below.
identity DeploymentIdentity
An identity block as defined below.
location Changes to this property will trigger replacement. string
The Azure Region where the NGINX Deployment should exist. Changing this forces a new NGINX Deployment to be created.
loggingStorageAccounts DeploymentLoggingStorageAccount[]

Deprecated: The logging_storage_account block has been deprecated and will be removed in v5.0 of the AzureRM Provider. To enable logs, use the azure.monitoring.DiagnosticSetting resource instead.

managedResourceGroup string

Deprecated: The managed_resource_group field isn't supported by the API anymore and has been deprecated and will be removed in v5.0 of the AzureRM Provider.

name Changes to this property will trigger replacement. string
The name which should be used for this NGINX Deployment. Changing this forces a new NGINX Deployment to be created.
networkInterfaces DeploymentNetworkInterface[]
One or more network_interface blocks as defined below.
tags {[key: string]: string}
A mapping of tags which should be assigned to the NGINX Deployment.
webApplicationFirewall DeploymentWebApplicationFirewall
A web_application_firewall blocks as defined below.
resource_group_name
This property is required.
Changes to this property will trigger replacement.
str
The name of the Resource Group where the NGINX Deployment should exist. Changing this forces a new NGINX Deployment to be created.
sku This property is required. str
auto_scale_profiles Sequence[DeploymentAutoScaleProfileArgs]
An auto_scale_profile block as defined below.
automatic_upgrade_channel str
Specify the automatic upgrade channel for the NGINX deployment. Defaults to stable. The possible values are stable and preview.
capacity int

Specify the number of NGINX capacity units for this NGINX deployment.

Note: For more information on NGINX capacity units, please refer to the NGINX scaling guidance documentation

diagnose_support_enabled bool
Should the metrics be exported to Azure Monitor?
email str
Specify the preferred support contact email address for receiving alerts and notifications.
frontend_privates Sequence[DeploymentFrontendPrivateArgs]
One or more frontend_private blocks as defined below.
frontend_public DeploymentFrontendPublicArgs
A frontend_public block as defined below.
identity DeploymentIdentityArgs
An identity block as defined below.
location Changes to this property will trigger replacement. str
The Azure Region where the NGINX Deployment should exist. Changing this forces a new NGINX Deployment to be created.
logging_storage_accounts Sequence[DeploymentLoggingStorageAccountArgs]

Deprecated: The logging_storage_account block has been deprecated and will be removed in v5.0 of the AzureRM Provider. To enable logs, use the azure.monitoring.DiagnosticSetting resource instead.

managed_resource_group str

Deprecated: The managed_resource_group field isn't supported by the API anymore and has been deprecated and will be removed in v5.0 of the AzureRM Provider.

name Changes to this property will trigger replacement. str
The name which should be used for this NGINX Deployment. Changing this forces a new NGINX Deployment to be created.
network_interfaces Sequence[DeploymentNetworkInterfaceArgs]
One or more network_interface blocks as defined below.
tags Mapping[str, str]
A mapping of tags which should be assigned to the NGINX Deployment.
web_application_firewall DeploymentWebApplicationFirewallArgs
A web_application_firewall blocks as defined below.
resourceGroupName
This property is required.
Changes to this property will trigger replacement.
String
The name of the Resource Group where the NGINX Deployment should exist. Changing this forces a new NGINX Deployment to be created.
sku This property is required. String
autoScaleProfiles List<Property Map>
An auto_scale_profile block as defined below.
automaticUpgradeChannel String
Specify the automatic upgrade channel for the NGINX deployment. Defaults to stable. The possible values are stable and preview.
capacity Number

Specify the number of NGINX capacity units for this NGINX deployment.

Note: For more information on NGINX capacity units, please refer to the NGINX scaling guidance documentation

diagnoseSupportEnabled Boolean
Should the metrics be exported to Azure Monitor?
email String
Specify the preferred support contact email address for receiving alerts and notifications.
frontendPrivates List<Property Map>
One or more frontend_private blocks as defined below.
frontendPublic Property Map
A frontend_public block as defined below.
identity Property Map
An identity block as defined below.
location Changes to this property will trigger replacement. String
The Azure Region where the NGINX Deployment should exist. Changing this forces a new NGINX Deployment to be created.
loggingStorageAccounts List<Property Map>

Deprecated: The logging_storage_account block has been deprecated and will be removed in v5.0 of the AzureRM Provider. To enable logs, use the azure.monitoring.DiagnosticSetting resource instead.

managedResourceGroup String

Deprecated: The managed_resource_group field isn't supported by the API anymore and has been deprecated and will be removed in v5.0 of the AzureRM Provider.

name Changes to this property will trigger replacement. String
The name which should be used for this NGINX Deployment. Changing this forces a new NGINX Deployment to be created.
networkInterfaces List<Property Map>
One or more network_interface blocks as defined below.
tags Map<String>
A mapping of tags which should be assigned to the NGINX Deployment.
webApplicationFirewall Property Map
A web_application_firewall blocks as defined below.

Outputs

All input properties are implicitly available as output properties. Additionally, the Deployment resource produces the following output properties:

DataplaneApiEndpoint string
The dataplane API endpoint of the NGINX Deployment.
Id string
The provider-assigned unique ID for this managed resource.
IpAddress string
The IP address of the NGINX Deployment.
NginxVersion string
The version of the NGINX Deployment.
DataplaneApiEndpoint string
The dataplane API endpoint of the NGINX Deployment.
Id string
The provider-assigned unique ID for this managed resource.
IpAddress string
The IP address of the NGINX Deployment.
NginxVersion string
The version of the NGINX Deployment.
dataplaneApiEndpoint String
The dataplane API endpoint of the NGINX Deployment.
id String
The provider-assigned unique ID for this managed resource.
ipAddress String
The IP address of the NGINX Deployment.
nginxVersion String
The version of the NGINX Deployment.
dataplaneApiEndpoint string
The dataplane API endpoint of the NGINX Deployment.
id string
The provider-assigned unique ID for this managed resource.
ipAddress string
The IP address of the NGINX Deployment.
nginxVersion string
The version of the NGINX Deployment.
dataplane_api_endpoint str
The dataplane API endpoint of the NGINX Deployment.
id str
The provider-assigned unique ID for this managed resource.
ip_address str
The IP address of the NGINX Deployment.
nginx_version str
The version of the NGINX Deployment.
dataplaneApiEndpoint String
The dataplane API endpoint of the NGINX Deployment.
id String
The provider-assigned unique ID for this managed resource.
ipAddress String
The IP address of the NGINX Deployment.
nginxVersion String
The version of the NGINX Deployment.

Look up Existing Deployment Resource

Get an existing Deployment resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

public static get(name: string, id: Input<ID>, state?: DeploymentState, opts?: CustomResourceOptions): Deployment
@staticmethod
def get(resource_name: str,
        id: str,
        opts: Optional[ResourceOptions] = None,
        auto_scale_profiles: Optional[Sequence[DeploymentAutoScaleProfileArgs]] = None,
        automatic_upgrade_channel: Optional[str] = None,
        capacity: Optional[int] = None,
        dataplane_api_endpoint: Optional[str] = None,
        diagnose_support_enabled: Optional[bool] = None,
        email: Optional[str] = None,
        frontend_privates: Optional[Sequence[DeploymentFrontendPrivateArgs]] = None,
        frontend_public: Optional[DeploymentFrontendPublicArgs] = None,
        identity: Optional[DeploymentIdentityArgs] = None,
        ip_address: Optional[str] = None,
        location: Optional[str] = None,
        logging_storage_accounts: Optional[Sequence[DeploymentLoggingStorageAccountArgs]] = None,
        managed_resource_group: Optional[str] = None,
        name: Optional[str] = None,
        network_interfaces: Optional[Sequence[DeploymentNetworkInterfaceArgs]] = None,
        nginx_version: Optional[str] = None,
        resource_group_name: Optional[str] = None,
        sku: Optional[str] = None,
        tags: Optional[Mapping[str, str]] = None,
        web_application_firewall: Optional[DeploymentWebApplicationFirewallArgs] = None) -> Deployment
func GetDeployment(ctx *Context, name string, id IDInput, state *DeploymentState, opts ...ResourceOption) (*Deployment, error)
public static Deployment Get(string name, Input<string> id, DeploymentState? state, CustomResourceOptions? opts = null)
public static Deployment get(String name, Output<String> id, DeploymentState state, CustomResourceOptions options)
resources:  _:    type: azure:nginx:Deployment    get:      id: ${id}
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
resource_name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
name This property is required.
The unique name of the resulting resource.
id This property is required.
The unique provider ID of the resource to lookup.
state
Any extra arguments used during the lookup.
opts
A bag of options that control this resource's behavior.
The following state arguments are supported:
AutoScaleProfiles List<DeploymentAutoScaleProfile>
An auto_scale_profile block as defined below.
AutomaticUpgradeChannel string
Specify the automatic upgrade channel for the NGINX deployment. Defaults to stable. The possible values are stable and preview.
Capacity int

Specify the number of NGINX capacity units for this NGINX deployment.

Note: For more information on NGINX capacity units, please refer to the NGINX scaling guidance documentation

DataplaneApiEndpoint string
The dataplane API endpoint of the NGINX Deployment.
DiagnoseSupportEnabled bool
Should the metrics be exported to Azure Monitor?
Email string
Specify the preferred support contact email address for receiving alerts and notifications.
FrontendPrivates List<DeploymentFrontendPrivate>
One or more frontend_private blocks as defined below.
FrontendPublic DeploymentFrontendPublic
A frontend_public block as defined below.
Identity DeploymentIdentity
An identity block as defined below.
IpAddress string
The IP address of the NGINX Deployment.
Location Changes to this property will trigger replacement. string
The Azure Region where the NGINX Deployment should exist. Changing this forces a new NGINX Deployment to be created.
LoggingStorageAccounts List<DeploymentLoggingStorageAccount>

Deprecated: The logging_storage_account block has been deprecated and will be removed in v5.0 of the AzureRM Provider. To enable logs, use the azure.monitoring.DiagnosticSetting resource instead.

ManagedResourceGroup string

Deprecated: The managed_resource_group field isn't supported by the API anymore and has been deprecated and will be removed in v5.0 of the AzureRM Provider.

Name Changes to this property will trigger replacement. string
The name which should be used for this NGINX Deployment. Changing this forces a new NGINX Deployment to be created.
NetworkInterfaces List<DeploymentNetworkInterface>
One or more network_interface blocks as defined below.
NginxVersion string
The version of the NGINX Deployment.
ResourceGroupName Changes to this property will trigger replacement. string
The name of the Resource Group where the NGINX Deployment should exist. Changing this forces a new NGINX Deployment to be created.
Sku string
Tags Dictionary<string, string>
A mapping of tags which should be assigned to the NGINX Deployment.
WebApplicationFirewall DeploymentWebApplicationFirewall
A web_application_firewall blocks as defined below.
AutoScaleProfiles []DeploymentAutoScaleProfileArgs
An auto_scale_profile block as defined below.
AutomaticUpgradeChannel string
Specify the automatic upgrade channel for the NGINX deployment. Defaults to stable. The possible values are stable and preview.
Capacity int

Specify the number of NGINX capacity units for this NGINX deployment.

Note: For more information on NGINX capacity units, please refer to the NGINX scaling guidance documentation

DataplaneApiEndpoint string
The dataplane API endpoint of the NGINX Deployment.
DiagnoseSupportEnabled bool
Should the metrics be exported to Azure Monitor?
Email string
Specify the preferred support contact email address for receiving alerts and notifications.
FrontendPrivates []DeploymentFrontendPrivateArgs
One or more frontend_private blocks as defined below.
FrontendPublic DeploymentFrontendPublicArgs
A frontend_public block as defined below.
Identity DeploymentIdentityArgs
An identity block as defined below.
IpAddress string
The IP address of the NGINX Deployment.
Location Changes to this property will trigger replacement. string
The Azure Region where the NGINX Deployment should exist. Changing this forces a new NGINX Deployment to be created.
LoggingStorageAccounts []DeploymentLoggingStorageAccountArgs

Deprecated: The logging_storage_account block has been deprecated and will be removed in v5.0 of the AzureRM Provider. To enable logs, use the azure.monitoring.DiagnosticSetting resource instead.

ManagedResourceGroup string

Deprecated: The managed_resource_group field isn't supported by the API anymore and has been deprecated and will be removed in v5.0 of the AzureRM Provider.

Name Changes to this property will trigger replacement. string
The name which should be used for this NGINX Deployment. Changing this forces a new NGINX Deployment to be created.
NetworkInterfaces []DeploymentNetworkInterfaceArgs
One or more network_interface blocks as defined below.
NginxVersion string
The version of the NGINX Deployment.
ResourceGroupName Changes to this property will trigger replacement. string
The name of the Resource Group where the NGINX Deployment should exist. Changing this forces a new NGINX Deployment to be created.
Sku string
Tags map[string]string
A mapping of tags which should be assigned to the NGINX Deployment.
WebApplicationFirewall DeploymentWebApplicationFirewallArgs
A web_application_firewall blocks as defined below.
autoScaleProfiles List<DeploymentAutoScaleProfile>
An auto_scale_profile block as defined below.
automaticUpgradeChannel String
Specify the automatic upgrade channel for the NGINX deployment. Defaults to stable. The possible values are stable and preview.
capacity Integer

Specify the number of NGINX capacity units for this NGINX deployment.

Note: For more information on NGINX capacity units, please refer to the NGINX scaling guidance documentation

dataplaneApiEndpoint String
The dataplane API endpoint of the NGINX Deployment.
diagnoseSupportEnabled Boolean
Should the metrics be exported to Azure Monitor?
email String
Specify the preferred support contact email address for receiving alerts and notifications.
frontendPrivates List<DeploymentFrontendPrivate>
One or more frontend_private blocks as defined below.
frontendPublic DeploymentFrontendPublic
A frontend_public block as defined below.
identity DeploymentIdentity
An identity block as defined below.
ipAddress String
The IP address of the NGINX Deployment.
location Changes to this property will trigger replacement. String
The Azure Region where the NGINX Deployment should exist. Changing this forces a new NGINX Deployment to be created.
loggingStorageAccounts List<DeploymentLoggingStorageAccount>

Deprecated: The logging_storage_account block has been deprecated and will be removed in v5.0 of the AzureRM Provider. To enable logs, use the azure.monitoring.DiagnosticSetting resource instead.

managedResourceGroup String

Deprecated: The managed_resource_group field isn't supported by the API anymore and has been deprecated and will be removed in v5.0 of the AzureRM Provider.

name Changes to this property will trigger replacement. String
The name which should be used for this NGINX Deployment. Changing this forces a new NGINX Deployment to be created.
networkInterfaces List<DeploymentNetworkInterface>
One or more network_interface blocks as defined below.
nginxVersion String
The version of the NGINX Deployment.
resourceGroupName Changes to this property will trigger replacement. String
The name of the Resource Group where the NGINX Deployment should exist. Changing this forces a new NGINX Deployment to be created.
sku String
tags Map<String,String>
A mapping of tags which should be assigned to the NGINX Deployment.
webApplicationFirewall DeploymentWebApplicationFirewall
A web_application_firewall blocks as defined below.
autoScaleProfiles DeploymentAutoScaleProfile[]
An auto_scale_profile block as defined below.
automaticUpgradeChannel string
Specify the automatic upgrade channel for the NGINX deployment. Defaults to stable. The possible values are stable and preview.
capacity number

Specify the number of NGINX capacity units for this NGINX deployment.

Note: For more information on NGINX capacity units, please refer to the NGINX scaling guidance documentation

dataplaneApiEndpoint string
The dataplane API endpoint of the NGINX Deployment.
diagnoseSupportEnabled boolean
Should the metrics be exported to Azure Monitor?
email string
Specify the preferred support contact email address for receiving alerts and notifications.
frontendPrivates DeploymentFrontendPrivate[]
One or more frontend_private blocks as defined below.
frontendPublic DeploymentFrontendPublic
A frontend_public block as defined below.
identity DeploymentIdentity
An identity block as defined below.
ipAddress string
The IP address of the NGINX Deployment.
location Changes to this property will trigger replacement. string
The Azure Region where the NGINX Deployment should exist. Changing this forces a new NGINX Deployment to be created.
loggingStorageAccounts DeploymentLoggingStorageAccount[]

Deprecated: The logging_storage_account block has been deprecated and will be removed in v5.0 of the AzureRM Provider. To enable logs, use the azure.monitoring.DiagnosticSetting resource instead.

managedResourceGroup string

Deprecated: The managed_resource_group field isn't supported by the API anymore and has been deprecated and will be removed in v5.0 of the AzureRM Provider.

name Changes to this property will trigger replacement. string
The name which should be used for this NGINX Deployment. Changing this forces a new NGINX Deployment to be created.
networkInterfaces DeploymentNetworkInterface[]
One or more network_interface blocks as defined below.
nginxVersion string
The version of the NGINX Deployment.
resourceGroupName Changes to this property will trigger replacement. string
The name of the Resource Group where the NGINX Deployment should exist. Changing this forces a new NGINX Deployment to be created.
sku string
tags {[key: string]: string}
A mapping of tags which should be assigned to the NGINX Deployment.
webApplicationFirewall DeploymentWebApplicationFirewall
A web_application_firewall blocks as defined below.
auto_scale_profiles Sequence[DeploymentAutoScaleProfileArgs]
An auto_scale_profile block as defined below.
automatic_upgrade_channel str
Specify the automatic upgrade channel for the NGINX deployment. Defaults to stable. The possible values are stable and preview.
capacity int

Specify the number of NGINX capacity units for this NGINX deployment.

Note: For more information on NGINX capacity units, please refer to the NGINX scaling guidance documentation

dataplane_api_endpoint str
The dataplane API endpoint of the NGINX Deployment.
diagnose_support_enabled bool
Should the metrics be exported to Azure Monitor?
email str
Specify the preferred support contact email address for receiving alerts and notifications.
frontend_privates Sequence[DeploymentFrontendPrivateArgs]
One or more frontend_private blocks as defined below.
frontend_public DeploymentFrontendPublicArgs
A frontend_public block as defined below.
identity DeploymentIdentityArgs
An identity block as defined below.
ip_address str
The IP address of the NGINX Deployment.
location Changes to this property will trigger replacement. str
The Azure Region where the NGINX Deployment should exist. Changing this forces a new NGINX Deployment to be created.
logging_storage_accounts Sequence[DeploymentLoggingStorageAccountArgs]

Deprecated: The logging_storage_account block has been deprecated and will be removed in v5.0 of the AzureRM Provider. To enable logs, use the azure.monitoring.DiagnosticSetting resource instead.

managed_resource_group str

Deprecated: The managed_resource_group field isn't supported by the API anymore and has been deprecated and will be removed in v5.0 of the AzureRM Provider.

name Changes to this property will trigger replacement. str
The name which should be used for this NGINX Deployment. Changing this forces a new NGINX Deployment to be created.
network_interfaces Sequence[DeploymentNetworkInterfaceArgs]
One or more network_interface blocks as defined below.
nginx_version str
The version of the NGINX Deployment.
resource_group_name Changes to this property will trigger replacement. str
The name of the Resource Group where the NGINX Deployment should exist. Changing this forces a new NGINX Deployment to be created.
sku str
tags Mapping[str, str]
A mapping of tags which should be assigned to the NGINX Deployment.
web_application_firewall DeploymentWebApplicationFirewallArgs
A web_application_firewall blocks as defined below.
autoScaleProfiles List<Property Map>
An auto_scale_profile block as defined below.
automaticUpgradeChannel String
Specify the automatic upgrade channel for the NGINX deployment. Defaults to stable. The possible values are stable and preview.
capacity Number

Specify the number of NGINX capacity units for this NGINX deployment.

Note: For more information on NGINX capacity units, please refer to the NGINX scaling guidance documentation

dataplaneApiEndpoint String
The dataplane API endpoint of the NGINX Deployment.
diagnoseSupportEnabled Boolean
Should the metrics be exported to Azure Monitor?
email String
Specify the preferred support contact email address for receiving alerts and notifications.
frontendPrivates List<Property Map>
One or more frontend_private blocks as defined below.
frontendPublic Property Map
A frontend_public block as defined below.
identity Property Map
An identity block as defined below.
ipAddress String
The IP address of the NGINX Deployment.
location Changes to this property will trigger replacement. String
The Azure Region where the NGINX Deployment should exist. Changing this forces a new NGINX Deployment to be created.
loggingStorageAccounts List<Property Map>

Deprecated: The logging_storage_account block has been deprecated and will be removed in v5.0 of the AzureRM Provider. To enable logs, use the azure.monitoring.DiagnosticSetting resource instead.

managedResourceGroup String

Deprecated: The managed_resource_group field isn't supported by the API anymore and has been deprecated and will be removed in v5.0 of the AzureRM Provider.

name Changes to this property will trigger replacement. String
The name which should be used for this NGINX Deployment. Changing this forces a new NGINX Deployment to be created.
networkInterfaces List<Property Map>
One or more network_interface blocks as defined below.
nginxVersion String
The version of the NGINX Deployment.
resourceGroupName Changes to this property will trigger replacement. String
The name of the Resource Group where the NGINX Deployment should exist. Changing this forces a new NGINX Deployment to be created.
sku String
tags Map<String>
A mapping of tags which should be assigned to the NGINX Deployment.
webApplicationFirewall Property Map
A web_application_firewall blocks as defined below.

Supporting Types

DeploymentAutoScaleProfile
, DeploymentAutoScaleProfileArgs

MaxCapacity This property is required. int
MinCapacity This property is required. int
Specify the minimum number of NGINX capacity units for this NGINX Deployment.
Name This property is required. string
Specify the name of the autoscaling profile.
MaxCapacity This property is required. int
MinCapacity This property is required. int
Specify the minimum number of NGINX capacity units for this NGINX Deployment.
Name This property is required. string
Specify the name of the autoscaling profile.
maxCapacity This property is required. Integer
minCapacity This property is required. Integer
Specify the minimum number of NGINX capacity units for this NGINX Deployment.
name This property is required. String
Specify the name of the autoscaling profile.
maxCapacity This property is required. number
minCapacity This property is required. number
Specify the minimum number of NGINX capacity units for this NGINX Deployment.
name This property is required. string
Specify the name of the autoscaling profile.
max_capacity This property is required. int
min_capacity This property is required. int
Specify the minimum number of NGINX capacity units for this NGINX Deployment.
name This property is required. str
Specify the name of the autoscaling profile.
maxCapacity This property is required. Number
minCapacity This property is required. Number
Specify the minimum number of NGINX capacity units for this NGINX Deployment.
name This property is required. String
Specify the name of the autoscaling profile.

DeploymentFrontendPrivate
, DeploymentFrontendPrivateArgs

AllocationMethod This property is required. string
Specify the method for allocating the private IP. Possible values are Static and Dynamic.
IpAddress This property is required. string
Specify the private IP Address.
SubnetId This property is required. string
Specify the Subnet Resource ID for this NGINX Deployment.
AllocationMethod This property is required. string
Specify the method for allocating the private IP. Possible values are Static and Dynamic.
IpAddress This property is required. string
Specify the private IP Address.
SubnetId This property is required. string
Specify the Subnet Resource ID for this NGINX Deployment.
allocationMethod This property is required. String
Specify the method for allocating the private IP. Possible values are Static and Dynamic.
ipAddress This property is required. String
Specify the private IP Address.
subnetId This property is required. String
Specify the Subnet Resource ID for this NGINX Deployment.
allocationMethod This property is required. string
Specify the method for allocating the private IP. Possible values are Static and Dynamic.
ipAddress This property is required. string
Specify the private IP Address.
subnetId This property is required. string
Specify the Subnet Resource ID for this NGINX Deployment.
allocation_method This property is required. str
Specify the method for allocating the private IP. Possible values are Static and Dynamic.
ip_address This property is required. str
Specify the private IP Address.
subnet_id This property is required. str
Specify the Subnet Resource ID for this NGINX Deployment.
allocationMethod This property is required. String
Specify the method for allocating the private IP. Possible values are Static and Dynamic.
ipAddress This property is required. String
Specify the private IP Address.
subnetId This property is required. String
Specify the Subnet Resource ID for this NGINX Deployment.

DeploymentFrontendPublic
, DeploymentFrontendPublicArgs

IpAddresses List<string>
Specifies a list of Public IP Resource ID to this NGINX Deployment.
IpAddresses []string
Specifies a list of Public IP Resource ID to this NGINX Deployment.
ipAddresses List<String>
Specifies a list of Public IP Resource ID to this NGINX Deployment.
ipAddresses string[]
Specifies a list of Public IP Resource ID to this NGINX Deployment.
ip_addresses Sequence[str]
Specifies a list of Public IP Resource ID to this NGINX Deployment.
ipAddresses List<String>
Specifies a list of Public IP Resource ID to this NGINX Deployment.

DeploymentIdentity
, DeploymentIdentityArgs

Type This property is required. string
Specifies the identity type of the NGINX Deployment. Possible values are SystemAssigned, UserAssigned or SystemAssigned, UserAssigned.
IdentityIds List<string>

Specifies a list of user managed identity ids to be assigned.

Note: This is required when type is set to UserAssigned.

PrincipalId string
TenantId string
Type This property is required. string
Specifies the identity type of the NGINX Deployment. Possible values are SystemAssigned, UserAssigned or SystemAssigned, UserAssigned.
IdentityIds []string

Specifies a list of user managed identity ids to be assigned.

Note: This is required when type is set to UserAssigned.

PrincipalId string
TenantId string
type This property is required. String
Specifies the identity type of the NGINX Deployment. Possible values are SystemAssigned, UserAssigned or SystemAssigned, UserAssigned.
identityIds List<String>

Specifies a list of user managed identity ids to be assigned.

Note: This is required when type is set to UserAssigned.

principalId String
tenantId String
type This property is required. string
Specifies the identity type of the NGINX Deployment. Possible values are SystemAssigned, UserAssigned or SystemAssigned, UserAssigned.
identityIds string[]

Specifies a list of user managed identity ids to be assigned.

Note: This is required when type is set to UserAssigned.

principalId string
tenantId string
type This property is required. str
Specifies the identity type of the NGINX Deployment. Possible values are SystemAssigned, UserAssigned or SystemAssigned, UserAssigned.
identity_ids Sequence[str]

Specifies a list of user managed identity ids to be assigned.

Note: This is required when type is set to UserAssigned.

principal_id str
tenant_id str
type This property is required. String
Specifies the identity type of the NGINX Deployment. Possible values are SystemAssigned, UserAssigned or SystemAssigned, UserAssigned.
identityIds List<String>

Specifies a list of user managed identity ids to be assigned.

Note: This is required when type is set to UserAssigned.

principalId String
tenantId String

DeploymentLoggingStorageAccount
, DeploymentLoggingStorageAccountArgs

ContainerName string
Name string
The name which should be used for this NGINX Deployment. Changing this forces a new NGINX Deployment to be created.
ContainerName string
Name string
The name which should be used for this NGINX Deployment. Changing this forces a new NGINX Deployment to be created.
containerName String
name String
The name which should be used for this NGINX Deployment. Changing this forces a new NGINX Deployment to be created.
containerName string
name string
The name which should be used for this NGINX Deployment. Changing this forces a new NGINX Deployment to be created.
container_name str
name str
The name which should be used for this NGINX Deployment. Changing this forces a new NGINX Deployment to be created.
containerName String
name String
The name which should be used for this NGINX Deployment. Changing this forces a new NGINX Deployment to be created.

DeploymentNetworkInterface
, DeploymentNetworkInterfaceArgs

SubnetId This property is required. string
Specify The Subnet Resource ID for this NGINX Deployment.
SubnetId This property is required. string
Specify The Subnet Resource ID for this NGINX Deployment.
subnetId This property is required. String
Specify The Subnet Resource ID for this NGINX Deployment.
subnetId This property is required. string
Specify The Subnet Resource ID for this NGINX Deployment.
subnet_id This property is required. str
Specify The Subnet Resource ID for this NGINX Deployment.
subnetId This property is required. String
Specify The Subnet Resource ID for this NGINX Deployment.

DeploymentWebApplicationFirewall
, DeploymentWebApplicationFirewallArgs

ActivationStateEnabled This property is required. bool
Whether WAF is enabled/disabled for this NGINX Deployment.
Statuses List<DeploymentWebApplicationFirewallStatus>
A web_application_firewall.status block as defined below:
ActivationStateEnabled This property is required. bool
Whether WAF is enabled/disabled for this NGINX Deployment.
Statuses []DeploymentWebApplicationFirewallStatus
A web_application_firewall.status block as defined below:
activationStateEnabled This property is required. Boolean
Whether WAF is enabled/disabled for this NGINX Deployment.
statuses List<DeploymentWebApplicationFirewallStatus>
A web_application_firewall.status block as defined below:
activationStateEnabled This property is required. boolean
Whether WAF is enabled/disabled for this NGINX Deployment.
statuses DeploymentWebApplicationFirewallStatus[]
A web_application_firewall.status block as defined below:
activation_state_enabled This property is required. bool
Whether WAF is enabled/disabled for this NGINX Deployment.
statuses Sequence[DeploymentWebApplicationFirewallStatus]
A web_application_firewall.status block as defined below:
activationStateEnabled This property is required. Boolean
Whether WAF is enabled/disabled for this NGINX Deployment.
statuses List<Property Map>
A web_application_firewall.status block as defined below:

DeploymentWebApplicationFirewallStatus
, DeploymentWebApplicationFirewallStatusArgs

AttackSignaturesPackages List<DeploymentWebApplicationFirewallStatusAttackSignaturesPackage>
Indicates the version of the attack signatures package used by NGINX App Protect.
BotSignaturesPackages List<DeploymentWebApplicationFirewallStatusBotSignaturesPackage>
Indicates the version of the bot signatures package used by NGINX App Protect.
ComponentVersions List<DeploymentWebApplicationFirewallStatusComponentVersion>
Indicates the version of the WAF Engine and Nginx WAF Module used by NGINX App Protect.
ThreatCampaignsPackages List<DeploymentWebApplicationFirewallStatusThreatCampaignsPackage>
Indicates the version of the threat campaigns package used by NGINX App Protect.
AttackSignaturesPackages []DeploymentWebApplicationFirewallStatusAttackSignaturesPackage
Indicates the version of the attack signatures package used by NGINX App Protect.
BotSignaturesPackages []DeploymentWebApplicationFirewallStatusBotSignaturesPackage
Indicates the version of the bot signatures package used by NGINX App Protect.
ComponentVersions []DeploymentWebApplicationFirewallStatusComponentVersion
Indicates the version of the WAF Engine and Nginx WAF Module used by NGINX App Protect.
ThreatCampaignsPackages []DeploymentWebApplicationFirewallStatusThreatCampaignsPackage
Indicates the version of the threat campaigns package used by NGINX App Protect.
attackSignaturesPackages List<DeploymentWebApplicationFirewallStatusAttackSignaturesPackage>
Indicates the version of the attack signatures package used by NGINX App Protect.
botSignaturesPackages List<DeploymentWebApplicationFirewallStatusBotSignaturesPackage>
Indicates the version of the bot signatures package used by NGINX App Protect.
componentVersions List<DeploymentWebApplicationFirewallStatusComponentVersion>
Indicates the version of the WAF Engine and Nginx WAF Module used by NGINX App Protect.
threatCampaignsPackages List<DeploymentWebApplicationFirewallStatusThreatCampaignsPackage>
Indicates the version of the threat campaigns package used by NGINX App Protect.
attackSignaturesPackages DeploymentWebApplicationFirewallStatusAttackSignaturesPackage[]
Indicates the version of the attack signatures package used by NGINX App Protect.
botSignaturesPackages DeploymentWebApplicationFirewallStatusBotSignaturesPackage[]
Indicates the version of the bot signatures package used by NGINX App Protect.
componentVersions DeploymentWebApplicationFirewallStatusComponentVersion[]
Indicates the version of the WAF Engine and Nginx WAF Module used by NGINX App Protect.
threatCampaignsPackages DeploymentWebApplicationFirewallStatusThreatCampaignsPackage[]
Indicates the version of the threat campaigns package used by NGINX App Protect.
attack_signatures_packages Sequence[DeploymentWebApplicationFirewallStatusAttackSignaturesPackage]
Indicates the version of the attack signatures package used by NGINX App Protect.
bot_signatures_packages Sequence[DeploymentWebApplicationFirewallStatusBotSignaturesPackage]
Indicates the version of the bot signatures package used by NGINX App Protect.
component_versions Sequence[DeploymentWebApplicationFirewallStatusComponentVersion]
Indicates the version of the WAF Engine and Nginx WAF Module used by NGINX App Protect.
threat_campaigns_packages Sequence[DeploymentWebApplicationFirewallStatusThreatCampaignsPackage]
Indicates the version of the threat campaigns package used by NGINX App Protect.
attackSignaturesPackages List<Property Map>
Indicates the version of the attack signatures package used by NGINX App Protect.
botSignaturesPackages List<Property Map>
Indicates the version of the bot signatures package used by NGINX App Protect.
componentVersions List<Property Map>
Indicates the version of the WAF Engine and Nginx WAF Module used by NGINX App Protect.
threatCampaignsPackages List<Property Map>
Indicates the version of the threat campaigns package used by NGINX App Protect.

DeploymentWebApplicationFirewallStatusAttackSignaturesPackage
, DeploymentWebApplicationFirewallStatusAttackSignaturesPackageArgs

DeploymentWebApplicationFirewallStatusBotSignaturesPackage
, DeploymentWebApplicationFirewallStatusBotSignaturesPackageArgs

DeploymentWebApplicationFirewallStatusComponentVersion
, DeploymentWebApplicationFirewallStatusComponentVersionArgs

DeploymentWebApplicationFirewallStatusThreatCampaignsPackage
, DeploymentWebApplicationFirewallStatusThreatCampaignsPackageArgs

Import

NGINX Deployments can be imported using the resource id, e.g.

$ pulumi import azure:nginx/deployment:Deployment example /subscriptions/12345678-1234-9876-4563-123456789012/resourceGroups/group1/providers/Nginx.NginxPlus/nginxDeployments/dep1
Copy

To learn more about importing existing cloud resources, see Importing resources.

Package Details

Repository
Azure Classic pulumi/pulumi-azure
License
Apache-2.0
Notes
This Pulumi package is based on the azurerm Terraform Provider.