TunnelPolicyArgs

data class TunnelPolicyArgs(val domains: Output<List<ActivatedResourceReferenceArgs>>? = null, val profileName: Output<String>? = null, val resourceGroupName: Output<String>? = null, val targetGroups: Output<List<ResourceReferenceArgs>>? = null, val tunnelPolicyName: Output<String>? = null, val tunnelType: Output<Either<String, TunnelType>>? = null) : ConvertibleToJava<TunnelPolicyArgs>

Tunnel Policy maps domains to target endpoints to process traffic over the tunnelling protocol. Uses Azure REST API version 2024-06-01-preview. In version 2.x of the Azure Native provider, it used API version 2024-06-01-preview.

Example Usage

TunnelPolicies_Create

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var tunnelPolicy = new AzureNative.Cdn.TunnelPolicy("tunnelPolicy", new()
{
Domains = new[]
{
new AzureNative.Cdn.Inputs.ActivatedResourceReferenceArgs
{
Id = "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/customdomains/testdomain1",
},
new AzureNative.Cdn.Inputs.ActivatedResourceReferenceArgs
{
Id = "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/customdomains/testdomain2",
},
},
ProfileName = "profile1",
ResourceGroupName = "RG",
TargetGroups = new[]
{
new AzureNative.Cdn.Inputs.ResourceReferenceArgs
{
Id = "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/targetgroups/targetgroup1",
},
new AzureNative.Cdn.Inputs.ResourceReferenceArgs
{
Id = "/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/targetgroups/targetgroup2",
},
},
TunnelPolicyName = "tunnelPolicy1",
TunnelType = AzureNative.Cdn.TunnelType.HttpConnect,
});
});
package main
import (
cdn "github.com/pulumi/pulumi-azure-native-sdk/cdn/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := cdn.NewTunnelPolicy(ctx, "tunnelPolicy", &cdn.TunnelPolicyArgs{
Domains: cdn.ActivatedResourceReferenceArray{
&cdn.ActivatedResourceReferenceArgs{
Id: pulumi.String("/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/customdomains/testdomain1"),
},
&cdn.ActivatedResourceReferenceArgs{
Id: pulumi.String("/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/customdomains/testdomain2"),
},
},
ProfileName: pulumi.String("profile1"),
ResourceGroupName: pulumi.String("RG"),
TargetGroups: cdn.ResourceReferenceArray{
&cdn.ResourceReferenceArgs{
Id: pulumi.String("/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/targetgroups/targetgroup1"),
},
&cdn.ResourceReferenceArgs{
Id: pulumi.String("/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/targetgroups/targetgroup2"),
},
},
TunnelPolicyName: pulumi.String("tunnelPolicy1"),
TunnelType: pulumi.String(cdn.TunnelTypeHttpConnect),
})
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.azurenative.cdn.TunnelPolicy;
import com.pulumi.azurenative.cdn.TunnelPolicyArgs;
import com.pulumi.azurenative.cdn.inputs.ActivatedResourceReferenceArgs;
import com.pulumi.azurenative.cdn.inputs.ResourceReferenceArgs;
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 tunnelPolicy = new TunnelPolicy("tunnelPolicy", TunnelPolicyArgs.builder()
.domains(
ActivatedResourceReferenceArgs.builder()
.id("/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/customdomains/testdomain1")
.build(),
ActivatedResourceReferenceArgs.builder()
.id("/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/customdomains/testdomain2")
.build())
.profileName("profile1")
.resourceGroupName("RG")
.targetGroups(
ResourceReferenceArgs.builder()
.id("/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/targetgroups/targetgroup1")
.build(),
ResourceReferenceArgs.builder()
.id("/subscriptions/subid/resourcegroups/RG/providers/Microsoft.Cdn/profiles/profile1/targetgroups/targetgroup2")
.build())
.tunnelPolicyName("tunnelPolicy1")
.tunnelType("HttpConnect")
.build());
}
}

Import

An existing resource can be imported using its type token, name, and identifier, e.g.

$ pulumi import azure-native:cdn:TunnelPolicy tunnelPolicy1 /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Cdn/profiles/{profileName}/tunnelPolicies/{tunnelPolicyName}

Constructors

Link copied to clipboard
constructor(domains: Output<List<ActivatedResourceReferenceArgs>>? = null, profileName: Output<String>? = null, resourceGroupName: Output<String>? = null, targetGroups: Output<List<ResourceReferenceArgs>>? = null, tunnelPolicyName: Output<String>? = null, tunnelType: Output<Either<String, TunnelType>>? = null)

Properties

Link copied to clipboard

Domains referenced by this tunnel policy.

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

Name of the Azure Front Door Standard or Azure Front Door Premium which is unique within the resource group.

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

Name of the Resource group within the Azure subscription.

Link copied to clipboard

Target Groups referenced by this tunnel policy.

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

Name of the Tunnel Policy under the profile.

Link copied to clipboard
val tunnelType: Output<Either<String, TunnelType>>? = null

Protocol this tunnel will use for allowing traffic to backends.

Functions

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