awsvpc

package
v0.0.0-...-862afa6 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 28, 2023 License: Apache-2.0 Imports: 3 Imported by: 0

Documentation

Index

Constants

View Source
const (
	TagManagedBy      = "ManagedBy"
	TagManagedByValue = "Lingon"
	// TagName human-readable resource name. Note that the AWS Console UI displays the case-sensitive "Name" tag.
	TagName = "Name"
	// TagAppID is a tag specifying the application identifier, application using the resource.
	TagAppID = "app-id"
	// TagAppRole is a tag specifying the resource's technical function, e.g. webserver, database, etc.
	TagAppRole = "app-role"
	// TagPurpose  is a tag specifying the resource's business purpose, e.g. "frontend ui", "payment processor", etc.
	TagPurpose = "purpose"
	// TagEnv is a tag specifying the environment.
	TagEnv = "environment"
	// TagProject is a tag specifying the project.
	TagProject = "project"
	// TagOwner is a tag specifying the person of contact.
	TagOwner = "owner"
	// TagCostCenter is a tag specifying the cost center that will receive the bill.
	TagCostCenter = "cost-center"
	// TagAutomationExclude is a tag specifying if the resource should be excluded from automation.
	// Value: true/false
	TagAutomationExclude = "automation-exclude"
	// TagPII is a tag specifying if the resource contains Personally Identifiable Information.
	// Value: true/false
	TagPII = "pii"
)

Variables

View Source
var (
	S        = terra.String
	N        = terra.Number
	B        = terra.Bool
	Anywhere = S("0.0.0.0/0")
)

Functions

This section is empty.

Types

type AWSVPC

type AWSVPC struct {
	VPC *aws.Vpc `validate:"required"`

	PublicSubnets  [3]*aws.Subnet                `validate:"required,dive,required"`
	PublicRT       *aws.RouteTable               `validate:"required"`
	PublicRoute    *aws.Route                    `validate:"required"`
	PublicRTAssocs [3]*aws.RouteTableAssociation `validate:"required,dive,required"`

	PrivateSubnets  [3]*aws.Subnet                `validate:"required,dive,required"`
	PrivateRTs      [3]*aws.RouteTable            `validate:"required,dive,required"`
	PrivateRoutes   [3]*aws.Route                 `validate:"required,dive,required"`
	PrivateRTAssocs [3]*aws.RouteTableAssociation `validate:"required,dive,required"`

	InternetGateway *aws.InternetGateway `validate:"required"`
	EIPNat          [3]*aws.Eip          `validate:"required,dive,required"`
	NatGateways     [3]*aws.NatGateway   `validate:"required,dive,required"`
}

func NewAWSVPC

func NewAWSVPC(opts Opts) *AWSVPC

type Opts

type Opts struct {
	Name               string
	AZs                [3]string
	CIDR               string
	PublicSubnetCIDRs  [3]string
	PrivateSubnetCIDRs [3]string
	CommonTags         map[string]string
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL