Skip to content

Commit

Permalink
Add ipv6 acl policy definition resource
Browse files Browse the repository at this point in the history
  • Loading branch information
danischm committed Dec 19, 2023
1 parent 70b0478 commit 843a1d8
Show file tree
Hide file tree
Showing 15 changed files with 2,013 additions and 0 deletions.
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
- Add `sdwan_system_global_profile_parcel` resource and data source
- BREAKING CHANGE: Rename `sdwan_acl_policy_definition` resource and data source to `sdwan_ipv4_acl_policy_definition`
- BREAKING CHANGE: Rename `sdwan_device_acl_policy_definition` resource and data source to `sdwan_ipv4_device_acl_policy_definition`
- Add `sdwan_ipv6_acl_policy_definition` resource and data source

## 0.2.11

Expand Down
93 changes: 93 additions & 0 deletions docs/data-sources/ipv6_acl_policy_definition.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,93 @@
---
# generated by https://github.com/hashicorp/terraform-plugin-docs
page_title: "sdwan_ipv6_acl_policy_definition Data Source - terraform-provider-sdwan"
subcategory: "Localized Policies"
description: |-
This data source can read the IPv6 ACL Policy Definition .
---

# sdwan_ipv6_acl_policy_definition (Data Source)

This data source can read the IPv6 ACL Policy Definition .

## Example Usage

```terraform
data "sdwan_ipv6_acl_policy_definition" "example" {
id = "f6b2c44c-693c-4763-b010-895aa3d236bd"
}
```

<!-- schema generated by tfplugindocs -->
## Schema

### Required

- `id` (String) The id of the object

### Read-Only

- `default_action` (String) Default action, either `accept` or `drop`
- `description` (String) The description of the policy definition
- `name` (String) The name of the policy definition
- `sequences` (Attributes List) List of ACL sequences (see [below for nested schema](#nestedatt--sequences))
- `version` (Number) The version of the object

<a id="nestedatt--sequences"></a>
### Nested Schema for `sequences`

Read-Only:

- `action_entries` (Attributes List) List of action entries (see [below for nested schema](#nestedatt--sequences--action_entries))
- `base_action` (String) Base action, either `accept` or `drop`
- `id` (Number) Sequence ID
- `match_entries` (Attributes List) List of match entries (see [below for nested schema](#nestedatt--sequences--match_entries))
- `name` (String) Sequence name

<a id="nestedatt--sequences--action_entries"></a>
### Nested Schema for `sequences.action_entries`

Read-Only:

- `class_map_id` (String) Class map ID
- `class_map_version` (Number) Class map version
- `counter_name` (String) Counter name
- `log` (Boolean) Enable logging
- `mirror_id` (String) Mirror ID
- `mirror_version` (Number) Mirror version
- `policer_id` (String) Policer ID
- `policer_version` (Number) Policer version
- `set_parameters` (Attributes List) List of set parameters (see [below for nested schema](#nestedatt--sequences--action_entries--set_parameters))
- `type` (String) Type of action entry

<a id="nestedatt--sequences--action_entries--set_parameters"></a>
### Nested Schema for `sequences.action_entries.set_parameters`

Read-Only:

- `next_hop` (String) Next hop IP
- `traffic_class` (Number) Traffic class
- `type` (String) Type of set parameter



<a id="nestedatt--sequences--match_entries"></a>
### Nested Schema for `sequences.match_entries`

Read-Only:

- `class_map_id` (String) Class map ID
- `class_map_version` (Number) Class map version
- `destination_data_ipv6_prefix_list_id` (String) Destination dataIPv6 prefix list ID
- `destination_data_ipv6_prefix_list_version` (Number) Destination data prefix list version
- `destination_ip` (String) Destination IPv6 prefix
- `destination_port` (Number) Destination port
- `next_header` (Number) Next header
- `packet_length` (Number) Packet length
- `priority` (String) PLP - priority
- `source_data_ipv6_prefix_list_id` (String) Source data IPv6 prefix list ID
- `source_data_ipv6_prefix_list_version` (Number) Source data IPv6 prefix list version
- `source_ip` (String) Source IPv6 prefix
- `source_port` (Number) Source port
- `tcp` (String) TCP parameters
- `type` (String) Type of match entry
1 change: 1 addition & 0 deletions docs/guides/changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ description: |-
- Add `sdwan_system_global_profile_parcel` resource and data source
- BREAKING CHANGE: Rename `sdwan_acl_policy_definition` resource and data source to `sdwan_ipv4_acl_policy_definition`
- BREAKING CHANGE: Rename `sdwan_device_acl_policy_definition` resource and data source to `sdwan_ipv4_device_acl_policy_definition`
- Add `sdwan_ipv6_acl_policy_definition` resource and data source

## 0.2.11

Expand Down
155 changes: 155 additions & 0 deletions docs/resources/ipv6_acl_policy_definition.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,155 @@
---
# generated by https://github.com/hashicorp/terraform-plugin-docs
page_title: "sdwan_ipv6_acl_policy_definition Resource - terraform-provider-sdwan"
subcategory: "Localized Policies"
description: |-
This resource can manage a IPv6 ACL Policy Definition .
---

# sdwan_ipv6_acl_policy_definition (Resource)

This resource can manage a IPv6 ACL Policy Definition .

## Example Usage

```terraform
resource "sdwan_ipv6_acl_policy_definition" "example" {
name = "Example"
description = "My description"
default_action = "drop"
sequences = [
{
id = 10
name = "Sequence 10"
base_action = "accept"
match_entries = [
{
type = "nextHeader"
next_header = 1
}
]
action_entries = [
{
type = "set"
set_parameters = [
{
type = "trafficClass"
traffic_class = 16
}
]
}
]
}
]
}
```

<!-- schema generated by tfplugindocs -->
## Schema

### Required

- `description` (String) The description of the policy definition
- `name` (String) The name of the policy definition
- `sequences` (Attributes List) List of ACL sequences (see [below for nested schema](#nestedatt--sequences))

### Optional

- `default_action` (String) Default action, either `accept` or `drop`
- Choices: `accept`, `drop`

### Read-Only

- `id` (String) The id of the object
- `version` (Number) The version of the object

<a id="nestedatt--sequences"></a>
### Nested Schema for `sequences`

Required:

- `id` (Number) Sequence ID
- Range: `1`-`65534`
- `name` (String) Sequence name

Optional:

- `action_entries` (Attributes List) List of action entries (see [below for nested schema](#nestedatt--sequences--action_entries))
- `base_action` (String) Base action, either `accept` or `drop`
- Choices: `accept`, `drop`
- `match_entries` (Attributes List) List of match entries (see [below for nested schema](#nestedatt--sequences--match_entries))

<a id="nestedatt--sequences--action_entries"></a>
### Nested Schema for `sequences.action_entries`

Required:

- `type` (String) Type of action entry
- Choices: `class`, `count`, `set`, `log`, `mirror`, `policer`

Optional:

- `class_map_id` (String) Class map ID
- `class_map_version` (Number) Class map version
- `counter_name` (String) Counter name
- `log` (Boolean) Enable logging
- `mirror_id` (String) Mirror ID
- `mirror_version` (Number) Mirror version
- `policer_id` (String) Policer ID
- `policer_version` (Number) Policer version
- `set_parameters` (Attributes List) List of set parameters (see [below for nested schema](#nestedatt--sequences--action_entries--set_parameters))

<a id="nestedatt--sequences--action_entries--set_parameters"></a>
### Nested Schema for `sequences.action_entries.set_parameters`

Required:

- `type` (String) Type of set parameter
- Choices: `trafficClass`, `nextHop`

Optional:

- `next_hop` (String) Next hop IP
- `traffic_class` (Number) Traffic class
- Range: `0`-`63`



<a id="nestedatt--sequences--match_entries"></a>
### Nested Schema for `sequences.match_entries`

Required:

- `type` (String) Type of match entry
- Choices: `nextHeader`, `sourceIpv6`, `destinationIpv6`, `class`, `packetLength`, `plp`, `sourcePort`, `destinationPort`, `sourceDataIpv6PrefixList`, `destinationDataIpv6PrefixList`, `tcp`

Optional:

- `class_map_id` (String) Class map ID
- `class_map_version` (Number) Class map version
- `destination_data_ipv6_prefix_list_id` (String) Destination dataIPv6 prefix list ID
- `destination_data_ipv6_prefix_list_version` (Number) Destination data prefix list version
- `destination_ip` (String) Destination IPv6 prefix
- `destination_port` (Number) Destination port
- Range: `0`-`65535`
- `next_header` (Number) Next header
- Range: `0`-`255`
- `packet_length` (Number) Packet length
- Range: `0`-`65535`
- `priority` (String) PLP - priority
- Choices: `high`, `low`
- `source_data_ipv6_prefix_list_id` (String) Source data IPv6 prefix list ID
- `source_data_ipv6_prefix_list_version` (Number) Source data IPv6 prefix list version
- `source_ip` (String) Source IPv6 prefix
- `source_port` (Number) Source port
- Range: `0`-`65535`
- `tcp` (String) TCP parameters
- Choices: `syn`

## Import

Import is supported using the following syntax:

```shell
terraform import sdwan_ipv6_acl_policy_definition.example "f6b2c44c-693c-4763-b010-895aa3d236bd"
```
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
data "sdwan_ipv6_acl_policy_definition" "example" {
id = "f6b2c44c-693c-4763-b010-895aa3d236bd"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
terraform import sdwan_ipv6_acl_policy_definition.example "f6b2c44c-693c-4763-b010-895aa3d236bd"
29 changes: 29 additions & 0 deletions examples/resources/sdwan_ipv6_acl_policy_definition/resource.tf
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
resource "sdwan_ipv6_acl_policy_definition" "example" {
name = "Example"
description = "My description"
default_action = "drop"
sequences = [
{
id = 10
name = "Sequence 10"
base_action = "accept"
match_entries = [
{
type = "nextHeader"
next_header = 1
}
]
action_entries = [
{
type = "set"
set_parameters = [
{
type = "trafficClass"
traffic_class = 16
}
]
}
]
}
]
}
Loading

0 comments on commit 843a1d8

Please sign in to comment.