diff --git a/docs/data-sources/fabric_cloud_router.md b/docs/data-sources/fabric_cloud_router.md index 4fe254dbe..d5e2eca6d 100644 --- a/docs/data-sources/fabric_cloud_router.md +++ b/docs/data-sources/fabric_cloud_router.md @@ -79,6 +79,7 @@ output "type" { - `href` (String) Fabric Cloud Router URI information - `id` (String) The ID of this resource. - `location` (Set of Object) Fabric Cloud Router location (see [below for nested schema](#nestedatt--location)) +- `marketplace_subscription` (Set of Object) Equinix Fabric Entity for Marketplace Subscription (see [below for nested schema](#nestedatt--marketplace_subscription)) - `name` (String) Fabric Cloud Router name. An alpha-numeric 24 characters string which can include only hyphens and underscores - `notifications` (List of Object) Preferences for notifications on Fabric Cloud Router configuration or status changes (see [below for nested schema](#nestedatt--notifications)) - `order` (Set of Object) Order information related to this Fabric Cloud Router (see [below for nested schema](#nestedatt--order)) @@ -125,6 +126,15 @@ Read-Only: - `region` (String) + +### Nested Schema for `marketplace_subscription` + +Read-Only: + +- `type` (String) +- `uuid` (String) + + ### Nested Schema for `notifications` diff --git a/docs/data-sources/fabric_cloud_routers.md b/docs/data-sources/fabric_cloud_routers.md index 199ef3c59..66f227d30 100644 --- a/docs/data-sources/fabric_cloud_routers.md +++ b/docs/data-sources/fabric_cloud_routers.md @@ -160,6 +160,7 @@ Read-Only: - `equinix_asn` (Number) - `href` (String) - `location` (Set of Object) (see [below for nested schema](#nestedobjatt--data--location)) +- `marketplace_subscription` (Set of Object) (see [below for nested schema](#nestedobjatt--data--marketplace_subscription)) - `name` (String) - `notifications` (List of Object) (see [below for nested schema](#nestedobjatt--data--notifications)) - `order` (Set of Object) (see [below for nested schema](#nestedobjatt--data--order)) @@ -207,6 +208,15 @@ Read-Only: - `region` (String) + +### Nested Schema for `data.marketplace_subscription` + +Read-Only: + +- `type` (String) +- `uuid` (String) + + ### Nested Schema for `data.notifications` diff --git a/docs/resources/fabric_cloud_router.md b/docs/resources/fabric_cloud_router.md index 41d696c7a..644811fe5 100644 --- a/docs/resources/fabric_cloud_router.md +++ b/docs/resources/fabric_cloud_router.md @@ -1,5 +1,9 @@ --- +# generated by https://github.com/hashicorp/terraform-plugin-docs +page_title: "equinix_fabric_cloud_router Resource - terraform-provider-equinix" subcategory: "Fabric" +description: |- + Fabric V4 API compatible resource allows creation and management of Equinix Fabric Cloud Router --- # equinix_fabric_cloud_router (Resource) @@ -12,6 +16,7 @@ Additional documentation: ## Example Usage +Fabric Cloud Router ```terraform resource "equinix_fabric_cloud_router" "new_cloud_router"{ name = "Router-SV" @@ -38,12 +43,39 @@ resource "equinix_fabric_cloud_router" "new_cloud_router"{ } ``` +Fabric Cloud Router with Marketplace Subscription id +```terraform +resource "equinix_fabric_cloud_router" "new_cloud_router"{ + name = "Router-SV" + type = "XF_ROUTER" + notifications{ + type = "ALL" + emails = ["example@equinix.com","test1@equinix.com"] + } + order { + purchase_order_number = "1-323292" + } + location { + metro_code = "SV" + } + package { + code = "STANDARD" + } + project { + project_id = "776847000642406" + } + marketplace_subscription { + type = "AWS_MARKETPLACE_SUBSCRIPTION" + uuid = "2823b8ae07-a2a2-45b4-a658-c3542bb24e9" + } +} +``` + ## Schema ### Required -- `account` (Block Set, Min: 1, Max: 1) Customer account information that is associated with this Fabric Cloud Router (see [below for nested schema](#nestedblock--account)) - `location` (Block Set, Min: 1, Max: 1) Fabric Cloud Router location (see [below for nested schema](#nestedblock--location)) - `name` (String) Fabric Cloud Router name. An alpha-numeric 24 characters string which can include only hyphens and underscores - `notifications` (Block List, Min: 1) Preferences for notifications on Fabric Cloud Router configuration or status changes (see [below for nested schema](#nestedblock--notifications)) @@ -53,8 +85,10 @@ resource "equinix_fabric_cloud_router" "new_cloud_router"{ ### Optional +- `account` (Block Set, Max: 1) Customer account information that is associated with this Fabric Cloud Router (see [below for nested schema](#nestedblock--account)) - `description` (String) Customer-provided Fabric Cloud Router description - `href` (String) Fabric Cloud Router URI information +- `marketplace_subscription` (Block Set, Max: 1) Equinix Fabric Entity for Marketplace Subscription (see [below for nested schema](#nestedblock--marketplace_subscription)) - `order` (Block Set, Max: 1) Order information related to this Fabric Cloud Router (see [below for nested schema](#nestedblock--order)) - `timeouts` (Block, Optional) (see [below for nested schema](#nestedblock--timeouts)) - `uuid` (String) Equinix-assigned Fabric Cloud Router identifier @@ -71,14 +105,6 @@ resource "equinix_fabric_cloud_router" "new_cloud_router"{ - `id` (String) The ID of this resource. - `state` (String) Fabric Cloud Router overall state - -### Nested Schema for `account` - -Optional: - -- `account_number` (Number) Account Number - - ### Nested Schema for `location` @@ -120,6 +146,26 @@ Optional: - `project_id` (String) Project Id + +### Nested Schema for `account` + +Required: + +- `account_number` (Number) Account Number + + + +### Nested Schema for `marketplace_subscription` + +Required: + +- `uuid` (String) Equinix-assigned Marketplace Subscription identifier + +Optional: + +- `type` (String) Marketplace Subscription type like; AWS_MARKETPLACE_SUBSCRIPTION + + ### Nested Schema for `order` @@ -158,4 +204,4 @@ Read-Only: - `updated_by` (String) - `updated_by_email` (String) - `updated_by_full_name` (String) -- `updated_date_time` (String) +- `updated_date_time` (String) \ No newline at end of file diff --git a/examples/resources/equinix_fabric_cloud_router/example_1.tf b/examples/resources/equinix_fabric_cloud_router/example_1.tf new file mode 100644 index 000000000..552a095ac --- /dev/null +++ b/examples/resources/equinix_fabric_cloud_router/example_1.tf @@ -0,0 +1,24 @@ +resource "equinix_fabric_cloud_router" "new_cloud_router"{ + name = "Router-SV" + type = "XF_ROUTER" + notifications{ + type = "ALL" + emails = ["example@equinix.com","test1@equinix.com"] + } + order { + purchase_order_number = "1-323292" + } + location { + metro_code = "SV" + } + package { + code = "STANDARD" + } + project { + project_id = "776847000642406" + } + marketplace_subscription { + type = "AWS_MARKETPLACE_SUBSCRIPTION" + uuid = "2823b8ae07-a2a2-45b4-a658-c3542bb24e9" + } +} diff --git a/examples/resources/equinix_fabric_cloud_router/resource.tf b/examples/resources/equinix_fabric_cloud_router/example_2.tf similarity index 100% rename from examples/resources/equinix_fabric_cloud_router/resource.tf rename to examples/resources/equinix_fabric_cloud_router/example_2.tf diff --git a/templates/resources/fabric_cloud_router.md.tmpl b/templates/resources/fabric_cloud_router.md.tmpl new file mode 100644 index 000000000..d2da808d9 --- /dev/null +++ b/templates/resources/fabric_cloud_router.md.tmpl @@ -0,0 +1,29 @@ +--- +# generated by https://github.com/hashicorp/terraform-plugin-docs +page_title: "equinix_fabric_cloud_router Resource - terraform-provider-equinix" +subcategory: "Fabric" +description: |- + Fabric V4 API compatible resource allows creation and management of Equinix Fabric Cloud Router +--- + +{{/* This template serves as a starting point for documentation generation, and can be customized with hardcoded values and/or doc gen templates. + +For example, the {{ .SchemaMarkdown }} template can be used to replace manual schema documentation if descriptions of schema attributes are added in the provider source code. */ -}} + +# equinix_fabric_cloud_router (Resource) + +Fabric V4 API compatible resource allows creation and management of [Equinix Fabric Cloud Router](https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-intro.htm#HowItWorks). + +Additional documentation: +* Getting Started: https://docs.equinix.com/en-us/Content/Interconnection/FCR/FCR-intro.htm#HowItWorks +* API: https://developer.equinix.com/dev-docs/fabric/api-reference/fabric-v4-apis#fabric-cloud-routers + +## Example Usage + +Fabric Cloud Router +{{tffile "examples/resources/equinix_fabric_cloud_router/example_1.tf"}} + +Fabric Cloud Router with Marketplace Subscription id +{{tffile "examples/resources/equinix_fabric_cloud_router/example_2.tf"}} + +{{ .SchemaMarkdown | trimspace }}