-
Notifications
You must be signed in to change notification settings - Fork 79
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Added support for the ForwardZone and upgraded Terraform and Go Lang …
…version (#373) --------- Co-authored-by: Jaykumar Chhatbar <[email protected]> Co-authored-by: Aish-sp <[email protected]>
- Loading branch information
1 parent
d9cc48b
commit a345439
Showing
1,668 changed files
with
135,648 additions
and
46,655 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1 @@ | ||
1.17 | ||
1.21 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,102 @@ | ||
# Host-record Data Source | ||
|
||
Use the `infoblox_host_record` data source to retrieve the following information for a Host-Record if any, which is managed by a NIOS server: | ||
|
||
* `dns_view`: the DNS view which the record's zone belongs to. Example: `default` | ||
* `fqdn`: the fully qualified domain name which the IP address is assigned to. `blues.test.com` | ||
* `ipv4_addr`: the IPv4 address associated with the Host-record. Example: `10.0.0.32` | ||
* `ipv6_addr`: the IPv6 address associated with the Host-record. Example: `2001:1890:1959:2710::32` | ||
* `mac_addr`: the MAC address associated with the Host-record. Example: `aa:bb:cc:dd:ee:11` | ||
* `zone`: the zone that contains the record in the specified DNS view. Example: `test.com`. | ||
* `ttl`: the "time to live" value of the record, in seconds. Example: `1800`. | ||
* `duid`: the DHCP Unique Identifier of the record. Example: `34:df:37:1a:d9:7f`. | ||
* `enable_dns`: the flag to enable or disable the DNS record. Example: `true`. | ||
* `enable_dhcp`: the flag to enable or disable the DHCP record. Example: `true`. | ||
* `comment`: the description of the record. This is a regular comment. Example: `Temporary A-record`. | ||
* `ext_attrs`: the set of extensible attributes of the record, if any. The content is formatted as string of JSON map. Example: `"{\"TestEA\":56,\"TestEA1\":\"kickoff\"}"` | ||
|
||
To retrieve information about host records that match the specified filters, use the `filters` argument and specify the parameters mentioned in the below table. These are the searchable parameters of the corresponding object in Infoblox NIOS WAPI. If you do not specify any parameter, the data source retrieves information about all host records in the NIOS Grid. | ||
|
||
The following table describes the parameters you can define in an `infoblox_host_record` data source block: | ||
|
||
### Supported Arguments for filters | ||
|
||
----- | ||
| Field | Alias | Type | Searchable | | ||
|--------------|--------------|--------|------------| | ||
| name | fqdn | string | yes | | ||
| view | dns_view | string | yes | | ||
| network_view | network_view | string | yes | | ||
| zone | zone | string | yes | | ||
| comment | comment | string | yes | | ||
|
||
!> Aliases are the parameter names used in the prior releases of Infoblox IPAM Plug-In for Terraform. Do not use the alias names for parameters in the data source blocks. Using them can result in error scenarios. | ||
|
||
### Example for using the filters: | ||
```hcl | ||
data "infoblox_host_record" "host_rec_filter" { | ||
filters = { | ||
name = "host1.example.org" | ||
} | ||
} | ||
``` | ||
|
||
!> If `null` or empty filters are passed, then all the records or objects associated with datasource like here `infoblox_host_record` will be fetched in results. | ||
|
||
### Example of an Host-record Data Source Block | ||
|
||
This example defines a data source of type `infoblox_host_record` and the name "host_rec_temp", which is configured in a Terraform file. | ||
You can reference this resource and retrieve information about it. | ||
|
||
```hcl | ||
// This is just to ensure that the record has been be created | ||
resource "infoblox_zone_auth" "zone1" { | ||
fqdn = "example.org" | ||
view = "default" | ||
} | ||
resource "infoblox_ip_allocation" "allocation1" { | ||
dns_view = "default" | ||
enable_dns = true | ||
fqdn = "host1.example.org" | ||
ipv4_addr = "10.10.0.7" | ||
ipv6_addr = "1::1" | ||
ext_attrs = jsonencode({"Location" = "USA"}) | ||
depends_on = [infoblox_zone_auth.zone1] | ||
} | ||
resource "infoblox_ip_association" "association1" { | ||
internal_id = infoblox_ip_allocation.allocation1.id | ||
mac_addr = "12:00:43:fe:9a:8c" | ||
duid = "12:00:43:fe:9a:81" | ||
enable_dhcp = false | ||
depends_on = [infoblox_ip_allocation.allocation1] | ||
} | ||
data "infoblox_host_record" "host_rec_temp" { | ||
filters = { | ||
name = "host1.example.org" | ||
} | ||
// This is just to ensure that the record has been be created | ||
// using 'infoblox_host_record' resource block before the data source will be queried. | ||
depends_on = [infoblox_ip_association.association1] | ||
} | ||
// accessing Host-record through name | ||
output "host_rec_res" { | ||
value = data.infoblox_host_record.host_rec_temp | ||
} | ||
// fetching Host-Records through EAs | ||
data "infoblox_host_record" "host_rec_ea" { | ||
filters = { | ||
"*Location" = "USA" | ||
} | ||
} | ||
output "host_ea_out" { | ||
value = data.infoblox_host_record.host_rec_ea | ||
} | ||
``` | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,78 @@ | ||
# IPv6 Network Data Source | ||
|
||
The data source for the network object allows you to get the following parameters for an IPv6 network resource: | ||
|
||
* `network_view`: the network view which the network container exists in. Example: `nondefault_netview` | ||
* `cidr`: the network block which corresponds to the network, in CIDR notation. Example: `2002:1f93:0:4::/96` | ||
* `comment`: a description of the network. This is a regular comment. Example: `Untrusted network`. | ||
* `ext_attrs`: The set of extensible attributes, if any. The content is formatted as string of JSON map. Example: `"{\"Owner\":\"State Library\",\"Administrator\":\"unknown\"}"`. | ||
|
||
|
||
To retrieve information about IPv6 network that match the specified filters, use the `filters` argument and specify the parameters mentioned in the below table. These are the searchable parameters of the corresponding object in Infoblox NIOS WAPI. If you do not specify any parameter, the data source retrieves information about all host records in the NIOS Grid. | ||
|
||
The following table describes the parameters you can define in an `infoblox_ipv6_network` data source block: | ||
|
||
### Supported Arguments for filters | ||
|
||
----- | ||
| Field | Alias | Type | Searchable | | ||
|--------------|--------------|--------|------------| | ||
| network | cidr | string | yes | | ||
| network_view | network_view | string | yes | | ||
| comment | comment | string | yes | | ||
|
||
!> Aliases are the parameter names used in the prior releases of Infoblox IPAM Plug-In for Terraform. Do not use the alias names for parameters in the data source blocks. Using them can result in error scenarios. | ||
|
||
### Example for using the filters: | ||
```hcl | ||
data "infoblox_ipv6_network" "readNet1" { | ||
filters = { | ||
network = "2002:1f93:0:4::/96" | ||
network_view = "nondefault_netview" | ||
} | ||
depends_on = [infoblox_ipv6_network.ipv6net1] | ||
} | ||
``` | ||
|
||
!> If `null` or empty filters are passed, then all the networks or objects associated with datasource like here `infoblox_ipv6_network`, will be fetched in results. | ||
|
||
### Example of a Network Data Source Block | ||
|
||
```hcl | ||
// This is just to ensure that the network has been be created | ||
resource "infoblox_ipv6_network" "ipv6net1" { | ||
cidr = "2002:1f93:0:4::/96" | ||
reserve_ipv6 = 10 | ||
gateway = "2002:1f93:0:4::1" | ||
comment = "let's try IPv6" | ||
ext_attrs = jsonencode({ | ||
"Site" = "Antarctica" | ||
}) | ||
} | ||
data "infoblox_ipv6_network" "readNet1" { | ||
filters = { | ||
network = "2002:1f93:0:4::/96" | ||
} | ||
// using 'infoblox_ipv6_network' resource block before the data source will be queried. | ||
depends_on = [infoblox_ipv6_network.ipv6net1] | ||
} | ||
// accessing IPv6 network through EA's | ||
data "infoblox_ipv6_network" "readnet2" { | ||
filters = { | ||
"*Site" = "Antarctica" | ||
} | ||
depends_on = [infoblox_ipv6_network.ipv6net1] | ||
} | ||
// throws matching IPv6 network. | ||
output "ipv6net_res" { | ||
value = data.infoblox_ipv6_network.readNet1 | ||
} | ||
// throws matching IPv4 networks with EA, if any | ||
output "ipv6net_res1" { | ||
value = data.infoblox_ipv6_network.readnet2 | ||
} | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,72 @@ | ||
# IPv6 Network Container Data Source | ||
|
||
Use the data source to retrieve the following information for an IPv6 network container resource from the corresponding | ||
object in NIOS: | ||
* `network_view`: the network view which the network container exists in. Example: `nondefault_netview` | ||
* `cidr`: the IPv6 network block of the network container. Example: `2002:1f93:0:2::/96` | ||
* `comment`: a description of the network container. This is a regular comment. Example: `Tenant 1 network container`. | ||
* `ext_attrs`: the set of extensible attributes of the network view, if any. The content is formatted as stirng of JSON map. Example: `"{\"Administrator\":\"[email protected]\"}"`. | ||
|
||
To retrieve information about Ipv6 network container that match the specified filters, use the `filters` argument and specify the parameters mentioned in the below table. These are the searchable parameters of the corresponding object in Infoblox NIOS WAPI. If you do not specify any parameter, the data source retrieves information about all host records in the NIOS Grid. | ||
|
||
The following table describes the parameters you can define in an `infoblox_ipv6_network_container` data source block: | ||
### Supported Arguments for filters | ||
|
||
----- | ||
| Field | Alias | Type | Searchable | | ||
|--------------|--------------|--------|------------| | ||
| network | cidr | string | yes | | ||
| network_view | network_view | string | yes | | ||
| comment | comment | string | yes | | ||
|
||
!> Aliases are the parameter names used in the prior releases of Infoblox IPAM Plug-In for Terraform. Do not use the alias names for parameters in the data source blocks. Using them can result in error scenarios. | ||
|
||
### Example for using the filters: | ||
```hcl | ||
data "infoblox_ipv6_network_container" "nc_filter" { | ||
filters = { | ||
network = "2002:1f93:0:2::/96" | ||
} | ||
} | ||
``` | ||
|
||
!> If `null` or empty filters are passed, then all the network containers or objects associated with datasource like here `infoblox_ipv6_network_container`, will be fetched in results. | ||
|
||
### Example of an IPv4 Network Container Data Source Block | ||
|
||
```hcl | ||
// This is just to ensure that the network container has been be created | ||
resource "infoblox_ipv6_network_container" "nc1" { | ||
cidr = "2002:1f93:0:2::/96" | ||
comment = "new generation network segment" | ||
ext_attrs = jsonencode({ | ||
"Site" = "space station" | ||
}) | ||
} | ||
data "infoblox_ipv6_network_container" "nc2" { | ||
filters = { | ||
network = "2002:1f93:0:2::/96" | ||
} | ||
// using 'infoblox_ipv6_network_container' resource block before the data source will be queried. | ||
depends_on = [infoblox_ipv6_network_container.nc1] | ||
} | ||
data "infoblox_ipv6_network_container" "nc_ea_search" { | ||
filters = { | ||
"*Site" = "space station" | ||
} | ||
// using 'infoblox_ipv6_network_container' resource block before the data source will be queried. | ||
depends_on = [infoblox_ipv6_network_container.nc1] | ||
} | ||
// accessing IPv6 network container through network block | ||
output "nc1_output" { | ||
value = data.infoblox_ipv6_network_container.nc2 | ||
} | ||
// accessing IPv6 network container through EA's | ||
output "nc1_comment" { | ||
value = data.infoblox_ipv6_network_container.nc_ea_search | ||
} | ||
``` |
Oops, something went wrong.