generated from equinix-labs/terraform-equinix-template
-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
fix: updated NGINX module readme files
- Loading branch information
1 parent
1330ff2
commit ae12b31
Showing
1 changed file
with
58 additions
and
103 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,77 +1,37 @@ | ||
# Equinix Network Edge NGINX device creation Terraform module | ||
# Network Edge Virtual Device NGINX SubModule | ||
|
||
[![Experimental](https://img.shields.io/badge/Stability-Experimental-red.svg)](https://github.com/equinix-labs/standards#about-uniform-standards) | ||
[![terraform](https://github.com/equinix-labs/terraform-equinix-template/actions/workflows/integration.yaml/badge.svg)](https://github.com/equinix-labs/terraform-equinix-template/actions/workflows/integration.yaml) | ||
The Network Edge Virtual Device NGINX Module will create NGINX devices on the Equinix | ||
Network edge platform. | ||
|
||
`terraform-equinix-network-edge-nginx` is a Terraform module that | ||
utilizes[Terraform provider for Equinix][equinix_terraform_provider_url] to | ||
create Network Edge NGINX device. | ||
1. Single or Non HA device | ||
2. HA devices | ||
3. Cluster devices | ||
|
||
This module creates a NGINX single device, HA pair and Cluster based on configuration. | ||
Please refer to the nginx-* examples in this module's registry for more details on how to leverage the | ||
submodule. | ||
|
||
## Usage | ||
<!-- Begin Module Docs (Do not edit contents) --> | ||
|
||
This project is experimental and supported by the user | ||
community. Equinix does not provide support for this project. | ||
## Equinix Network Edge Developer Documentation | ||
|
||
Install Terraform using the official guides at <https://learn.hashicorp.com/tutorials/terraform/install-cli>. | ||
To see the documentation for the APIs that the Network Edge Terraform Provider is built on | ||
and to learn how to procure your own Client_Id and Client_Secret follow the link below: | ||
[Equinix Network Edge Developer Portal](https://developer.equinix.com/catalog/network-edgev1) | ||
<!-- End Module Docs --> | ||
|
||
This project may be forked, cloned, or downloaded and | ||
modified as needed as the base in your integrations and deployments. | ||
|
||
This project may also be used as a [Terraform module](https://learn.hashicorp.com/collections/terraform/modules). | ||
|
||
To use this module in a new project, create a file such as: | ||
|
||
```hcl | ||
# main.tf | ||
provider "equinix" { | ||
client_id = var.equinix_client_id | ||
client_secret = var.equinix_client_secret | ||
} | ||
module "nginx-single" { | ||
source = "equinix-labs/network-edge-device-nginx/equinix" | ||
name = "terraform-test-NGINX" | ||
hostname = "terraform-nginx" | ||
metro_code = "AT" | ||
account_number = "123456" | ||
platform = "small" | ||
software_package = "STD" | ||
term_length = 1 | ||
notifications = ["[email protected]"] | ||
additional_bandwidth = 50 | ||
mgmt_acl_template_uuid = equinix_network_acl_template.nginx-pri.id | ||
ssh_key = { | ||
userName = "johndoe" | ||
keyName = equinix_network_ssh_key.johndoe.name | ||
} | ||
} | ||
``` | ||
|
||
Run `terraform init -upgrade` and `terraform apply`. | ||
|
||
## Variables | ||
|
||
See <https://registry.terraform.io/modules/equinix-labs/network-edge-device-nginx/equinix/latest?tab=inputs> | ||
for a description of all variables. | ||
|
||
## Examples | ||
|
||
<!-- TEMPLATE: The following block has been generated by terraform-docs util: https://github.com/terraform-docs/terraform-docs --> | ||
<!-- BEGIN_TF_DOCS --> | ||
|
||
## Requirements | ||
|
||
| Name | Version | | ||
|------|---------| | ||
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.3 | | ||
| <a name="requirement_equinix"></a> [equinix](#requirement\_equinix) | >= 1.34 | | ||
| Name | Version | | ||
|---------------------------------------------------------------------------|---------| | ||
| <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.3 | | ||
| <a name="requirement_equinix"></a> [equinix](#requirement\_equinix) | >= 1.34 | | ||
|
||
## Providers | ||
|
||
| Name | Version | | ||
|------|---------| | ||
| Name | Version | | ||
|---------------------------------------------------------------|---------| | ||
| <a name="provider_equinix"></a> [equinix](#provider\_equinix) | >= 1.34 | | ||
|
||
## Modules | ||
|
@@ -80,54 +40,49 @@ No modules. | |
|
||
## Resources | ||
|
||
| Name | Type | | ||
|------|------| | ||
| [equinix_network_device.cluster](https://registry.terraform.io/providers/equinix/equinix/latest/docs/resources/network_device) | resource | | ||
| [equinix_network_device.non_cluster](https://registry.terraform.io/providers/equinix/equinix/latest/docs/resources/network_device) | resource | | ||
| Name | Type | | ||
|--------------------------------------------------------------------------------------------------------------------------------------------------|-------------| | ||
| [equinix_network_device.cluster](https://registry.terraform.io/providers/equinix/equinix/latest/docs/resources/network_device) | resource | | ||
| [equinix_network_device.non_cluster](https://registry.terraform.io/providers/equinix/equinix/latest/docs/resources/network_device) | resource | | ||
| [equinix_network_device_platform.this](https://registry.terraform.io/providers/equinix/equinix/latest/docs/data-sources/network_device_platform) | data source | | ||
| [equinix_network_device_software.this](https://registry.terraform.io/providers/equinix/equinix/latest/docs/data-sources/network_device_software) | data source | | ||
| [equinix_network_device_type.this](https://registry.terraform.io/providers/equinix/equinix/latest/docs/data-sources/network_device_type) | data source | | ||
| [equinix_network_device_type.this](https://registry.terraform.io/providers/equinix/equinix/latest/docs/data-sources/network_device_type) | data source | | ||
|
||
## Inputs | ||
|
||
| Name | Description | Type | Default | Required | | ||
|------|-------------|------|---------|:--------:| | ||
| <a name="input_metro_code"></a> [metro\_code](#input\_metro\_code) | Device location metro code | `string` | n/a | yes | | ||
| <a name="input_name"></a> [name](#input\_name) | Device name | `string` | n/a | yes | | ||
| <a name="input_notifications"></a> [notifications](#input\_notifications) | List of email addresses that will receive device status notifications | `list(string)` | n/a | yes | | ||
| <a name="input_platform"></a> [platform](#input\_platform) | Device platform flavor that determines number of CPU cores and memory | `string` | n/a | yes | | ||
| <a name="input_software_package"></a> [software\_package](#input\_software\_package) | Device software package | `string` | n/a | yes | | ||
| <a name="input_ssh_key"></a> [ssh\_key](#input\_ssh\_key) | SSH public key for a device | <pre>object({<br> userName = string<br> keyName = string<br> })</pre> | n/a | yes | | ||
| <a name="input_term_length"></a> [term\_length](#input\_term\_length) | Term length in months | `number` | n/a | yes | | ||
| <a name="input_account_number"></a> [account\_number](#input\_account\_number) | Billing account number for a device | `string` | `0` | no | | ||
| <a name="input_additional_bandwidth"></a> [additional\_bandwidth](#input\_additional\_bandwidth) | Additional internet bandwidth for a device | `number` | `0` | no | | ||
| <a name="input_cluster"></a> [cluster](#input\_cluster) | cluster device attributes | `map(any)` | <pre>{<br> "enabled": false<br>}</pre> | no | | ||
| <a name="input_hostname"></a> [hostname](#input\_hostname) | Device hostname | `string` | `""` | no | | ||
| <a name="input_interface_count"></a> [interface\_count](#input\_interface\_count) | Number of network interfaces on a device. If not specified, default number for a given device type will be used. | `number` | `10` | no | | ||
| <a name="input_mgmt_acl_template_uuid"></a> [mgmt\_acl\_template\_uuid](#input\_mgmt\_acl\_template\_uuid) | Identifier of an management ACL template that will be applied on a device | `string` | `""` | no | | ||
| <a name="input_secondary"></a> [secondary](#input\_secondary) | Secondary device attributes | `map(any)` | <pre>{<br> "enabled": false<br>}</pre> | no | | ||
| Name | Description | Type | Default | Required | | ||
|------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------|-------------------------------------------------------------------------------|-----------------------------------------|:--------:| | ||
| <a name="input_metro_code"></a> [metro\_code](#input\_metro\_code) | Device location metro code | `string` | n/a | yes | | ||
| <a name="input_name"></a> [name](#input\_name) | Device name | `string` | n/a | yes | | ||
| <a name="input_notifications"></a> [notifications](#input\_notifications) | List of email addresses that will receive device status notifications | `list(string)` | n/a | yes | | ||
| <a name="input_platform"></a> [platform](#input\_platform) | Device platform flavor that determines number of CPU cores and memory | `string` | n/a | yes | | ||
| <a name="input_software_package"></a> [software\_package](#input\_software\_package) | Device software package | `string` | n/a | yes | | ||
| <a name="input_ssh_key"></a> [ssh\_key](#input\_ssh\_key) | SSH public key for a device | <pre>object({<br> userName = string<br> keyName = string<br> })</pre> | n/a | yes | | ||
| <a name="input_term_length"></a> [term\_length](#input\_term\_length) | Term length in months | `number` | n/a | yes | | ||
| <a name="input_account_number"></a> [account\_number](#input\_account\_number) | Billing account number for a device | `string` | `0` | no | | ||
| <a name="input_additional_bandwidth"></a> [additional\_bandwidth](#input\_additional\_bandwidth) | Additional internet bandwidth for a device | `number` | `0` | no | | ||
| <a name="input_cluster"></a> [cluster](#input\_cluster) | cluster device attributes | `map(any)` | <pre>{<br> "enabled": false<br>}</pre> | no | | ||
| <a name="input_hostname"></a> [hostname](#input\_hostname) | Device hostname | `string` | `""` | no | | ||
| <a name="input_interface_count"></a> [interface\_count](#input\_interface\_count) | Number of network interfaces on a device. If not specified, default number for a given device type will be used. | `number` | `10` | no | | ||
| <a name="input_mgmt_acl_template_uuid"></a> [mgmt\_acl\_template\_uuid](#input\_mgmt\_acl\_template\_uuid) | Identifier of an management ACL template that will be applied on a device | `string` | `""` | no | | ||
| <a name="input_secondary"></a> [secondary](#input\_secondary) | Secondary device attributes | `map(any)` | <pre>{<br> "enabled": false<br>}</pre> | no | | ||
|
||
## Outputs | ||
|
||
| Name | Description | | ||
|------|-------------| | ||
| <a name="output_account_number"></a> [account\_number](#output\_account\_number) | Device billing account number | | ||
| <a name="output_cpu_count"></a> [cpu\_count](#output\_cpu\_count) | Device CPU cores count | | ||
| <a name="output_ibx"></a> [ibx](#output\_ibx) | Device IBX center | | ||
| <a name="output_id"></a> [id](#output\_id) | Device identifier | | ||
| <a name="output_interfaces"></a> [interfaces](#output\_interfaces) | Device interfaces | | ||
| <a name="output_license_status"></a> [license\_status](#output\_license\_status) | Device license status | | ||
| <a name="output_memory"></a> [memory](#output\_memory) | Device memory amount | | ||
| <a name="output_region"></a> [region](#output\_region) | Device region | | ||
| <a name="output_secondary"></a> [secondary](#output\_secondary) | Secondary device attributes | | ||
| <a name="output_software_version"></a> [software\_version](#output\_software\_version) | Device software version | | ||
| <a name="output_ssh_ip_address"></a> [ssh\_ip\_address](#output\_ssh\_ip\_address) | Device SSH interface IP address | | ||
| <a name="output_ssh_ip_fqdn"></a> [ssh\_ip\_fqdn](#output\_ssh\_ip\_fqdn) | Device SSH interface FQDN | | ||
| <a name="output_status"></a> [status](#output\_status) | Device provisioning status | | ||
<!-- END_TF_DOCS --> | ||
| Name | Description | | ||
|----------------------------------------------------------------------------------------|---------------------------------| | ||
| <a name="output_account_number"></a> [account\_number](#output\_account\_number) | Device billing account number | | ||
| <a name="output_cpu_count"></a> [cpu\_count](#output\_cpu\_count) | Device CPU cores count | | ||
| <a name="output_ibx"></a> [ibx](#output\_ibx) | Device IBX center | | ||
| <a name="output_id"></a> [id](#output\_id) | Device identifier | | ||
| <a name="output_interfaces"></a> [interfaces](#output\_interfaces) | Device interfaces | | ||
| <a name="output_license_status"></a> [license\_status](#output\_license\_status) | Device license status | | ||
| <a name="output_memory"></a> [memory](#output\_memory) | Device memory amount | | ||
| <a name="output_region"></a> [region](#output\_region) | Device region | | ||
| <a name="output_secondary"></a> [secondary](#output\_secondary) | Secondary device attributes | | ||
| <a name="output_software_version"></a> [software\_version](#output\_software\_version) | Device software version | | ||
| <a name="output_ssh_ip_address"></a> [ssh\_ip\_address](#output\_ssh\_ip\_address) | Device SSH interface IP address | | ||
| <a name="output_ssh_ip_fqdn"></a> [ssh\_ip\_fqdn](#output\_ssh\_ip\_fqdn) | Device SSH interface FQDN | | ||
| <a name="output_status"></a> [status](#output\_status) | Device provisioning status | | ||
|
||
[equinix_network_device_data_source_url]: (https://registry.terraform.io/providersequinix/equinix/latest/docs/resources/equinix_network_device) | ||
[equinix_network_device_type_data_source_url]: (https://registry.terraform.io/providers/equinix/equinix/latest/docs/data-sources/equinix_network_device_type) | ||
[equinix_network_device_platform_data_source_url]: (https://registry.terraform.io/providers/equinix/equinix/latest/docs/data-sources/equinix_network_device_platform) | ||
[equinix_network_device_software_data_source_url]: (https://registry.terraform.io/providers/equinix/equinix/latest/docs/data-sources/equinix_network_device_software) | ||
[equinix_terraform_provider_url]: (https://registry.terraform.io/providers/equinix/equinix/latest) | ||
<!-- END_TF_DOCS --> |