From 8db0d9849ad3091328138081fcb5f45455ed43df Mon Sep 17 00:00:00 2001 From: bdeshi Date: Tue, 28 May 2024 15:09:16 +0600 Subject: [PATCH] merge terraform-docs into main readme --- .terraform-docs.yml | 2 +- README.md | 124 ++++++++++++++++++++++++++++++++++++++++++++ README.terraform.md | 119 ------------------------------------------ 3 files changed, 125 insertions(+), 120 deletions(-) delete mode 100644 README.terraform.md diff --git a/.terraform-docs.yml b/.terraform-docs.yml index ae2d7c6..01647c5 100644 --- a/.terraform-docs.yml +++ b/.terraform-docs.yml @@ -1,6 +1,6 @@ formatter: markdown table output: - file: README.terraform.md + file: README.md mode: inject sort: by: required diff --git a/README.md b/README.md index 6e94969..dccf774 100644 --- a/README.md +++ b/README.md @@ -3,3 +3,127 @@ Terraform Project for Oracle Cloud Infrastructure (OCI) Always Free Tier https://docs.oracle.com/en-us/iaas/Content/FreeTier/freetier_topic-Always_Free_Resources.htm + + + +# Terraform Docs + + +## Requirements + +| Name | Version | +|------|---------| +| [terraform](#requirement\_terraform) | ~> 1.8.0 | +| [oci](#requirement\_oci) | ~> 5.43.0 | +| [tls](#requirement\_tls) | ~> 4.0.5 | + +## Providers + +| Name | Version | +|------|---------| +| [oci](#provider\_oci) | 5.43.0 | +| [tls](#provider\_tls) | 4.0.5 | + +## Modules + +No modules. + +## Resources + +| Name | Type | +|------|------| +| [oci_core_default_route_table.default](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/core_default_route_table) | resource | +| [oci_core_default_security_list.default](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/core_default_security_list) | resource | +| [oci_core_instance.compute](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/core_instance) | resource | +| [oci_core_internet_gateway.igw](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/core_internet_gateway) | resource | +| [oci_core_network_security_group.default](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/core_network_security_group) | resource | +| [oci_core_network_security_group_security_rule.default](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/core_network_security_group_security_rule) | resource | +| [oci_core_public_ip.static](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/core_public_ip) | resource | +| [oci_core_subnet.public](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/core_subnet) | resource | +| [oci_core_vcn.vcn](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/core_vcn) | resource | +| [oci_email_dkim.domain](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/email_dkim) | resource | +| [oci_email_email_domain.domain](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/email_email_domain) | resource | +| [oci_email_sender.sender](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/email_sender) | resource | +| [oci_email_suppression.suppression](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/email_suppression) | resource | +| [oci_identity_api_key.admin](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/identity_api_key) | resource | +| [oci_identity_auth_token.admin](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/identity_auth_token) | resource | +| [oci_identity_compartment.compartment](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/identity_compartment) | resource | +| [oci_identity_customer_secret_key.admin](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/identity_customer_secret_key) | resource | +| [oci_identity_group.administrators](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/identity_group) | resource | +| [oci_identity_policy.administrators](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/identity_policy) | resource | +| [oci_identity_policy.kms_service_policy](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/identity_policy) | resource | +| [oci_identity_smtp_credential.admin](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/identity_smtp_credential) | resource | +| [oci_identity_ui_password.admin_initial](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/identity_ui_password) | resource | +| [oci_identity_user.admin](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/identity_user) | resource | +| [oci_identity_user_group_membership.admin](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/identity_user_group_membership) | resource | +| [oci_kms_key.key](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/kms_key) | resource | +| [oci_kms_vault.vault](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/kms_vault) | resource | +| [oci_ons_notification_topic.topic](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/ons_notification_topic) | resource | +| [oci_ons_subscription.subscription](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/ons_subscription) | resource | +| [tls_private_key.admin_api_key](https://registry.terraform.io/providers/hashicorp/tls/latest/docs/resources/private_key) | resource | +| [tls_private_key.compute_ssh_key](https://registry.terraform.io/providers/hashicorp/tls/latest/docs/resources/private_key) | resource | +| [oci_core_images.selected](https://registry.terraform.io/providers/oracle/oci/latest/docs/data-sources/core_images) | data source | +| [oci_core_shapes.available](https://registry.terraform.io/providers/oracle/oci/latest/docs/data-sources/core_shapes) | data source | +| [oci_email_configuration.endpoints](https://registry.terraform.io/providers/oracle/oci/latest/docs/data-sources/email_configuration) | data source | +| [oci_identity_availability_domains.available](https://registry.terraform.io/providers/oracle/oci/latest/docs/data-sources/identity_availability_domains) | data source | +| [oci_identity_tenancy.tenancy](https://registry.terraform.io/providers/oracle/oci/latest/docs/data-sources/identity_tenancy) | data source | +| [oci_kms_key.key](https://registry.terraform.io/providers/oracle/oci/latest/docs/data-sources/kms_key) | data source | + +## Inputs + +| Name | Description | Type | Default | Required | +|------|-------------|------|---------|:--------:| +| [oci\_region](#input\_oci\_region) | The region for the OCI provider | `string` | n/a | yes | +| [tenancy\_id](#input\_tenancy\_id) | The OCID of the tenancy | `string` | n/a | yes | +| [admin\_create\_credentials](#input\_admin\_create\_credentials) | Types of credentials to create for the admin user |
object({
api_key = bool
auth_token = bool
customer_key = bool
password = bool
smtp = bool
})
|
{
"api_key": true,
"auth_token": false,
"customer_key": false,
"password": false,
"smtp": true
}
| no | +| [create\_instances](#input\_create\_instances) | Create compute instances types |
object({
micro = bool
flex = bool
})
|
{
"flex": true,
"micro": true
}
| no | +| [create\_static\_ip](#input\_create\_static\_ip) | Create a reserved static IP | `bool` | `true` | no | +| [create\_topics](#input\_create\_topics) | Create notification topics | `bool` | `true` | no | +| [create\_vault](#input\_create\_vault) | Create vault | `bool` | `true` | no | +| [created\_compute\_ssh\_key\_algorithm](#input\_created\_compute\_ssh\_key\_algorithm) | The algorithm for the created SSH key if no key is provided | `string` | `"ED25519"` | no | +| [email\_configuration](#input\_email\_configuration) | values for email configuration |
object({
email_domains = list(string)
approved_senders = list(string)
suppression_list = list(string)
})
|
{
"approved_senders": [],
"email_domains": [],
"suppression_list": []
}
| no | +| [enable\_email\_delivery](#input\_enable\_email\_delivery) | Create email delivery supporting configurations | `bool` | `true` | no | +| [enable\_ipv6](#input\_enable\_ipv6) | Enable IPv6 for the VCN | `bool` | `true` | no | +| [iac\_project\_name](#input\_iac\_project\_name) | The name of the iac project | `string` | `"oci-free"` | no | +| [iac\_project\_source](#input\_iac\_project\_source) | The source repo of the iac project | `string` | `"https://git.bdeshi.space/bdeshi/terraform-oci-free.git"` | no | +| [oci\_profile](#input\_oci\_profile) | The config file profile for the OCI provider | `string` | `null` | no | +| [prefix](#input\_prefix) | Name prefix for all resources | `string` | `"free-"` | no | +| [supplied\_compute\_ssh\_public\_key](#input\_supplied\_compute\_ssh\_public\_key) | A pre-created public SSH key for the compute instances | `string` | `null` | no | +| [topics](#input\_topics) | Values for notification topics configuration |
map(object({
description = string
subscriptions = list(object({
protocol = string
endpoint = string
}))
}))
| `{}` | no | +| [use\_kms](#input\_use\_kms) | Use created vault for key creation and management |
object({
volume = bool
object = bool
database = bool
})
|
{
"database": true,
"object": true,
"volume": true
}
| no | +| [vcn\_cidr](#input\_vcn\_cidr) | The CIDR block for the VCN | `string` | `"10.0.0.0/16"` | no | + +## Outputs + +| Name | Description | +|------|-------------| +| [admin\_auth\_token](#output\_admin\_auth\_token) | The auth token of the admin user | +| [admin\_initial\_password](#output\_admin\_initial\_password) | The initial password of the admin user | +| [admin\_smtp\_password](#output\_admin\_smtp\_password) | The SMTP password of the admin user | +| [admin\_smtp\_username](#output\_admin\_smtp\_username) | The SMTP username of the admin user | +| [admin\_user\_id](#output\_admin\_user\_id) | The ID of the admin user | +| [api\_key\_fingerprint](#output\_api\_key\_fingerprint) | The fingerprint of the admin user API key | +| [api\_key\_private](#output\_api\_key\_private) | The private part of the admin user API key | +| [compartment\_id](#output\_compartment\_id) | The ID of the created compartment | +| [compartment\_name](#output\_compartment\_name) | The name of the created compartment | +| [customer\_key\_id](#output\_customer\_key\_id) | The ID of the customer key | +| [customer\_key\_key](#output\_customer\_key\_key) | The ID of the customer key | +| [email\_dkim\_records](#output\_email\_dkim\_records) | The DKIM records for the email domain | +| [email\_endpoints](#output\_email\_endpoints) | The email configuration endpoints | +| [instance\_availability\_domains](#output\_instance\_availability\_domains) | The availability domains of the instances | +| [instance\_ips](#output\_instance\_ips) | The public IP addresses of the instances | +| [instance\_selected\_images](#output\_instance\_selected\_images) | The selected images for each instance shape | +| [kms\_key\_ids](#output\_kms\_key\_ids) | The IDs of the KMS keys | +| [kms\_vault\_endpoints](#output\_kms\_vault\_endpoints) | The KMS vault endpoints | +| [kms\_vault\_id](#output\_kms\_vault\_id) | The ID of the KMS vault | +| [reserved\_ip](#output\_reserved\_ip) | The reserved public IP address | +| [ssh\_key\_private](#output\_ssh\_key\_private) | The created SSH private key for the compute instances | +| [ssh\_key\_public](#output\_ssh\_key\_public) | The public SSH key for the compute instances | +| [subnet\_cidr\_block](#output\_subnet\_cidr\_block) | The CIDR block for the subnet | +| [subnet\_ipv6\_cidr\_block](#output\_subnet\_ipv6\_cidr\_block) | The IPv6 CIDR block for the subnet | +| [tenancy\_id](#output\_tenancy\_id) | The ID of the tenancy | +| [tenancy\_name](#output\_tenancy\_name) | The name of the tenancy | +| [vcn\_cidr\_blocks](#output\_vcn\_cidr\_blocks) | The CIDR block for the VCN | +| [vcn\_ipv6\_cidr\_blocks](#output\_vcn\_ipv6\_cidr\_blocks) | The IPv6 CIDR block for the VCN | +| [vcn\_ipv6\_cidr\_private\_blocks](#output\_vcn\_ipv6\_cidr\_private\_blocks) | The IPv6 CIDR block for the VCN | + diff --git a/README.terraform.md b/README.terraform.md deleted file mode 100644 index d6501fb..0000000 --- a/README.terraform.md +++ /dev/null @@ -1,119 +0,0 @@ - -## Requirements - -| Name | Version | -|------|---------| -| [terraform](#requirement\_terraform) | ~> 1.8.0 | -| [oci](#requirement\_oci) | ~> 5.43.0 | -| [tls](#requirement\_tls) | ~> 4.0.5 | - -## Providers - -| Name | Version | -|------|---------| -| [oci](#provider\_oci) | 5.43.0 | -| [tls](#provider\_tls) | 4.0.5 | - -## Modules - -No modules. - -## Resources - -| Name | Type | -|------|------| -| [oci_core_default_route_table.default](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/core_default_route_table) | resource | -| [oci_core_default_security_list.default](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/core_default_security_list) | resource | -| [oci_core_instance.compute](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/core_instance) | resource | -| [oci_core_internet_gateway.igw](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/core_internet_gateway) | resource | -| [oci_core_network_security_group.default](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/core_network_security_group) | resource | -| [oci_core_network_security_group_security_rule.default](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/core_network_security_group_security_rule) | resource | -| [oci_core_public_ip.static](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/core_public_ip) | resource | -| [oci_core_subnet.public](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/core_subnet) | resource | -| [oci_core_vcn.vcn](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/core_vcn) | resource | -| [oci_email_dkim.domain](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/email_dkim) | resource | -| [oci_email_email_domain.domain](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/email_email_domain) | resource | -| [oci_email_sender.sender](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/email_sender) | resource | -| [oci_email_suppression.suppression](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/email_suppression) | resource | -| [oci_identity_api_key.admin](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/identity_api_key) | resource | -| [oci_identity_auth_token.admin](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/identity_auth_token) | resource | -| [oci_identity_compartment.compartment](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/identity_compartment) | resource | -| [oci_identity_customer_secret_key.admin](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/identity_customer_secret_key) | resource | -| [oci_identity_group.administrators](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/identity_group) | resource | -| [oci_identity_policy.administrators](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/identity_policy) | resource | -| [oci_identity_policy.kms_service_policy](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/identity_policy) | resource | -| [oci_identity_smtp_credential.admin](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/identity_smtp_credential) | resource | -| [oci_identity_ui_password.admin_initial](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/identity_ui_password) | resource | -| [oci_identity_user.admin](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/identity_user) | resource | -| [oci_identity_user_group_membership.admin](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/identity_user_group_membership) | resource | -| [oci_kms_key.key](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/kms_key) | resource | -| [oci_kms_vault.vault](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/kms_vault) | resource | -| [oci_ons_notification_topic.topic](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/ons_notification_topic) | resource | -| [oci_ons_subscription.subscription](https://registry.terraform.io/providers/oracle/oci/latest/docs/resources/ons_subscription) | resource | -| [tls_private_key.admin_api_key](https://registry.terraform.io/providers/hashicorp/tls/latest/docs/resources/private_key) | resource | -| [tls_private_key.compute_ssh_key](https://registry.terraform.io/providers/hashicorp/tls/latest/docs/resources/private_key) | resource | -| [oci_core_images.selected](https://registry.terraform.io/providers/oracle/oci/latest/docs/data-sources/core_images) | data source | -| [oci_core_shapes.available](https://registry.terraform.io/providers/oracle/oci/latest/docs/data-sources/core_shapes) | data source | -| [oci_email_configuration.endpoints](https://registry.terraform.io/providers/oracle/oci/latest/docs/data-sources/email_configuration) | data source | -| [oci_identity_availability_domains.available](https://registry.terraform.io/providers/oracle/oci/latest/docs/data-sources/identity_availability_domains) | data source | -| [oci_identity_tenancy.tenancy](https://registry.terraform.io/providers/oracle/oci/latest/docs/data-sources/identity_tenancy) | data source | -| [oci_kms_key.key](https://registry.terraform.io/providers/oracle/oci/latest/docs/data-sources/kms_key) | data source | - -## Inputs - -| Name | Description | Type | Default | Required | -|------|-------------|------|---------|:--------:| -| [oci\_region](#input\_oci\_region) | The region for the OCI provider | `string` | n/a | yes | -| [tenancy\_id](#input\_tenancy\_id) | The OCID of the tenancy | `string` | n/a | yes | -| [admin\_create\_credentials](#input\_admin\_create\_credentials) | Types of credentials to create for the admin user |
object({
api_key = bool
auth_token = bool
customer_key = bool
password = bool
smtp = bool
})
|
{
"api_key": true,
"auth_token": false,
"customer_key": false,
"password": false,
"smtp": true
}
| no | -| [create\_instances](#input\_create\_instances) | Create compute instances types |
object({
micro = bool
flex = bool
})
|
{
"flex": true,
"micro": true
}
| no | -| [create\_static\_ip](#input\_create\_static\_ip) | Create a reserved static IP | `bool` | `true` | no | -| [create\_topics](#input\_create\_topics) | Create notification topics | `bool` | `true` | no | -| [create\_vault](#input\_create\_vault) | Create vault | `bool` | `true` | no | -| [created\_compute\_ssh\_key\_algorithm](#input\_created\_compute\_ssh\_key\_algorithm) | The algorithm for the created SSH key if no key is provided | `string` | `"ED25519"` | no | -| [email\_configuration](#input\_email\_configuration) | values for email configuration |
object({
email_domains = list(string)
approved_senders = list(string)
suppression_list = list(string)
})
|
{
"approved_senders": [],
"email_domains": [],
"suppression_list": []
}
| no | -| [enable\_email\_delivery](#input\_enable\_email\_delivery) | Create email delivery supporting configurations | `bool` | `true` | no | -| [enable\_ipv6](#input\_enable\_ipv6) | Enable IPv6 for the VCN | `bool` | `true` | no | -| [iac\_project\_name](#input\_iac\_project\_name) | The name of the iac project | `string` | `"oci-free"` | no | -| [iac\_project\_source](#input\_iac\_project\_source) | The source repo of the iac project | `string` | `"https://git.bdeshi.space/bdeshi/terraform-oci-free.git"` | no | -| [oci\_profile](#input\_oci\_profile) | The config file profile for the OCI provider | `string` | `null` | no | -| [prefix](#input\_prefix) | Name prefix for all resources | `string` | `"free-"` | no | -| [supplied\_compute\_ssh\_public\_key](#input\_supplied\_compute\_ssh\_public\_key) | A pre-created public SSH key for the compute instances | `string` | `null` | no | -| [topics](#input\_topics) | Values for notification topics configuration |
map(object({
description = string
subscriptions = list(object({
protocol = string
endpoint = string
}))
}))
| `{}` | no | -| [use\_kms](#input\_use\_kms) | Use created vault for key creation and management |
object({
volume = bool
object = bool
database = bool
})
|
{
"database": true,
"object": true,
"volume": true
}
| no | -| [vcn\_cidr](#input\_vcn\_cidr) | The CIDR block for the VCN | `string` | `"10.0.0.0/16"` | no | - -## Outputs - -| Name | Description | -|------|-------------| -| [admin\_auth\_token](#output\_admin\_auth\_token) | The auth token of the admin user | -| [admin\_initial\_password](#output\_admin\_initial\_password) | The initial password of the admin user | -| [admin\_smtp\_password](#output\_admin\_smtp\_password) | The SMTP password of the admin user | -| [admin\_smtp\_username](#output\_admin\_smtp\_username) | The SMTP username of the admin user | -| [admin\_user\_id](#output\_admin\_user\_id) | The ID of the admin user | -| [api\_key\_fingerprint](#output\_api\_key\_fingerprint) | The fingerprint of the admin user API key | -| [api\_key\_private](#output\_api\_key\_private) | The private part of the admin user API key | -| [compartment\_id](#output\_compartment\_id) | The ID of the created compartment | -| [compartment\_name](#output\_compartment\_name) | The name of the created compartment | -| [customer\_key\_id](#output\_customer\_key\_id) | The ID of the customer key | -| [customer\_key\_key](#output\_customer\_key\_key) | The ID of the customer key | -| [email\_dkim\_records](#output\_email\_dkim\_records) | The DKIM records for the email domain | -| [email\_endpoints](#output\_email\_endpoints) | The email configuration endpoints | -| [instance\_availability\_domains](#output\_instance\_availability\_domains) | The availability domains of the instances | -| [instance\_ips](#output\_instance\_ips) | The public IP addresses of the instances | -| [instance\_selected\_images](#output\_instance\_selected\_images) | The selected images for each instance shape | -| [kms\_key\_ids](#output\_kms\_key\_ids) | The IDs of the KMS keys | -| [kms\_vault\_endpoints](#output\_kms\_vault\_endpoints) | The KMS vault endpoints | -| [kms\_vault\_id](#output\_kms\_vault\_id) | The ID of the KMS vault | -| [reserved\_ip](#output\_reserved\_ip) | The reserved public IP address | -| [ssh\_key\_private](#output\_ssh\_key\_private) | The created SSH private key for the compute instances | -| [ssh\_key\_public](#output\_ssh\_key\_public) | The public SSH key for the compute instances | -| [subnet\_cidr\_block](#output\_subnet\_cidr\_block) | The CIDR block for the subnet | -| [subnet\_ipv6\_cidr\_block](#output\_subnet\_ipv6\_cidr\_block) | The IPv6 CIDR block for the subnet | -| [tenancy\_id](#output\_tenancy\_id) | The ID of the tenancy | -| [tenancy\_name](#output\_tenancy\_name) | The name of the tenancy | -| [vcn\_cidr\_blocks](#output\_vcn\_cidr\_blocks) | The CIDR block for the VCN | -| [vcn\_ipv6\_cidr\_blocks](#output\_vcn\_ipv6\_cidr\_blocks) | The IPv6 CIDR block for the VCN | -| [vcn\_ipv6\_cidr\_private\_blocks](#output\_vcn\_ipv6\_cidr\_private\_blocks) | The IPv6 CIDR block for the VCN | -