<- All Blueprints
Customizable templates for deploying cloud infrastructure

AWS Subnet

This blueprint creates an AWS Subnet with best practices in mind, such as disabling public IP assignment by default to enhance security. It allows customization of CIDR blocks and availability zones to suit different network requirements. The blueprint encourages the use of tagging for better resource management and organizes variables into groups to assist users who may not be cloud infrastructure experts.

Define and customize Blueprints to set what infrastructure configuration options are available to developers.

---
constants:
  __name: "{{ name }}_{{ __guid }}"
variables:
  name:
    desc: "Name of the subnet."
    required: true
    group: Subnet Details
  vpc_id:
    desc: "VPC ID where the subnet will be created."
    required: true
    group: Subnet Details
    links_to: resource.aws_vpc.id
  cidr_block:
    desc: "The CIDR block for the subnet."
    required: true
    group: Subnet Details
    default: "10.0.1.0/24"
  availability_zone:
    desc: "Availability Zone for the subnet."
    required: false
    group: Subnet Details
    default: "us-east-1a"
  map_public_ip_on_launch:
    desc: "Whether instances launched in this subnet receive a public IP address."
    required: false
    group: Advanced
    default: false
  assign_ipv6_address_on_creation:
    desc: "Assign IPv6 address to instances launched in this subnet."
    required: false
    group: Advanced
    default: false
  tags:
    group: Tags
    required: false
groups:
  Subnet Details:
    order: 1
    desc: "Basic details for the subnet."
  Advanced:
    order: 2
    desc: "Advanced settings for the subnet."
  Tags:
    order: 3
    desc: "Tags to assign to the subnet."
---

resource "aws_subnet" "__name" {
  vpc_id                          = {{ vpc_id }}
  cidr_block                      = {{ cidr_block }}
  availability_zone               = {{ availability_zone }}
  map_public_ip_on_launch         = {{ map_public_ip_on_launch }}
  assign_ipv6_address_on_creation = {{ assign_ipv6_address_on_creation }}

  tags = {
    Name = {{ name }}
    {{# tags }}
      {{ tags.key | required: false }} = {{ tags.value | required: false }}
    {{/ tags }}
  }
}

// By default, instances launched in this subnet will not receive public IP addresses, enhancing security.
// IPv6 addresses are not assigned by default.
// Tags are encouraged for resource identification and management.
//
A form is created automatically that accepts inputs that you defined in the Blueprint.
After filling out the Blueprint form, Terraform is generated and a PR is automatically submitted.
What am I looking at?

Talk to a Human

See Resourcely in action and learn how it can help you secure and manage your cloud infrastructure today!