aws

package
v1.1.0 Latest Latest
Warning

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

Go to latest
Published: Sep 10, 2022 License: MIT Imports: 18 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type ContainerDefinition

type ContainerDefinition struct {
	Name             string                    `json:"name"`
	Image            string                    `json:"image"`
	PortMappings     []ContainerPortMapping    `json:"portMappings"`
	Environment      []ContainerEnvVar         `json:"environment"`
	LogConfiguration *ContainerLogConfig       `json:"logConfiguration"`
	DockerLabels     map[string]string         `json:"dockerLabels"`
	LinuxParameters  *ContainerLinuxParameters `json:"linuxParameters,omitempty"`
}

func (*ContainerDefinition) String

func (d *ContainerDefinition) String() string

func (*ContainerDefinition) Validate

func (d *ContainerDefinition) Validate() error

type ContainerEnvVar

type ContainerEnvVar struct {
	Name  string `json:"name"`
	Value string `json:"value"`
}

type ContainerLinuxCapabilities

type ContainerLinuxCapabilities struct {
	Add  []string `json:"add"`
	Drop []string `json:"drop"`
}

type ContainerLinuxParameters

type ContainerLinuxParameters struct {
	Capabilities ContainerLinuxCapabilities `json:"capabilities"`
}

type ContainerLogConfig

type ContainerLogConfig struct {
	LogDriver     string                 `json:"logDriver"`
	SecretOptions interface{}            `json:"secretOptions"`
	Options       map[string]interface{} `json:"options"`
}

type ContainerPortMapping

type ContainerPortMapping struct {
	ContainerPort int    `json:"containerPort"`
	HostPort      int    `json:"hostPort"`
	Protocol      string `json:"protocol"`
}

type ECS

type ECS struct {
	Name string

	Out struct {
		Cluster      *ecs.Cluster
		TaskExecRole *iam.Role
	}
}

func (*ECS) Run

func (e *ECS) Run(ctx *pulumi.Context) error

func (*ECS) Validate

func (e *ECS) Validate() error

type HTTPS

type HTTPS struct {
	Name                    string
	Zone                    string
	PrivateZone             bool
	DomainName              string
	SubjectAlternativeNames []string

	Out struct {
		Cert   *acm.Certificate
		Record *route53.Record
		Zone   *route53.LookupZoneResult
	}
}

HTTPS is the struct for creating HTTPS certs and associated DNS records

func (*HTTPS) Run

func (s *HTTPS) Run(ctx *pulumi.Context) error

func (*HTTPS) Validate

func (s *HTTPS) Validate() error

type LoadBalancer

type LoadBalancer struct {
	Name string

	VPC         *VPC
	HTTPS       []*HTTPS
	HealthCheck *lb.TargetGroupHealthCheckArgs
	LogBucket   *s3.Bucket
	LogPrefix   pulumi.StringInput

	Out struct {
		SecurityGroup *ec2.SecurityGroup
		LB            *lb.LoadBalancer
		TargetGroup   *lb.TargetGroup
		Listener      *lb.Listener
	}
}

LoadBalancer is a helper struct for spinning up an ALB

func (*LoadBalancer) Run

func (l *LoadBalancer) Run(ctx *pulumi.Context) error

func (*LoadBalancer) Validate

func (l *LoadBalancer) Validate() error

type Postgres

type Postgres struct {
	Name string
	Args *rds.InstanceArgs
	VPC  *VPC

	Out struct {
		DB *rds.Instance
	}
}

func (*Postgres) Run

func (d *Postgres) Run(ctx *pulumi.Context, opts ...pulumi.ResourceOption) error

func (*Postgres) Validate

func (d *Postgres) Validate() error

type Redis

type Redis struct {
	Name   string
	Subnet *ec2.Subnet
	Args   *elasticache.ClusterArgs

	Out struct {
		Cache *elasticache.Cluster
	}
}

Redis contains everything needed to spin up a secure Redis instance.

func (*Redis) Run

func (r *Redis) Run(ctx *pulumi.Context) error

func (*Redis) Validate

func (r *Redis) Validate() error

type Service

type Service struct {
	Name   string
	Region string

	Docker  *docker.DockerBuildArgs
	Task    *ecs.TaskDefinitionArgs
	Service *ecs.ServiceArgs

	Ports           []ContainerPortMapping
	LinuxParameters *ContainerLinuxParameters

	Env          pulumi.StringMapInput
	DockerLabels pulumi.StringMapInput

	// Specifies the number of days
	// you want to retain log events in the specified log group.  Possible values are: 1, 3, 5, 7, 14, 30, 60, 90, 120, 150, 180, 365, 400, 545, 731, 1827, and 3653.
	LogRetentionDays int

	Out struct {
		Task    *ecs.TaskDefinition
		Service *ecs.Service
	}
}

Service provides around an ECS service.

func (*Service) Run

func (s *Service) Run(ctx *pulumi.Context) error

Run will run the service confifuration, returning any errors.

func (*Service) Validate

func (s *Service) Validate() error

Validate the service configuration.

type VPC

type VPC struct {
	Name      string
	CidrBlock string
	Region    string

	PublicSubnetCidrBlocks  []string
	PrivateSubnetCidrBlocks []string

	Out struct {
		VPC            *ec2.Vpc
		PublicSubnets  []*ec2.Subnet
		PrivateSubnets []*ec2.Subnet
	}
}

func (*VPC) ID

func (v *VPC) ID() pulumi.IDOutput

func (*VPC) Run

func (v *VPC) Run(ctx *pulumi.Context) error

func (*VPC) Validate

func (v *VPC) Validate() error

Jump to

Keyboard shortcuts

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