sdwan.Ipv6DeviceAclPolicyDefinition
Explore with Pulumi AI
This resource can manage a IPv6 Device ACL Policy Definition .
Example Usage
Coming soon!
Coming soon!
Coming soon!
Coming soon!
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.sdwan.Ipv6DeviceAclPolicyDefinition;
import com.pulumi.sdwan.Ipv6DeviceAclPolicyDefinitionArgs;
import com.pulumi.sdwan.inputs.Ipv6DeviceAclPolicyDefinitionSequenceArgs;
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 Ipv6DeviceAclPolicyDefinition("example", Ipv6DeviceAclPolicyDefinitionArgs.builder()
.name("Example")
.description("My description")
.defaultAction("drop")
.sequences(Ipv6DeviceAclPolicyDefinitionSequenceArgs.builder()
.id(10)
.name("Sequence 10")
.base_action("accept")
.match_entries(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
.action_entries(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference))
.build())
.build());
}
}
resources:
example:
type: sdwan:Ipv6DeviceAclPolicyDefinition
properties:
name: Example
description: My description
defaultAction: drop
sequences:
- id: 10
name: Sequence 10
base_action: accept
match_entries:
- type: destinationPort
destinationPort: 22
action_entries:
- type: count
counterName: count1
Create Ipv6DeviceAclPolicyDefinition Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new Ipv6DeviceAclPolicyDefinition(name: string, args: Ipv6DeviceAclPolicyDefinitionArgs, opts?: CustomResourceOptions);
@overload
def Ipv6DeviceAclPolicyDefinition(resource_name: str,
args: Ipv6DeviceAclPolicyDefinitionArgs,
opts: Optional[ResourceOptions] = None)
@overload
def Ipv6DeviceAclPolicyDefinition(resource_name: str,
opts: Optional[ResourceOptions] = None,
description: Optional[str] = None,
sequences: Optional[Sequence[Ipv6DeviceAclPolicyDefinitionSequenceArgs]] = None,
default_action: Optional[str] = None,
name: Optional[str] = None)
func NewIpv6DeviceAclPolicyDefinition(ctx *Context, name string, args Ipv6DeviceAclPolicyDefinitionArgs, opts ...ResourceOption) (*Ipv6DeviceAclPolicyDefinition, error)
public Ipv6DeviceAclPolicyDefinition(string name, Ipv6DeviceAclPolicyDefinitionArgs args, CustomResourceOptions? opts = null)
public Ipv6DeviceAclPolicyDefinition(String name, Ipv6DeviceAclPolicyDefinitionArgs args)
public Ipv6DeviceAclPolicyDefinition(String name, Ipv6DeviceAclPolicyDefinitionArgs args, CustomResourceOptions options)
type: sdwan:Ipv6DeviceAclPolicyDefinition
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args Ipv6DeviceAclPolicyDefinitionArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args Ipv6DeviceAclPolicyDefinitionArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args Ipv6DeviceAclPolicyDefinitionArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args Ipv6DeviceAclPolicyDefinitionArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args Ipv6DeviceAclPolicyDefinitionArgs
- 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 ipv6DeviceAclPolicyDefinitionResource = new Sdwan.Ipv6DeviceAclPolicyDefinition("ipv6DeviceAclPolicyDefinitionResource", new()
{
Description = "string",
Sequences = new[]
{
new Sdwan.Inputs.Ipv6DeviceAclPolicyDefinitionSequenceArgs
{
Id = 0,
Name = "string",
ActionEntries = new[]
{
new Sdwan.Inputs.Ipv6DeviceAclPolicyDefinitionSequenceActionEntryArgs
{
Type = "string",
CounterName = "string",
},
},
BaseAction = "string",
MatchEntries = new[]
{
new Sdwan.Inputs.Ipv6DeviceAclPolicyDefinitionSequenceMatchEntryArgs
{
Type = "string",
DestinationDataIpv6PrefixListId = "string",
DestinationDataIpv6PrefixListVersion = 0,
DestinationIp = "string",
DestinationPort = 0,
SourceDataIpv6PrefixListId = "string",
SourceDataIpv6PrefixListVersion = 0,
SourceIp = "string",
SourcePorts = "string",
},
},
},
},
DefaultAction = "string",
Name = "string",
});
example, err := sdwan.NewIpv6DeviceAclPolicyDefinition(ctx, "ipv6DeviceAclPolicyDefinitionResource", &sdwan.Ipv6DeviceAclPolicyDefinitionArgs{
Description: pulumi.String("string"),
Sequences: sdwan.Ipv6DeviceAclPolicyDefinitionSequenceArray{
&sdwan.Ipv6DeviceAclPolicyDefinitionSequenceArgs{
Id: pulumi.Int(0),
Name: pulumi.String("string"),
ActionEntries: sdwan.Ipv6DeviceAclPolicyDefinitionSequenceActionEntryArray{
&sdwan.Ipv6DeviceAclPolicyDefinitionSequenceActionEntryArgs{
Type: pulumi.String("string"),
CounterName: pulumi.String("string"),
},
},
BaseAction: pulumi.String("string"),
MatchEntries: sdwan.Ipv6DeviceAclPolicyDefinitionSequenceMatchEntryArray{
&sdwan.Ipv6DeviceAclPolicyDefinitionSequenceMatchEntryArgs{
Type: pulumi.String("string"),
DestinationDataIpv6PrefixListId: pulumi.String("string"),
DestinationDataIpv6PrefixListVersion: pulumi.Int(0),
DestinationIp: pulumi.String("string"),
DestinationPort: pulumi.Int(0),
SourceDataIpv6PrefixListId: pulumi.String("string"),
SourceDataIpv6PrefixListVersion: pulumi.Int(0),
SourceIp: pulumi.String("string"),
SourcePorts: pulumi.String("string"),
},
},
},
},
DefaultAction: pulumi.String("string"),
Name: pulumi.String("string"),
})
var ipv6DeviceAclPolicyDefinitionResource = new Ipv6DeviceAclPolicyDefinition("ipv6DeviceAclPolicyDefinitionResource", Ipv6DeviceAclPolicyDefinitionArgs.builder()
.description("string")
.sequences(Ipv6DeviceAclPolicyDefinitionSequenceArgs.builder()
.id(0)
.name("string")
.actionEntries(Ipv6DeviceAclPolicyDefinitionSequenceActionEntryArgs.builder()
.type("string")
.counterName("string")
.build())
.baseAction("string")
.matchEntries(Ipv6DeviceAclPolicyDefinitionSequenceMatchEntryArgs.builder()
.type("string")
.destinationDataIpv6PrefixListId("string")
.destinationDataIpv6PrefixListVersion(0)
.destinationIp("string")
.destinationPort(0)
.sourceDataIpv6PrefixListId("string")
.sourceDataIpv6PrefixListVersion(0)
.sourceIp("string")
.sourcePorts("string")
.build())
.build())
.defaultAction("string")
.name("string")
.build());
ipv6_device_acl_policy_definition_resource = sdwan.Ipv6DeviceAclPolicyDefinition("ipv6DeviceAclPolicyDefinitionResource",
description="string",
sequences=[{
"id": 0,
"name": "string",
"action_entries": [{
"type": "string",
"counter_name": "string",
}],
"base_action": "string",
"match_entries": [{
"type": "string",
"destination_data_ipv6_prefix_list_id": "string",
"destination_data_ipv6_prefix_list_version": 0,
"destination_ip": "string",
"destination_port": 0,
"source_data_ipv6_prefix_list_id": "string",
"source_data_ipv6_prefix_list_version": 0,
"source_ip": "string",
"source_ports": "string",
}],
}],
default_action="string",
name="string")
const ipv6DeviceAclPolicyDefinitionResource = new sdwan.Ipv6DeviceAclPolicyDefinition("ipv6DeviceAclPolicyDefinitionResource", {
description: "string",
sequences: [{
id: 0,
name: "string",
actionEntries: [{
type: "string",
counterName: "string",
}],
baseAction: "string",
matchEntries: [{
type: "string",
destinationDataIpv6PrefixListId: "string",
destinationDataIpv6PrefixListVersion: 0,
destinationIp: "string",
destinationPort: 0,
sourceDataIpv6PrefixListId: "string",
sourceDataIpv6PrefixListVersion: 0,
sourceIp: "string",
sourcePorts: "string",
}],
}],
defaultAction: "string",
name: "string",
});
type: sdwan:Ipv6DeviceAclPolicyDefinition
properties:
defaultAction: string
description: string
name: string
sequences:
- actionEntries:
- counterName: string
type: string
baseAction: string
id: 0
matchEntries:
- destinationDataIpv6PrefixListId: string
destinationDataIpv6PrefixListVersion: 0
destinationIp: string
destinationPort: 0
sourceDataIpv6PrefixListId: string
sourceDataIpv6PrefixListVersion: 0
sourceIp: string
sourcePorts: string
type: string
name: string
Ipv6DeviceAclPolicyDefinition 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 Ipv6DeviceAclPolicyDefinition resource accepts the following input properties:
- Description string
- The description of the policy definition
- Sequences
List<Ipv6Device
Acl Policy Definition Sequence> - List of ACL sequences
- Default
Action string - Default action, either
accept
ordrop
- Choices:accept
,drop
- Name string
- The name of the policy definition
- Description string
- The description of the policy definition
- Sequences
[]Ipv6Device
Acl Policy Definition Sequence Args - List of ACL sequences
- Default
Action string - Default action, either
accept
ordrop
- Choices:accept
,drop
- Name string
- The name of the policy definition
- description String
- The description of the policy definition
- sequences
List<Ipv6Device
Acl Policy Definition Sequence> - List of ACL sequences
- default
Action String - Default action, either
accept
ordrop
- Choices:accept
,drop
- name String
- The name of the policy definition
- description string
- The description of the policy definition
- sequences
Ipv6Device
Acl Policy Definition Sequence[] - List of ACL sequences
- default
Action string - Default action, either
accept
ordrop
- Choices:accept
,drop
- name string
- The name of the policy definition
- description str
- The description of the policy definition
- sequences
Sequence[Ipv6Device
Acl Policy Definition Sequence Args] - List of ACL sequences
- default_
action str - Default action, either
accept
ordrop
- Choices:accept
,drop
- name str
- The name of the policy definition
- description String
- The description of the policy definition
- sequences List<Property Map>
- List of ACL sequences
- default
Action String - Default action, either
accept
ordrop
- Choices:accept
,drop
- name String
- The name of the policy definition
Outputs
All input properties are implicitly available as output properties. Additionally, the Ipv6DeviceAclPolicyDefinition resource produces the following output properties:
Look up Existing Ipv6DeviceAclPolicyDefinition Resource
Get an existing Ipv6DeviceAclPolicyDefinition 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?: Ipv6DeviceAclPolicyDefinitionState, opts?: CustomResourceOptions): Ipv6DeviceAclPolicyDefinition
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
default_action: Optional[str] = None,
description: Optional[str] = None,
name: Optional[str] = None,
sequences: Optional[Sequence[Ipv6DeviceAclPolicyDefinitionSequenceArgs]] = None,
type: Optional[str] = None,
version: Optional[int] = None) -> Ipv6DeviceAclPolicyDefinition
func GetIpv6DeviceAclPolicyDefinition(ctx *Context, name string, id IDInput, state *Ipv6DeviceAclPolicyDefinitionState, opts ...ResourceOption) (*Ipv6DeviceAclPolicyDefinition, error)
public static Ipv6DeviceAclPolicyDefinition Get(string name, Input<string> id, Ipv6DeviceAclPolicyDefinitionState? state, CustomResourceOptions? opts = null)
public static Ipv6DeviceAclPolicyDefinition get(String name, Output<String> id, Ipv6DeviceAclPolicyDefinitionState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
- name
- The unique name of the resulting resource.
- id
- 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
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- 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
- The unique name of the resulting resource.
- id
- 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
- The unique name of the resulting resource.
- id
- 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.
- Default
Action string - Default action, either
accept
ordrop
- Choices:accept
,drop
- Description string
- The description of the policy definition
- Name string
- The name of the policy definition
- Sequences
List<Ipv6Device
Acl Policy Definition Sequence> - List of ACL sequences
- Type string
- Type
- Version int
- The version of the object
- Default
Action string - Default action, either
accept
ordrop
- Choices:accept
,drop
- Description string
- The description of the policy definition
- Name string
- The name of the policy definition
- Sequences
[]Ipv6Device
Acl Policy Definition Sequence Args - List of ACL sequences
- Type string
- Type
- Version int
- The version of the object
- default
Action String - Default action, either
accept
ordrop
- Choices:accept
,drop
- description String
- The description of the policy definition
- name String
- The name of the policy definition
- sequences
List<Ipv6Device
Acl Policy Definition Sequence> - List of ACL sequences
- type String
- Type
- version Integer
- The version of the object
- default
Action string - Default action, either
accept
ordrop
- Choices:accept
,drop
- description string
- The description of the policy definition
- name string
- The name of the policy definition
- sequences
Ipv6Device
Acl Policy Definition Sequence[] - List of ACL sequences
- type string
- Type
- version number
- The version of the object
- default_
action str - Default action, either
accept
ordrop
- Choices:accept
,drop
- description str
- The description of the policy definition
- name str
- The name of the policy definition
- sequences
Sequence[Ipv6Device
Acl Policy Definition Sequence Args] - List of ACL sequences
- type str
- Type
- version int
- The version of the object
- default
Action String - Default action, either
accept
ordrop
- Choices:accept
,drop
- description String
- The description of the policy definition
- name String
- The name of the policy definition
- sequences List<Property Map>
- List of ACL sequences
- type String
- Type
- version Number
- The version of the object
Supporting Types
Ipv6DeviceAclPolicyDefinitionSequence, Ipv6DeviceAclPolicyDefinitionSequenceArgs
- Id int
- Sequence ID
- Range:
1
-65534
- Range:
- Name string
- Sequence name
- Action
Entries List<Ipv6DeviceAcl Policy Definition Sequence Action Entry> - List of action entries
- Base
Action string - Base action, either
accept
ordrop
- Choices:
accept
,drop
- Choices:
- Match
Entries List<Ipv6DeviceAcl Policy Definition Sequence Match Entry> - List of match entries
- Id int
- Sequence ID
- Range:
1
-65534
- Range:
- Name string
- Sequence name
- Action
Entries []Ipv6DeviceAcl Policy Definition Sequence Action Entry - List of action entries
- Base
Action string - Base action, either
accept
ordrop
- Choices:
accept
,drop
- Choices:
- Match
Entries []Ipv6DeviceAcl Policy Definition Sequence Match Entry - List of match entries
- id Integer
- Sequence ID
- Range:
1
-65534
- Range:
- name String
- Sequence name
- action
Entries List<Ipv6DeviceAcl Policy Definition Sequence Action Entry> - List of action entries
- base
Action String - Base action, either
accept
ordrop
- Choices:
accept
,drop
- Choices:
- match
Entries List<Ipv6DeviceAcl Policy Definition Sequence Match Entry> - List of match entries
- id number
- Sequence ID
- Range:
1
-65534
- Range:
- name string
- Sequence name
- action
Entries Ipv6DeviceAcl Policy Definition Sequence Action Entry[] - List of action entries
- base
Action string - Base action, either
accept
ordrop
- Choices:
accept
,drop
- Choices:
- match
Entries Ipv6DeviceAcl Policy Definition Sequence Match Entry[] - List of match entries
- id int
- Sequence ID
- Range:
1
-65534
- Range:
- name str
- Sequence name
- action_
entries Sequence[Ipv6DeviceAcl Policy Definition Sequence Action Entry] - List of action entries
- base_
action str - Base action, either
accept
ordrop
- Choices:
accept
,drop
- Choices:
- match_
entries Sequence[Ipv6DeviceAcl Policy Definition Sequence Match Entry] - List of match entries
- id Number
- Sequence ID
- Range:
1
-65534
- Range:
- name String
- Sequence name
- action
Entries List<Property Map> - List of action entries
- base
Action String - Base action, either
accept
ordrop
- Choices:
accept
,drop
- Choices:
- match
Entries List<Property Map> - List of match entries
Ipv6DeviceAclPolicyDefinitionSequenceActionEntry, Ipv6DeviceAclPolicyDefinitionSequenceActionEntryArgs
- Type string
- Type of action entry
- Choices:
count
- Choices:
- Counter
Name string - Counter name
- Type string
- Type of action entry
- Choices:
count
- Choices:
- Counter
Name string - Counter name
- type String
- Type of action entry
- Choices:
count
- Choices:
- counter
Name String - Counter name
- type string
- Type of action entry
- Choices:
count
- Choices:
- counter
Name string - Counter name
- type str
- Type of action entry
- Choices:
count
- Choices:
- counter_
name str - Counter name
- type String
- Type of action entry
- Choices:
count
- Choices:
- counter
Name String - Counter name
Ipv6DeviceAclPolicyDefinitionSequenceMatchEntry, Ipv6DeviceAclPolicyDefinitionSequenceMatchEntryArgs
- Type string
- Type of match entry
- Choices:
sourceIpv6
,destinationIpv6
,sourcePort
,destinationPort
,sourceDataIpv6PrefixList
,destinationDataIpv6PrefixList
- Choices:
- Destination
Data stringIpv6Prefix List Id - Destination data IPv6 prefix list ID
- Destination
Data intIpv6Prefix List Version - Destination data IPv6 prefix list version
- Destination
Ip string - Destination IP prefix
- Destination
Port int - Destination port, only
22
and161
supported- Range:
0
-65535
- Range:
- Source
Data stringIpv6Prefix List Id - Source data IPv6 prefix list ID
- Source
Data intIpv6Prefix List Version - Source data IPv6 prefix list version
- Source
Ip string - Source IP prefix
- Source
Ports string - Source ports. Single value (0-65535) or ranges separated by spaces.
- Type string
- Type of match entry
- Choices:
sourceIpv6
,destinationIpv6
,sourcePort
,destinationPort
,sourceDataIpv6PrefixList
,destinationDataIpv6PrefixList
- Choices:
- Destination
Data stringIpv6Prefix List Id - Destination data IPv6 prefix list ID
- Destination
Data intIpv6Prefix List Version - Destination data IPv6 prefix list version
- Destination
Ip string - Destination IP prefix
- Destination
Port int - Destination port, only
22
and161
supported- Range:
0
-65535
- Range:
- Source
Data stringIpv6Prefix List Id - Source data IPv6 prefix list ID
- Source
Data intIpv6Prefix List Version - Source data IPv6 prefix list version
- Source
Ip string - Source IP prefix
- Source
Ports string - Source ports. Single value (0-65535) or ranges separated by spaces.
- type String
- Type of match entry
- Choices:
sourceIpv6
,destinationIpv6
,sourcePort
,destinationPort
,sourceDataIpv6PrefixList
,destinationDataIpv6PrefixList
- Choices:
- destination
Data StringIpv6Prefix List Id - Destination data IPv6 prefix list ID
- destination
Data IntegerIpv6Prefix List Version - Destination data IPv6 prefix list version
- destination
Ip String - Destination IP prefix
- destination
Port Integer - Destination port, only
22
and161
supported- Range:
0
-65535
- Range:
- source
Data StringIpv6Prefix List Id - Source data IPv6 prefix list ID
- source
Data IntegerIpv6Prefix List Version - Source data IPv6 prefix list version
- source
Ip String - Source IP prefix
- source
Ports String - Source ports. Single value (0-65535) or ranges separated by spaces.
- type string
- Type of match entry
- Choices:
sourceIpv6
,destinationIpv6
,sourcePort
,destinationPort
,sourceDataIpv6PrefixList
,destinationDataIpv6PrefixList
- Choices:
- destination
Data stringIpv6Prefix List Id - Destination data IPv6 prefix list ID
- destination
Data numberIpv6Prefix List Version - Destination data IPv6 prefix list version
- destination
Ip string - Destination IP prefix
- destination
Port number - Destination port, only
22
and161
supported- Range:
0
-65535
- Range:
- source
Data stringIpv6Prefix List Id - Source data IPv6 prefix list ID
- source
Data numberIpv6Prefix List Version - Source data IPv6 prefix list version
- source
Ip string - Source IP prefix
- source
Ports string - Source ports. Single value (0-65535) or ranges separated by spaces.
- type str
- Type of match entry
- Choices:
sourceIpv6
,destinationIpv6
,sourcePort
,destinationPort
,sourceDataIpv6PrefixList
,destinationDataIpv6PrefixList
- Choices:
- destination_
data_ stripv6_ prefix_ list_ id - Destination data IPv6 prefix list ID
- destination_
data_ intipv6_ prefix_ list_ version - Destination data IPv6 prefix list version
- destination_
ip str - Destination IP prefix
- destination_
port int - Destination port, only
22
and161
supported- Range:
0
-65535
- Range:
- source_
data_ stripv6_ prefix_ list_ id - Source data IPv6 prefix list ID
- source_
data_ intipv6_ prefix_ list_ version - Source data IPv6 prefix list version
- source_
ip str - Source IP prefix
- source_
ports str - Source ports. Single value (0-65535) or ranges separated by spaces.
- type String
- Type of match entry
- Choices:
sourceIpv6
,destinationIpv6
,sourcePort
,destinationPort
,sourceDataIpv6PrefixList
,destinationDataIpv6PrefixList
- Choices:
- destination
Data StringIpv6Prefix List Id - Destination data IPv6 prefix list ID
- destination
Data NumberIpv6Prefix List Version - Destination data IPv6 prefix list version
- destination
Ip String - Destination IP prefix
- destination
Port Number - Destination port, only
22
and161
supported- Range:
0
-65535
- Range:
- source
Data StringIpv6Prefix List Id - Source data IPv6 prefix list ID
- source
Data NumberIpv6Prefix List Version - Source data IPv6 prefix list version
- source
Ip String - Source IP prefix
- source
Ports String - Source ports. Single value (0-65535) or ranges separated by spaces.
Import
$ pulumi import sdwan:index/ipv6DeviceAclPolicyDefinition:Ipv6DeviceAclPolicyDefinition example "f6b2c44c-693c-4763-b010-895aa3d236bd"
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- sdwan pulumi/pulumi-sdwan
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
sdwan
Terraform Provider.