vcn
bpalermo/vcn/oci
A reusable and extensible Terraform module that provisions a VCN on Oracle Cloud Infrastructure
Terraform VCN for Oracle Cloud Infrastructure The [Terraform VCN][repo] for [Oracle Cloud Infrastructure][OCI] provides a reusable [Terraform][terraform] module that provisions a minimal VCN on OCI. It creates the following resources: A VCN with customizable CIDR block An optional internet gateway and a route table An optional NAT gateway An optional service gateway An optional dynamic routing gateway It also controls the Default Security List, with a Lockdown mode that can be enabled or disabled. Custom route rules can be added to the two route tables created by the module. This module is primarily meant to be reusable to create more advanced infrastructure on [OCI][OCI] either manually in the OCI Console or by extending the Terraform code. [Documentation][docs] [Pre-requisites][prerequis
| Name | Type | Description | Default |
|---|---|---|---|
| vcn_name | string | user-friendly name of to use for the vcn to be appended to the label_prefix | required |
| internet_gateway_route_rules | list(object({ destination | (Updatable) List of routing rules to add to Internet Gateway Route Table | required |
| nat_gateway_route_rules | list(object({ destination | (Updatable) List of routing rules to add to NAT Gateway Route Table | required |
| compartment_id | string | compartment id where to create all resources | required |
| vcn_dns_label | string | A DNS label for the VCN, used in conjunction with the VNIC's hostname and subnet | required |
| drg_display_name | string | (Updatable) Name of Dynamic Routing Gateway. Does not have to be unique. | required |
| nat_gateway_public_ip_id | string | OCID of reserved IP address for NAT gateway. The reserved public IP address need | "none" |
| vcn_cidr | string | cidr block of VCN | "10.0.0.0/16" |
| lockdown_default_seclist | bool | whether to remove all default security rules from the VCN Default Security List | true |
| tags | map(any) | simple key-value pairs to tag the resources created using freeform tags. | {
"module": "oracle-terraform-modules/ |
| create_drg | bool | whether to create Dynamic Routing Gateway. If set to true, creates a Dynamic Rou | false |
| service_gateway_enabled | bool | whether to create a service gateway. If set to true, creates a service gateway. | false |
| label_prefix | string | a string that will be prepended to all resources | "none" |
| internet_gateway_enabled | bool | whether to create the internet gateway in the vcn. If set to true, creates an In | false |
| nat_gateway_enabled | bool | whether to create a nat gateway in the vcn. If set to true, creates a nat gatewa | false |
drg_id — id of drg if it is createddrg_all_attributes — all attributes of created drginternet_gateway_all_attributes — all attributes of created internet gatewayvcn_all_attributes — all attributes of created vcninternet_gateway_id — id of internet gateway if it is createdservice_gateway_id — id of service gateway if it is createdig_route_id — id of internet gateway route tablenat_route_id — id of VCN NAT gateway route tabledrg_attachment_all_attributes — all attributes related to drg attachmentig_route_all_attributes — all attributes of created ig route tablevcn_id — id of vcn that is creatednat_gateway_id — id of nat gateway if it is creatednat_gateway_all_attributes — all attributes of created nat gatewaynat_route_all_attributes — all attributes of created nat gateway route tableservice_gateway_all_attributes — all attributes of created service gateway