Skip to content

Commit

Permalink
docs: Adding NIMF doc updates to templates
Browse files Browse the repository at this point in the history
  • Loading branch information
srushti-patl committed Jul 18, 2024
1 parent 0531923 commit ee13ff1
Show file tree
Hide file tree
Showing 9 changed files with 219 additions and 38 deletions.
6 changes: 3 additions & 3 deletions docs/resources/fabric_connection.md
Original file line number Diff line number Diff line change
Expand Up @@ -663,7 +663,7 @@ resource "equinix_fabric_connection" "epl" {
}
```

NIMF Metal to AWS EVPL_VC Connection
NIMF Metal to AWS EVPL_VC Connection:

```terraform
resource "equinix_fabric_connection" "metal2aws" {
Expand Down Expand Up @@ -700,7 +700,7 @@ resource "equinix_fabric_connection" "metal2aws" {
}
```

NIMF Fabric Cloud Router to Metal IP_VC Connection
NIMF Fabric Cloud Router to Metal IP_VC Connection:

```terraform
resource "equinix_fabric_connection" "fcr2metal" {
Expand Down Expand Up @@ -794,7 +794,7 @@ Optional:

Optional:

- `authentication_key` (String) Authentication key for provider based or Metal NIMF connections
- `authentication_key` (String) Authentication key for provider based connections or Metal NIMF connections
- `gateway` (Block Set, Max: 1, Deprecated) **Deprecated** `gateway` Use `router` attribute instead (see [below for nested schema](#nestedblock--a_side--access_point--gateway))
- `interface` (Block Set, Max: 1) Virtual device interface (see [below for nested schema](#nestedblock--a_side--access_point--interface))
- `link_protocol` (Block Set, Max: 1) Connection link protocol (see [below for nested schema](#nestedblock--a_side--access_point--link_protocol))
Expand Down
59 changes: 27 additions & 32 deletions docs/resources/metal_connection.md
Original file line number Diff line number Diff line change
Expand Up @@ -132,23 +132,21 @@ resource "equinix_fabric_connection" "example" {

```terraform
resource "equinix_metal_vlan" "example1" {
project_id = local.my_project_id
metro = "SV"
project_id = local.my_project_id
metro = "SV"
}
resource "equinix_metal_connection" "example" {
name = "tf-port-to-metal-legacy"
project_id = local.my_project_id
metro = "SV"
redundancy = "redundant"
type = "shared"
contact_email = "[email protected]"
vlans = [
equinix_metal_vlan.example1.vxlan,
equinix_metal_vlan.example2.vxlan
]
name = "tf-port-to-metal-legacy"
project_id = local.my_project_id
metro = "SV"
redundancy = "redundant"
type = "shared"
contact_email = "[email protected]"
vlans = [
equinix_metal_vlan.example1.vxlan,
equinix_metal_vlan.example2.vxlan
]
}
data "equinix_fabric_service_profiles" "zside" {
count = var.zside_ap_type == "SP" ? 1 : 0
filter {
Expand All @@ -157,7 +155,6 @@ data "equinix_fabric_service_profiles" "zside" {
values = ["AWS Direct Connect"]
}
}
resource "equinix_fabric_connection" "example" {
name = "tf-NIMF-metal-2-aws-legacy"
type = "EVPL_VC"
Expand All @@ -166,7 +163,7 @@ resource "equinix_fabric_connection" "example" {
emails = "[email protected]"
}
project {
project_id = local.fabric_project_id
project_id = local.fabric_project_id
}
bandwidth = "200"
order {
Expand Down Expand Up @@ -199,23 +196,21 @@ resource "equinix_fabric_connection" "example" {

```terraform
resource "equinix_metal_vlan" "example1" {
project_id = local.my_project_id
metro = "SV"
project_id = local.my_project_id
metro = "SV"
}
resource "equinix_metal_connection" "example" {
name = "tf-port-to-metal-legacy"
project_id = local.my_project_id
metro = "SV"
redundancy = "redundant"
type = "shared"
contact_email = "[email protected]"
vlans = [
equinix_metal_vlan.example1.vxlan,
equinix_metal_vlan.example2.vxlan
]
name = "tf-port-to-metal-legacy"
project_id = local.my_project_id
metro = "SV"
redundancy = "redundant"
type = "shared"
contact_email = "[email protected]"
vlans = [
equinix_metal_vlan.example1.vxlan,
equinix_metal_vlan.example2.vxlan
]
}
resource "equinix_fabric_connection" "example" {
name = "tf-NIMF-metal-2-aws-legacy"
type = "EVPL_VC"
Expand All @@ -224,7 +219,7 @@ resource "equinix_fabric_connection" "example" {
emails = "[email protected]"
}
project {
project_id = local.fabric_project_id
project_id = local.fabric_project_id
}
bandwidth = "200"
order {
Expand Down Expand Up @@ -280,4 +275,4 @@ In addition to all arguments above, the following attributes are exported:
* `ports` - List of connection ports - primary (`ports[0]`) and secondary (`ports[1]`). Schema of port is described in documentation of the [equinix_metal_connection datasource](../data-sources/metal_connection.md).
* `service_tokens` - List of connection service tokens with attributes required to configure the connection in Equinix Fabric with the [equinix_fabric_connection](./fabric_connection.md) resource or from the [Equinix Fabric Portal](https://fabric.equinix.com/dashboard). Scehma of service_token is described in documentation of the [equinix_metal_connection datasource](../data-sources/metal_connection.md).
* `token` - (Deprecated) Fabric Token required to configure the connection in Equinix Fabric with the [equinix_fabric_connection](./fabric_connection.md) resource or from the [Equinix Fabric Portal](https://fabric.equinix.com/dashboard). If your organization already has connection service tokens enabled, use `service_tokens` instead.
* `authorization_code` - Fabric Authorization code to configure the NIMF connection with Cloud Service Provider through Equinix Fabric with the [equinix_fabric_connection](./fabric_connection.md) resource from the [Equinix Developer Portal](https://developer.equinix.com/dev-docs/fabric/getting-started/fabric-v4-apis/connect-metal-to-amazon-web-services).
* `authorization_code` - Fabric Authorization code to configure the NIMF connection with Cloud Service Provider through Equinix Fabric with the [equinix_fabric_connection](./fabric_connection.md) resource from the [Equinix Developer Portal](https://developer.equinix.com/dev-docs/fabric/getting-started/fabric-v4-apis/connect-metal-to-amazon-web-services).
32 changes: 32 additions & 0 deletions examples/resources/fabric_connection/example_16.tf
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
resource "equinix_fabric_connection" "metal2aws" {
name = "ConnectionName"
type = "EVPLAN_VC"
notifications {
type = "ALL"
emails = ["[email protected]", "[email protected]"]
}
bandwidth = 50
order {
purchase_order_number = "1-323292"
}
a_side {
access_point {
type = "METAL_NETWORK"
authentication_key = "<metal_authorization_code>"
}
}
z_side {
access_point {
type = "SP"
authentication_key = "<aws_account_id>"
seller_region = "us-west-1"
profile {
type = "L2_PROFILE"
uuid = "<service_profile_uuid>"
}
location {
metro_code = "SV"
}
}
}
}
26 changes: 26 additions & 0 deletions examples/resources/fabric_connection/example_17.tf
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
resource "equinix_fabric_connection" "fcr2metal" {
name = "ConnectionName"
type = "IP_VC"
notifications {
type = "ALL"
emails = ["[email protected]", "[email protected]"]
}
bandwidth = 50
order {
purchase_order_number = "1-323292"
}
a_side {
access_point {
type = "CLOUD_ROUTER"
router {
uuid = "<cloud_router_uuid>"
}
}
}
z_side {
access_point {
type = "METAL_NETWORK"
authentication_key = "<metal_authorization_code>"
}
}
}
59 changes: 59 additions & 0 deletions examples/resources/metal_connection/example_4.tf
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
resource "equinix_metal_vlan" "example1" {
project_id = local.my_project_id
metro = "SV"
}
resource "equinix_metal_connection" "example" {
name = "tf-port-to-metal-legacy"
project_id = local.my_project_id
metro = "SV"
redundancy = "redundant"
type = "shared"
contact_email = "[email protected]"
vlans = [
equinix_metal_vlan.example1.vxlan,
equinix_metal_vlan.example2.vxlan
]
}
data "equinix_fabric_service_profiles" "zside" {
count = var.zside_ap_type == "SP" ? 1 : 0
filter {
property = "/name"
operator = "="
values = ["AWS Direct Connect"]
}
}
resource "equinix_fabric_connection" "example" {
name = "tf-NIMF-metal-2-aws-legacy"
type = "EVPL_VC"
notifications {
type = "ALL"
emails = "[email protected]"
}
project {
project_id = local.fabric_project_id
}
bandwidth = "200"
order {
purchase_order_number = "1-323292"
}
a_side {
access_point {
type = "METAL_NETWORK"
authentication_key = equinix_metal_connection.metal-connection.authorization_code
}
}
z_side {
access_point {
type = "SP"
authentication_key = local.aws_account_id
seller_region = "us-west-1"
profile {
type = "L2_PROFILE"
uuid = data.equinix_fabric_service_profiles.zside[0].id
}
location {
metro_code ="SV"
}
}
}
}
51 changes: 51 additions & 0 deletions examples/resources/metal_connection/example_5.tf
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
resource "equinix_metal_vlan" "example1" {
project_id = local.my_project_id
metro = "SV"
}
resource "equinix_metal_connection" "example" {
name = "tf-port-to-metal-legacy"
project_id = local.my_project_id
metro = "SV"
redundancy = "redundant"
type = "shared"
contact_email = "[email protected]"
vlans = [
equinix_metal_vlan.example1.vxlan,
equinix_metal_vlan.example2.vxlan
]
}
resource "equinix_fabric_connection" "example" {
name = "tf-NIMF-metal-2-aws-legacy"
type = "EVPL_VC"
notifications {
type = "ALL"
emails = "[email protected]"
}
project {
project_id = local.fabric_project_id
}
bandwidth = "200"
order {
purchase_order_number = "1-323292"
}
a_side {
access_point {
type = "METAL_NETWORK"
authentication_key = equinix_metal_connection.metal-connection.authorization_code
}
}
z_side {
access_point {
type = "SP"
authentication_key = local.aws_account_id
seller_region = "us-west-1"
profile {
type = "L2_PROFILE"
uuid = data.equinix_fabric_service_profiles.zside[0].id
}
location {
metro_code ="SV"
}
}
}
}
1 change: 1 addition & 0 deletions templates/data-sources/metal_connection.md.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -56,3 +56,4 @@ In addition to all arguments above, the following attributes are exported:
* `link_status` - Port link status.
* `virtual_circuit_ids` - List of IDs of virtual cicruits attached to this port.
* `token` - (Deprecated) Fabric Token required to configure the connection in Equinix Fabric with the [equinix_fabric_connection](../resources/fabric_connection.md) resource or from the [Equinix Fabric Portal](https://fabric.equinix.com/dashboard). If your organization already has connection service tokens enabled, use `service_tokens` instead.
* `authorization_code` - Fabric Authorization Code to configure the NIMF connection in Equinix Fabric with the [equinix_fabric_connection](../resources/fabric_connection.md) resource or from the [Equinix Fabric Portal](https://fabric.equinix.com/dashboard).
14 changes: 11 additions & 3 deletions templates/resources/fabric_connection.md.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -86,6 +86,14 @@ EVPLAN Port to Network Connection:

{{tffile "examples/resources/fabric_connection/example_15.tf"}}

NIMF Metal to AWS EVPL_VC Connection:

{{tffile "examples/resources/fabric_connection/example_16.tf"}}

NIMF Fabric Cloud Router to Metal IP_VC Connection:

{{tffile "examples/resources/fabric_connection/example_17.tf"}}

### Notes:

Port to IBM Connections could be modified from IBM Service Provider Side by using parameters passed to additional_info field:
Expand Down Expand Up @@ -149,7 +157,7 @@ Optional:

Optional:

- `authentication_key` (String) Authentication key for provider based connections
- `authentication_key` (String) Authentication key for provider based connections or Metal NIMF connections
- `gateway` (Block Set, Max: 1, Deprecated) **Deprecated** `gateway` Use `router` attribute instead (see [below for nested schema](#nestedblock--a_side--access_point--gateway))
- `interface` (Block Set, Max: 1) Virtual device interface (see [below for nested schema](#nestedblock--a_side--access_point--interface))
- `link_protocol` (Block Set, Max: 1) Connection link protocol (see [below for nested schema](#nestedblock--a_side--access_point--link_protocol))
Expand All @@ -161,7 +169,7 @@ Optional:
- `provider_connection_id` (String) Provider assigned Connection Id
- `router` (Block Set, Max: 1) Cloud Router access point information that replaces `gateway` (see [below for nested schema](#nestedblock--a_side--access_point--router))
- `seller_region` (String) Access point seller region
- `type` (String) Access point type - COLO, VD, VG, SP, IGW, SUBNET, CLOUD_ROUTER, NETWORK
- `type` (String) Access point type - COLO, VD, VG, SP, IGW, SUBNET, CLOUD_ROUTER, NETWORK, METAL_NETWORK
- `virtual_device` (Block Set, Max: 1) Virtual device (see [below for nested schema](#nestedblock--a_side--access_point--virtual_device))

Read-Only:
Expand Down Expand Up @@ -392,7 +400,7 @@ Optional:
- `provider_connection_id` (String) Provider assigned Connection Id
- `router` (Block Set, Max: 1) Cloud Router access point information that replaces `gateway` (see [below for nested schema](#nestedblock--z_side--access_point--router))
- `seller_region` (String) Access point seller region
- `type` (String) Access point type - COLO, VD, VG, SP, IGW, SUBNET, CLOUD_ROUTER, NETWORK
- `type` (String) Access point type - COLO, VD, VG, SP, IGW, SUBNET, CLOUD_ROUTER, NETWORK, METAL_NETWORK
- `virtual_device` (Block Set, Max: 1) Virtual device (see [below for nested schema](#nestedblock--z_side--access_point--virtual_device))

Read-Only:
Expand Down
9 changes: 9 additions & 0 deletions templates/resources/metal_connection.md.tmpl
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,14 @@ Use this resource to request the creation an Interconnection asset to connect wi

{{tffile "examples/resources/metal_connection/example_3.tf"}}

### Shared Connection with authorization_code Non-redundant NIMF connection from Equinix Metal to a Cloud Service Provider via Equinix Fabric Port

{{tffile "examples/resources/metal_connection/example_4.tf"}}

### Shared Connection with authorization_code Non-redundant NIMF connection from Equinix Fabric Cloud Router to Equinix Metal

{{tffile "examples/resources/metal_connection/example_5.tf"}}

## Argument Reference

The following arguments are supported:
Expand Down Expand Up @@ -57,3 +65,4 @@ In addition to all arguments above, the following attributes are exported:
* `ports` - List of connection ports - primary (`ports[0]`) and secondary (`ports[1]`). Schema of port is described in documentation of the [equinix_metal_connection datasource](../data-sources/metal_connection.md).
* `service_tokens` - List of connection service tokens with attributes required to configure the connection in Equinix Fabric with the [equinix_fabric_connection](./fabric_connection.md) resource or from the [Equinix Fabric Portal](https://fabric.equinix.com/dashboard). Scehma of service_token is described in documentation of the [equinix_metal_connection datasource](../data-sources/metal_connection.md).
* `token` - (Deprecated) Fabric Token required to configure the connection in Equinix Fabric with the [equinix_fabric_connection](./fabric_connection.md) resource or from the [Equinix Fabric Portal](https://fabric.equinix.com/dashboard). If your organization already has connection service tokens enabled, use `service_tokens` instead.
* `authorization_code` - Fabric Authorization code to configure the NIMF connection with Cloud Service Provider through Equinix Fabric with the [equinix_fabric_connection](./fabric_connection.md) resource from the [Equinix Developer Portal](https://developer.equinix.com/dev-docs/fabric/getting-started/fabric-v4-apis/connect-metal-to-amazon-web-services).

0 comments on commit ee13ff1

Please sign in to comment.