awstasks

package
v0.0.0-...-6060be6 Latest Latest
Warning

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

Go to latest
Published: Feb 19, 2020 License: Apache-2.0 Imports: 33 Imported by: 0

Documentation

Index

Constants

View Source
const CloudTagInstanceGroupRolePrefix = "k8s.io/role/"

CloudTagInstanceGroupRolePrefix is a cloud tag that defined the instance role

View Source
const MaxUserDataSize = 16384

MaxUserDataSize is the max size of the userdata

Variables

This section is empty.

Functions

func FindLoadBalancerByNameTag

func FindLoadBalancerByNameTag(cloud awsup.AWSCloud, findNameTag string) (*elb.LoadBalancerDescription, error)

func RetainLaunchConfigurationCount

func RetainLaunchConfigurationCount() int

RetainLaunchConfigurationCount returns the number of launch configurations to keep

Types

type AutoscalingGroup

type AutoscalingGroup struct {
	// Name is the name of the ASG
	Name *string
	// Lifecycle is the resource lifecycle
	Lifecycle *fi.Lifecycle

	// Granularity specifys the granularity of the metrics
	Granularity *string
	// InstanceProtection makes new instances in an autoscaling group protected from scale in
	InstanceProtection *bool
	// LaunchConfiguration is the launch configuration for the autoscaling group
	LaunchConfiguration *LaunchConfiguration
	// LaunchTemplate is the launch template for the asg
	LaunchTemplate *LaunchTemplate
	// MaxSize is the max number of nodes in asg
	MaxSize *int64
	// Metrics is a collection of metrics to monitor
	Metrics []string
	// MinSize is the smallest number of nodes in the asg
	MinSize *int64
	// MixedInstanceOverrides is a collection of instance type to use with fleet policy
	MixedInstanceOverrides []string
	// MixedOnDemandAllocationStrategy is allocation strategy to use for on-demand instances
	MixedOnDemandAllocationStrategy *string
	// MixedOnDemandBase is percentage split of On-Demand Instances and Spot Instances for your
	// additional capacity beyond the base portion
	MixedOnDemandBase *int64
	// MixedOnDemandAboveBase is the percentage split of On-Demand Instances and Spot Instances
	// for your additional capacity beyond the base portion.
	MixedOnDemandAboveBase *int64
	// MixedSpotAllocationStrategy diversifies your Spot capacity across multiple instance types to
	// find the best pricing. Higher Spot availability may result from a larger number of
	// instance types to choose from.
	MixedSpotAllocationStrategy *string
	// MixedSpotInstancePools is the number of Spot pools to use to allocate your Spot capacity (defaults to 2)
	// pools are determined from the different instance types in the Overrides array of LaunchTemplate
	MixedSpotInstancePools *int64
	// MixedSpotMaxPrice is the maximum price per unit hour you are willing to pay for a Spot Instance
	MixedSpotMaxPrice *string
	// Subnets is a collection of subnets to attach the nodes to
	Subnets []*Subnet
	// SuspendProcesses
	SuspendProcesses *[]string
	// Tags is a collection of keypairs to apply to the node on launch
	Tags map[string]string
}

AutoscalingGroup provdes the definition for a autoscaling group in aws

func (*AutoscalingGroup) AutoscalingGroupSubnets

func (e *AutoscalingGroup) AutoscalingGroupSubnets() []string

AutoscalingGroupSubnets returns the subnets list

func (*AutoscalingGroup) AutoscalingGroupTags

func (e *AutoscalingGroup) AutoscalingGroupTags() []*autoscaling.Tag

AutoscalingGroupTags is responsible for generating the tagging for the asg

func (*AutoscalingGroup) CheckChanges

func (e *AutoscalingGroup) CheckChanges(a, ex, changes *AutoscalingGroup) error

CheckChanges is responsible for checking for changes??

func (e *AutoscalingGroup) CloudformationLink() *cloudformation.Literal

CloudformationLink is adds a reference

func (*AutoscalingGroup) CompareWithID

func (e *AutoscalingGroup) CompareWithID() *string

CompareWithID returns the ID of the ASG

func (*AutoscalingGroup) Find

Find is used to discover the ASG in the cloud provider

func (*AutoscalingGroup) GetLifecycle

func (o *AutoscalingGroup) GetLifecycle() *fi.Lifecycle

GetLifecycle returns the Lifecycle of the object, implementing fi.HasLifecycle

func (*AutoscalingGroup) GetName

func (o *AutoscalingGroup) GetName() *string

GetName returns the Name of the object, implementing fi.HasName

func (*AutoscalingGroup) RenderAWS

func (v *AutoscalingGroup) RenderAWS(t *awsup.AWSAPITarget, a, e, changes *AutoscalingGroup) error

RenderAWS is responsible for building the autoscaling group via AWS API

func (*AutoscalingGroup) RenderCloudformation

func (_ *AutoscalingGroup) RenderCloudformation(t *cloudformation.CloudformationTarget, a, e, changes *AutoscalingGroup) error

RenderCloudformation is responsible for generating the cloudformation template

func (*AutoscalingGroup) RenderTerraform

func (_ *AutoscalingGroup) RenderTerraform(t *terraform.TerraformTarget, a, e, changes *AutoscalingGroup) error

RenderTerraform is responsible for rendering the terraform codebase

func (*AutoscalingGroup) Run

func (e *AutoscalingGroup) Run(c *fi.Context) error

Run is responsible for running the task

func (*AutoscalingGroup) SetLifecycle

func (o *AutoscalingGroup) SetLifecycle(lifecycle fi.Lifecycle)

SetLifecycle sets the Lifecycle of the object, implementing fi.SetLifecycle

func (*AutoscalingGroup) SetName

func (o *AutoscalingGroup) SetName(name string)

SetName sets the Name of the object, implementing fi.SetName

func (*AutoscalingGroup) String

func (o *AutoscalingGroup) String() string

String is the stringer function for the task, producing readable output using fi.TaskAsString

func (e *AutoscalingGroup) TerraformLink() *terraform.Literal

TerraformLink fills in the property

func (*AutoscalingGroup) UnmarshalJSON

func (o *AutoscalingGroup) UnmarshalJSON(data []byte) error

UnmarshalJSON implements conversion to JSON, supporting an alternate specification of the object as a string

func (*AutoscalingGroup) UseMixedInstancesPolicy

func (e *AutoscalingGroup) UseMixedInstancesPolicy() bool

UseMixedInstancesPolicy checks if we should add a mixed instances policy to the asg

type BlockDeviceMapping

type BlockDeviceMapping struct {
	// DeviceName is the device name of the EBS
	DeviceName *string
	// EbsDeleteOnTermination indicates the volume should be delete on instance termination
	EbsDeleteOnTermination *bool
	// EbsEncrypted indicates the volume should be encrypted
	EbsEncrypted *bool
	// EbsVolumeIops is provisioned iops
	EbsVolumeIops *int64
	// EbsVolumeSize is the size of the volume
	EbsVolumeSize *int64
	// EbsVolumeType is the aws volume type
	EbsVolumeType *string
	// VirtualName is the device name
	VirtualName *string
}

BlockDeviceMapping defines the specification for a device mapping

func BlockDeviceMappingFromAutoscaling

func BlockDeviceMappingFromAutoscaling(i *autoscaling.BlockDeviceMapping) (string, *BlockDeviceMapping)

BlockDeviceMappingFromAutoscaling converts an autoscaling block mapping to internal spec

func BlockDeviceMappingFromEC2

func BlockDeviceMappingFromEC2(i *ec2.BlockDeviceMapping) (string, *BlockDeviceMapping)

BlockDeviceMappingFromEC2 converts a e2c block mapping to internal block device mapping

func BlockDeviceMappingFromLaunchTemplateBootDeviceRequest

func BlockDeviceMappingFromLaunchTemplateBootDeviceRequest(i *ec2.LaunchTemplateBlockDeviceMapping) (string, *BlockDeviceMapping)

BlockDeviceMappingFromLaunchTemplateBootDeviceRequest coverts the launch template device mappings to an interval block device mapping

func (*BlockDeviceMapping) GetDependencies

func (i *BlockDeviceMapping) GetDependencies(tasks map[string]fi.Task) []fi.Task

GetDependencies is for future use

func (*BlockDeviceMapping) ToAutoscaling

func (i *BlockDeviceMapping) ToAutoscaling(deviceName string) *autoscaling.BlockDeviceMapping

ToAutoscaling converts the internal block mapping to autoscaling

func (*BlockDeviceMapping) ToEC2

func (i *BlockDeviceMapping) ToEC2(deviceName string) *ec2.BlockDeviceMapping

ToEC2 creates and returns an ec2 block mapping

func (*BlockDeviceMapping) ToLaunchTemplateBootDeviceRequest

func (i *BlockDeviceMapping) ToLaunchTemplateBootDeviceRequest(deviceName string) *ec2.LaunchTemplateBlockDeviceMappingRequest

ToLaunchTemplateBootDeviceRequest coverts in the internal block device mapping to a launcg template request

type DHCPOptions

type DHCPOptions struct {
	Name      *string
	Lifecycle *fi.Lifecycle

	ID                *string
	DomainName        *string
	DomainNameServers *string

	// Shared is set if this is a shared DHCPOptions
	Shared *bool

	// Tags is a map of aws tags that are added to the InternetGateway
	Tags map[string]string
}

func (*DHCPOptions) CheckChanges

func (s *DHCPOptions) CheckChanges(a, e, changes *DHCPOptions) error
func (e *DHCPOptions) CloudformationLink() *cloudformation.Literal

func (*DHCPOptions) CompareWithID

func (e *DHCPOptions) CompareWithID() *string

func (*DHCPOptions) Find

func (e *DHCPOptions) Find(c *fi.Context) (*DHCPOptions, error)

func (*DHCPOptions) GetLifecycle

func (o *DHCPOptions) GetLifecycle() *fi.Lifecycle

GetLifecycle returns the Lifecycle of the object, implementing fi.HasLifecycle

func (*DHCPOptions) GetName

func (o *DHCPOptions) GetName() *string

GetName returns the Name of the object, implementing fi.HasName

func (*DHCPOptions) RenderAWS

func (_ *DHCPOptions) RenderAWS(t *awsup.AWSAPITarget, a, e, changes *DHCPOptions) error

func (*DHCPOptions) RenderCloudformation

func (_ *DHCPOptions) RenderCloudformation(t *cloudformation.CloudformationTarget, a, e, changes *DHCPOptions) error

func (*DHCPOptions) RenderTerraform

func (_ *DHCPOptions) RenderTerraform(t *terraform.TerraformTarget, a, e, changes *DHCPOptions) error

func (*DHCPOptions) Run

func (e *DHCPOptions) Run(c *fi.Context) error

func (*DHCPOptions) SetLifecycle

func (o *DHCPOptions) SetLifecycle(lifecycle fi.Lifecycle)

SetLifecycle sets the Lifecycle of the object, implementing fi.SetLifecycle

func (*DHCPOptions) SetName

func (o *DHCPOptions) SetName(name string)

SetName sets the Name of the object, implementing fi.SetName

func (*DHCPOptions) String

func (o *DHCPOptions) String() string

String is the stringer function for the task, producing readable output using fi.TaskAsString

func (e *DHCPOptions) TerraformLink() *terraform.Literal

func (*DHCPOptions) UnmarshalJSON

func (o *DHCPOptions) UnmarshalJSON(data []byte) error

UnmarshalJSON implements conversion to JSON, supporting an alternate specification of the object as a string

type DNSName

type DNSName struct {
	Name      *string
	Lifecycle *fi.Lifecycle

	ID           *string
	Zone         *DNSZone
	ResourceType *string

	TargetLoadBalancer *LoadBalancer
}

func (*DNSName) CheckChanges

func (s *DNSName) CheckChanges(a, e, changes *DNSName) error
func (e *DNSName) CloudformationLink() *cloudformation.Literal

func (*DNSName) Find

func (e *DNSName) Find(c *fi.Context) (*DNSName, error)

func (*DNSName) GetLifecycle

func (o *DNSName) GetLifecycle() *fi.Lifecycle

GetLifecycle returns the Lifecycle of the object, implementing fi.HasLifecycle

func (*DNSName) GetName

func (o *DNSName) GetName() *string

GetName returns the Name of the object, implementing fi.HasName

func (*DNSName) RenderAWS

func (_ *DNSName) RenderAWS(t *awsup.AWSAPITarget, a, e, changes *DNSName) error

func (*DNSName) RenderCloudformation

func (_ *DNSName) RenderCloudformation(t *cloudformation.CloudformationTarget, a, e, changes *DNSName) error

func (*DNSName) RenderTerraform

func (_ *DNSName) RenderTerraform(t *terraform.TerraformTarget, a, e, changes *DNSName) error

func (*DNSName) Run

func (e *DNSName) Run(c *fi.Context) error

func (*DNSName) SetLifecycle

func (o *DNSName) SetLifecycle(lifecycle fi.Lifecycle)

SetLifecycle sets the Lifecycle of the object, implementing fi.SetLifecycle

func (*DNSName) SetName

func (o *DNSName) SetName(name string)

SetName sets the Name of the object, implementing fi.SetName

func (*DNSName) String

func (o *DNSName) String() string

String is the stringer function for the task, producing readable output using fi.TaskAsString

func (e *DNSName) TerraformLink() *terraform.Literal

func (*DNSName) UnmarshalJSON

func (o *DNSName) UnmarshalJSON(data []byte) error

UnmarshalJSON implements conversion to JSON, supporting an alternate specification of the object as a string

type DNSZone

type DNSZone struct {
	Name      *string
	Lifecycle *fi.Lifecycle

	DNSName *string
	ZoneID  *string

	Private    *bool
	PrivateVPC *VPC
}

DNSZone is a zone object in a dns provider

func (*DNSZone) CheckChanges

func (s *DNSZone) CheckChanges(a, e, changes *DNSZone) error
func (e *DNSZone) CloudformationLink() *cloudformation.Literal

func (*DNSZone) CompareWithID

func (e *DNSZone) CompareWithID() *string

func (*DNSZone) Find

func (e *DNSZone) Find(c *fi.Context) (*DNSZone, error)

func (*DNSZone) GetLifecycle

func (o *DNSZone) GetLifecycle() *fi.Lifecycle

GetLifecycle returns the Lifecycle of the object, implementing fi.HasLifecycle

func (*DNSZone) GetName

func (o *DNSZone) GetName() *string

GetName returns the Name of the object, implementing fi.HasName

func (*DNSZone) RenderAWS

func (_ *DNSZone) RenderAWS(t *awsup.AWSAPITarget, a, e, changes *DNSZone) error

func (*DNSZone) RenderCloudformation

func (_ *DNSZone) RenderCloudformation(t *cloudformation.CloudformationTarget, a, e, changes *DNSZone) error

func (*DNSZone) RenderTerraform

func (_ *DNSZone) RenderTerraform(t *terraform.TerraformTarget, a, e, changes *DNSZone) error

func (*DNSZone) Run

func (e *DNSZone) Run(c *fi.Context) error

func (*DNSZone) SetLifecycle

func (o *DNSZone) SetLifecycle(lifecycle fi.Lifecycle)

SetLifecycle sets the Lifecycle of the object, implementing fi.SetLifecycle

func (*DNSZone) SetName

func (o *DNSZone) SetName(name string)

SetName sets the Name of the object, implementing fi.SetName

func (*DNSZone) String

func (o *DNSZone) String() string

String is the stringer function for the task, producing readable output using fi.TaskAsString

func (e *DNSZone) TerraformLink() *terraform.Literal

func (*DNSZone) UnmarshalJSON

func (o *DNSZone) UnmarshalJSON(data []byte) error

UnmarshalJSON implements conversion to JSON, supporting an alternate specification of the object as a string

type EBSVolume

type EBSVolume struct {
	Name      *string
	Lifecycle *fi.Lifecycle

	AvailabilityZone *string
	Encrypted        *bool
	ID               *string
	KmsKeyId         *string
	SizeGB           *int64
	Tags             map[string]string
	VolumeIops       *int64
	VolumeType       *string
}

func (*EBSVolume) CheckChanges

func (_ *EBSVolume) CheckChanges(a, e, changes *EBSVolume) error
func (e *EBSVolume) CloudformationLink() *cloudformation.Literal

func (*EBSVolume) CompareWithID

func (e *EBSVolume) CompareWithID() *string

func (*EBSVolume) Find

func (e *EBSVolume) Find(context *fi.Context) (*EBSVolume, error)

func (*EBSVolume) FindResourceID

func (e *EBSVolume) FindResourceID(c fi.Cloud) (*string, error)

func (*EBSVolume) GetLifecycle

func (o *EBSVolume) GetLifecycle() *fi.Lifecycle

GetLifecycle returns the Lifecycle of the object, implementing fi.HasLifecycle

func (*EBSVolume) GetName

func (o *EBSVolume) GetName() *string

GetName returns the Name of the object, implementing fi.HasName

func (*EBSVolume) RenderAWS

func (_ *EBSVolume) RenderAWS(t *awsup.AWSAPITarget, a, e, changes *EBSVolume) error

func (*EBSVolume) RenderCloudformation

func (_ *EBSVolume) RenderCloudformation(t *cloudformation.CloudformationTarget, a, e, changes *EBSVolume) error

func (*EBSVolume) RenderTerraform

func (_ *EBSVolume) RenderTerraform(t *terraform.TerraformTarget, a, e, changes *EBSVolume) error

func (*EBSVolume) Run

func (e *EBSVolume) Run(c *fi.Context) error

func (*EBSVolume) SetLifecycle

func (o *EBSVolume) SetLifecycle(lifecycle fi.Lifecycle)

SetLifecycle sets the Lifecycle of the object, implementing fi.SetLifecycle

func (*EBSVolume) SetName

func (o *EBSVolume) SetName(name string)

SetName sets the Name of the object, implementing fi.SetName

func (*EBSVolume) String

func (o *EBSVolume) String() string

String is the stringer function for the task, producing readable output using fi.TaskAsString

func (e *EBSVolume) TerraformLink() *terraform.Literal

func (*EBSVolume) UnmarshalJSON

func (o *EBSVolume) UnmarshalJSON(data []byte) error

UnmarshalJSON implements conversion to JSON, supporting an alternate specification of the object as a string

type ElasticIP

type ElasticIP struct {
	Name      *string
	Lifecycle *fi.Lifecycle

	ID       *string
	PublicIP *string

	// TagOnSubnet tags a subnet with the ElasticIP.  Deprecated: doesn't round-trip with terraform.
	TagOnSubnet *Subnet

	Tags map[string]string

	// AssociatedNatGatewayRouteTable follows the RouteTable -> NatGateway -> ElasticIP
	AssociatedNatGatewayRouteTable *RouteTable
}

ElasticIP manages an AWS Address (ElasticIP)

func (*ElasticIP) CheckChanges

func (_ *ElasticIP) CheckChanges(a, e, changes *ElasticIP) error

CheckChanges validates the resource. EIPs are simple, so virtually no validation

func (*ElasticIP) CloudformationAllocationID

func (e *ElasticIP) CloudformationAllocationID() *cloudformation.Literal

func (*ElasticIP) CompareWithID

func (e *ElasticIP) CompareWithID() *string

func (*ElasticIP) Find

func (e *ElasticIP) Find(context *fi.Context) (*ElasticIP, error)

Find returns the actual ElasticIP state, or nil if not found

func (*ElasticIP) FindIPAddress

func (e *ElasticIP) FindIPAddress(context *fi.Context) (*string, error)

func (*ElasticIP) GetLifecycle

func (o *ElasticIP) GetLifecycle() *fi.Lifecycle

GetLifecycle returns the Lifecycle of the object, implementing fi.HasLifecycle

func (*ElasticIP) GetName

func (o *ElasticIP) GetName() *string

GetName returns the Name of the object, implementing fi.HasName

func (*ElasticIP) RenderAWS

func (_ *ElasticIP) RenderAWS(t *awsup.AWSAPITarget, a, e, changes *ElasticIP) error

RenderAWS is where we actually apply changes to AWS

func (*ElasticIP) RenderCloudformation

func (_ *ElasticIP) RenderCloudformation(t *cloudformation.CloudformationTarget, a, e, changes *ElasticIP) error

func (*ElasticIP) RenderTerraform

func (_ *ElasticIP) RenderTerraform(t *terraform.TerraformTarget, a, e, changes *ElasticIP) error

func (*ElasticIP) Run

func (e *ElasticIP) Run(c *fi.Context) error

Run is called to execute this task. This is the main entry point of the task, and will actually connect our internal resource representation to an actual resource in AWS

func (*ElasticIP) SetLifecycle

func (o *ElasticIP) SetLifecycle(lifecycle fi.Lifecycle)

SetLifecycle sets the Lifecycle of the object, implementing fi.SetLifecycle

func (*ElasticIP) SetName

func (o *ElasticIP) SetName(name string)

SetName sets the Name of the object, implementing fi.SetName

func (*ElasticIP) String

func (o *ElasticIP) String() string

String is the stringer function for the task, producing readable output using fi.TaskAsString

func (e *ElasticIP) TerraformLink() *terraform.Literal

func (*ElasticIP) UnmarshalJSON

func (o *ElasticIP) UnmarshalJSON(data []byte) error

UnmarshalJSON implements conversion to JSON, supporting an alternate specification of the object as a string

type ExternalLoadBalancerAttachment

type ExternalLoadBalancerAttachment struct {
	Name      *string
	Lifecycle *fi.Lifecycle

	LoadBalancerName string

	AutoscalingGroup *AutoscalingGroup
}

func (*ExternalLoadBalancerAttachment) CheckChanges

func (*ExternalLoadBalancerAttachment) Find

func (*ExternalLoadBalancerAttachment) GetLifecycle

func (o *ExternalLoadBalancerAttachment) GetLifecycle() *fi.Lifecycle

GetLifecycle returns the Lifecycle of the object, implementing fi.HasLifecycle

func (*ExternalLoadBalancerAttachment) GetName

func (o *ExternalLoadBalancerAttachment) GetName() *string

GetName returns the Name of the object, implementing fi.HasName

func (*ExternalLoadBalancerAttachment) RenderAWS

func (*ExternalLoadBalancerAttachment) RenderCloudformation

func (*ExternalLoadBalancerAttachment) RenderTerraform

func (*ExternalLoadBalancerAttachment) Run

func (*ExternalLoadBalancerAttachment) SetLifecycle

func (o *ExternalLoadBalancerAttachment) SetLifecycle(lifecycle fi.Lifecycle)

SetLifecycle sets the Lifecycle of the object, implementing fi.SetLifecycle

func (*ExternalLoadBalancerAttachment) SetName

func (o *ExternalLoadBalancerAttachment) SetName(name string)

SetName sets the Name of the object, implementing fi.SetName

func (*ExternalLoadBalancerAttachment) String

String is the stringer function for the task, producing readable output using fi.TaskAsString

func (e *ExternalLoadBalancerAttachment) TerraformLink() *terraform.Literal

func (*ExternalLoadBalancerAttachment) UnmarshalJSON

func (o *ExternalLoadBalancerAttachment) UnmarshalJSON(data []byte) error

UnmarshalJSON implements conversion to JSON, supporting an alternate specification of the object as a string

type ExternalTargetGroupAttachment

type ExternalTargetGroupAttachment struct {
	Name      *string
	Lifecycle *fi.Lifecycle

	TargetGroupARN string

	AutoscalingGroup *AutoscalingGroup
}

func (*ExternalTargetGroupAttachment) CheckChanges

func (s *ExternalTargetGroupAttachment) CheckChanges(a, e, changes *ExternalTargetGroupAttachment) error

func (*ExternalTargetGroupAttachment) Find

func (*ExternalTargetGroupAttachment) GetLifecycle

func (o *ExternalTargetGroupAttachment) GetLifecycle() *fi.Lifecycle

GetLifecycle returns the Lifecycle of the object, implementing fi.HasLifecycle

func (*ExternalTargetGroupAttachment) GetName

func (o *ExternalTargetGroupAttachment) GetName() *string

GetName returns the Name of the object, implementing fi.HasName

func (*ExternalTargetGroupAttachment) RenderAWS

func (*ExternalTargetGroupAttachment) RenderCloudformation

func (*ExternalTargetGroupAttachment) RenderTerraform

func (*ExternalTargetGroupAttachment) Run

func (*ExternalTargetGroupAttachment) SetLifecycle

func (o *ExternalTargetGroupAttachment) SetLifecycle(lifecycle fi.Lifecycle)

SetLifecycle sets the Lifecycle of the object, implementing fi.SetLifecycle

func (*ExternalTargetGroupAttachment) SetName

func (o *ExternalTargetGroupAttachment) SetName(name string)

SetName sets the Name of the object, implementing fi.SetName

func (*ExternalTargetGroupAttachment) String

String is the stringer function for the task, producing readable output using fi.TaskAsString

func (e *ExternalTargetGroupAttachment) TerraformLink() *terraform.Literal

func (*ExternalTargetGroupAttachment) UnmarshalJSON

func (o *ExternalTargetGroupAttachment) UnmarshalJSON(data []byte) error

UnmarshalJSON implements conversion to JSON, supporting an alternate specification of the object as a string

type IAMInstanceProfile

type IAMInstanceProfile struct {
	Name      *string
	Lifecycle *fi.Lifecycle

	ID     *string
	Shared *bool
}

func (*IAMInstanceProfile) CheckChanges

func (s *IAMInstanceProfile) CheckChanges(a, e, changes *IAMInstanceProfile) error
func (e *IAMInstanceProfile) CloudformationLink() *cloudformation.Literal

func (*IAMInstanceProfile) CompareWithID

func (e *IAMInstanceProfile) CompareWithID() *string

func (*IAMInstanceProfile) Find

func (*IAMInstanceProfile) GetLifecycle

func (o *IAMInstanceProfile) GetLifecycle() *fi.Lifecycle

GetLifecycle returns the Lifecycle of the object, implementing fi.HasLifecycle

func (*IAMInstanceProfile) GetName

func (o *IAMInstanceProfile) GetName() *string

GetName returns the Name of the object, implementing fi.HasName

func (*IAMInstanceProfile) RenderAWS

func (_ *IAMInstanceProfile) RenderAWS(t *awsup.AWSAPITarget, a, e, changes *IAMInstanceProfile) error

func (*IAMInstanceProfile) RenderCloudformation

func (_ *IAMInstanceProfile) RenderCloudformation(t *cloudformation.CloudformationTarget, a, e, changes *IAMInstanceProfile) error

func (*IAMInstanceProfile) RenderTerraform

func (_ *IAMInstanceProfile) RenderTerraform(t *terraform.TerraformTarget, a, e, changes *IAMInstanceProfile) error

func (*IAMInstanceProfile) Run

func (e *IAMInstanceProfile) Run(c *fi.Context) error

func (*IAMInstanceProfile) SetLifecycle

func (o *IAMInstanceProfile) SetLifecycle(lifecycle fi.Lifecycle)

SetLifecycle sets the Lifecycle of the object, implementing fi.SetLifecycle

func (*IAMInstanceProfile) SetName

func (o *IAMInstanceProfile) SetName(name string)

SetName sets the Name of the object, implementing fi.SetName

func (*IAMInstanceProfile) String

func (o *IAMInstanceProfile) String() string

String is the stringer function for the task, producing readable output using fi.TaskAsString

func (e *IAMInstanceProfile) TerraformLink() *terraform.Literal

func (*IAMInstanceProfile) UnmarshalJSON

func (o *IAMInstanceProfile) UnmarshalJSON(data []byte) error

UnmarshalJSON implements conversion to JSON, supporting an alternate specification of the object as a string

type IAMInstanceProfileRole

type IAMInstanceProfileRole struct {
	Name      *string
	Lifecycle *fi.Lifecycle

	InstanceProfile *IAMInstanceProfile
	Role            *IAMRole
}

func (*IAMInstanceProfileRole) CheckChanges

func (s *IAMInstanceProfileRole) CheckChanges(a, e, changes *IAMInstanceProfileRole) error

func (*IAMInstanceProfileRole) Find

func (*IAMInstanceProfileRole) GetLifecycle

func (o *IAMInstanceProfileRole) GetLifecycle() *fi.Lifecycle

GetLifecycle returns the Lifecycle of the object, implementing fi.HasLifecycle

func (*IAMInstanceProfileRole) GetName

func (o *IAMInstanceProfileRole) GetName() *string

GetName returns the Name of the object, implementing fi.HasName

func (*IAMInstanceProfileRole) RenderAWS

func (_ *IAMInstanceProfileRole) RenderAWS(t *awsup.AWSAPITarget, a, e, changes *IAMInstanceProfileRole) error

func (*IAMInstanceProfileRole) RenderCloudformation

func (_ *IAMInstanceProfileRole) RenderCloudformation(t *cloudformation.CloudformationTarget, a, e, changes *IAMInstanceProfileRole) error

func (*IAMInstanceProfileRole) RenderTerraform

func (_ *IAMInstanceProfileRole) RenderTerraform(t *terraform.TerraformTarget, a, e, changes *IAMInstanceProfileRole) error

func (*IAMInstanceProfileRole) Run

func (*IAMInstanceProfileRole) SetLifecycle

func (o *IAMInstanceProfileRole) SetLifecycle(lifecycle fi.Lifecycle)

SetLifecycle sets the Lifecycle of the object, implementing fi.SetLifecycle

func (*IAMInstanceProfileRole) SetName

func (o *IAMInstanceProfileRole) SetName(name string)

SetName sets the Name of the object, implementing fi.SetName

func (*IAMInstanceProfileRole) String

func (o *IAMInstanceProfileRole) String() string

String is the stringer function for the task, producing readable output using fi.TaskAsString

func (*IAMInstanceProfileRole) UnmarshalJSON

func (o *IAMInstanceProfileRole) UnmarshalJSON(data []byte) error

UnmarshalJSON implements conversion to JSON, supporting an alternate specification of the object as a string

type IAMRole

type IAMRole struct {
	ID        *string
	Lifecycle *fi.Lifecycle

	Name               *string
	RolePolicyDocument *fi.ResourceHolder // "inline" IAM policy

	// ExportWithId will expose the name & ARN for reuse as part of a larger system.  Only supported by terraform currently.
	ExportWithID *string
}

func (*IAMRole) CheckChanges

func (s *IAMRole) CheckChanges(a, e, changes *IAMRole) error
func (e *IAMRole) CloudformationLink() *cloudformation.Literal

func (*IAMRole) CompareWithID

func (e *IAMRole) CompareWithID() *string

func (*IAMRole) Find

func (e *IAMRole) Find(c *fi.Context) (*IAMRole, error)

func (*IAMRole) GetLifecycle

func (o *IAMRole) GetLifecycle() *fi.Lifecycle

GetLifecycle returns the Lifecycle of the object, implementing fi.HasLifecycle

func (*IAMRole) GetName

func (o *IAMRole) GetName() *string

GetName returns the Name of the object, implementing fi.HasName

func (*IAMRole) RenderAWS

func (_ *IAMRole) RenderAWS(t *awsup.AWSAPITarget, a, e, changes *IAMRole) error

func (*IAMRole) RenderCloudformation

func (_ *IAMRole) RenderCloudformation(t *cloudformation.CloudformationTarget, a, e, changes *IAMRole) error

func (*IAMRole) RenderTerraform

func (_ *IAMRole) RenderTerraform(t *terraform.TerraformTarget, a, e, changes *IAMRole) error

func (*IAMRole) Run

func (e *IAMRole) Run(c *fi.Context) error

func (*IAMRole) SetLifecycle

func (o *IAMRole) SetLifecycle(lifecycle fi.Lifecycle)

SetLifecycle sets the Lifecycle of the object, implementing fi.SetLifecycle

func (*IAMRole) SetName

func (o *IAMRole) SetName(name string)

SetName sets the Name of the object, implementing fi.SetName

func (*IAMRole) String

func (o *IAMRole) String() string

String is the stringer function for the task, producing readable output using fi.TaskAsString

func (e *IAMRole) TerraformLink() *terraform.Literal

func (*IAMRole) UnmarshalJSON

func (o *IAMRole) UnmarshalJSON(data []byte) error

UnmarshalJSON implements conversion to JSON, supporting an alternate specification of the object as a string

type IAMRolePolicy

type IAMRolePolicy struct {
	ID        *string
	Lifecycle *fi.Lifecycle

	Name *string
	Role *IAMRole

	// The PolicyDocument to create as an inline policy.
	// If the PolicyDocument is empty, the policy will be removed.
	PolicyDocument fi.Resource
}

func (*IAMRolePolicy) CheckChanges

func (s *IAMRolePolicy) CheckChanges(a, e, changes *IAMRolePolicy) error
func (e *IAMRolePolicy) CloudformationLink() *cloudformation.Literal

func (*IAMRolePolicy) Find

func (e *IAMRolePolicy) Find(c *fi.Context) (*IAMRolePolicy, error)

func (*IAMRolePolicy) GetLifecycle

func (o *IAMRolePolicy) GetLifecycle() *fi.Lifecycle

GetLifecycle returns the Lifecycle of the object, implementing fi.HasLifecycle

func (*IAMRolePolicy) GetName

func (o *IAMRolePolicy) GetName() *string

GetName returns the Name of the object, implementing fi.HasName

func (*IAMRolePolicy) RenderAWS

func (_ *IAMRolePolicy) RenderAWS(t *awsup.AWSAPITarget, a, e, changes *IAMRolePolicy) error

func (*IAMRolePolicy) RenderCloudformation

func (_ *IAMRolePolicy) RenderCloudformation(t *cloudformation.CloudformationTarget, a, e, changes *IAMRolePolicy) error

func (*IAMRolePolicy) RenderTerraform

func (_ *IAMRolePolicy) RenderTerraform(t *terraform.TerraformTarget, a, e, changes *IAMRolePolicy) error

func (*IAMRolePolicy) Run

func (e *IAMRolePolicy) Run(c *fi.Context) error

func (*IAMRolePolicy) SetLifecycle

func (o *IAMRolePolicy) SetLifecycle(lifecycle fi.Lifecycle)

SetLifecycle sets the Lifecycle of the object, implementing fi.SetLifecycle

func (*IAMRolePolicy) SetName

func (o *IAMRolePolicy) SetName(name string)

SetName sets the Name of the object, implementing fi.SetName

func (*IAMRolePolicy) ShouldCreate

func (_ *IAMRolePolicy) ShouldCreate(a, e, changes *IAMRolePolicy) (bool, error)

func (*IAMRolePolicy) String

func (o *IAMRolePolicy) String() string

String is the stringer function for the task, producing readable output using fi.TaskAsString

func (e *IAMRolePolicy) TerraformLink() *terraform.Literal

func (*IAMRolePolicy) UnmarshalJSON

func (o *IAMRolePolicy) UnmarshalJSON(data []byte) error

UnmarshalJSON implements conversion to JSON, supporting an alternate specification of the object as a string

type Instance

type Instance struct {
	ID        *string
	Lifecycle *fi.Lifecycle

	UserData fi.Resource

	Subnet           *Subnet
	PrivateIPAddress *string

	Name *string
	Tags map[string]string

	Shared *bool

	ImageID            *string
	InstanceType       *string
	SSHKey             *SSHKey
	SecurityGroups     []*SecurityGroup
	AssociatePublicIP  *bool
	IAMInstanceProfile *IAMInstanceProfile
}

Instance defines the instance specification

func (*Instance) CheckChanges

func (_ *Instance) CheckChanges(a, e, changes *Instance) error

func (*Instance) CompareWithID

func (s *Instance) CompareWithID() *string

func (*Instance) Find

func (e *Instance) Find(c *fi.Context) (*Instance, error)

func (*Instance) GetLifecycle

func (o *Instance) GetLifecycle() *fi.Lifecycle

GetLifecycle returns the Lifecycle of the object, implementing fi.HasLifecycle

func (*Instance) GetName

func (o *Instance) GetName() *string

GetName returns the Name of the object, implementing fi.HasName

func (*Instance) RenderAWS

func (_ *Instance) RenderAWS(t *awsup.AWSAPITarget, a, e, changes *Instance) error

func (*Instance) Run

func (e *Instance) Run(c *fi.Context) error

func (*Instance) SetLifecycle

func (o *Instance) SetLifecycle(lifecycle fi.Lifecycle)

SetLifecycle sets the Lifecycle of the object, implementing fi.SetLifecycle

func (*Instance) SetName

func (o *Instance) SetName(name string)

SetName sets the Name of the object, implementing fi.SetName

func (*Instance) String

func (o *Instance) String() string

String is the stringer function for the task, producing readable output using fi.TaskAsString

func (e *Instance) TerraformLink() *terraform.Literal

func (*Instance) UnmarshalJSON

func (o *Instance) UnmarshalJSON(data []byte) error

UnmarshalJSON implements conversion to JSON, supporting an alternate specification of the object as a string

type InstanceElasticIPAttachment

type InstanceElasticIPAttachment struct {
	Instance  *Instance
	ElasticIP *ElasticIP
}

func (*InstanceElasticIPAttachment) CheckChanges

func (s *InstanceElasticIPAttachment) CheckChanges(a, e, changes *InstanceElasticIPAttachment) error

func (*InstanceElasticIPAttachment) Find

func (*InstanceElasticIPAttachment) RenderAWS

func (*InstanceElasticIPAttachment) Run

func (*InstanceElasticIPAttachment) String

func (e *InstanceElasticIPAttachment) String() string

type InstanceVolumeAttachment

type InstanceVolumeAttachment struct {
	Instance *Instance
	Volume   *EBSVolume
	Device   *string
}

func (*InstanceVolumeAttachment) CheckChanges

func (s *InstanceVolumeAttachment) CheckChanges(a, e, changes *InstanceVolumeAttachment) error

func (*InstanceVolumeAttachment) Find

func (*InstanceVolumeAttachment) RenderAWS

func (*InstanceVolumeAttachment) Run

func (*InstanceVolumeAttachment) String

func (e *InstanceVolumeAttachment) String() string

type InternetGateway

type InternetGateway struct {
	Name      *string
	Lifecycle *fi.Lifecycle

	ID  *string
	VPC *VPC
	// Shared is set if this is a shared InternetGateway
	Shared *bool

	// Tags is a map of aws tags that are added to the InternetGateway
	Tags map[string]string
}

func (*InternetGateway) CheckChanges

func (s *InternetGateway) CheckChanges(a, e, changes *InternetGateway) error
func (e *InternetGateway) CloudformationLink() *cloudformation.Literal

func (*InternetGateway) CompareWithID

func (e *InternetGateway) CompareWithID() *string

func (*InternetGateway) Find

func (*InternetGateway) GetLifecycle

func (o *InternetGateway) GetLifecycle() *fi.Lifecycle

GetLifecycle returns the Lifecycle of the object, implementing fi.HasLifecycle

func (*InternetGateway) GetName

func (o *InternetGateway) GetName() *string

GetName returns the Name of the object, implementing fi.HasName

func (*InternetGateway) RenderAWS

func (_ *InternetGateway) RenderAWS(t *awsup.AWSAPITarget, a, e, changes *InternetGateway) error

func (*InternetGateway) RenderCloudformation

func (_ *InternetGateway) RenderCloudformation(t *cloudformation.CloudformationTarget, a, e, changes *InternetGateway) error

func (*InternetGateway) RenderTerraform

func (_ *InternetGateway) RenderTerraform(t *terraform.TerraformTarget, a, e, changes *InternetGateway) error

func (*InternetGateway) Run

func (e *InternetGateway) Run(c *fi.Context) error

func (*InternetGateway) SetLifecycle

func (o *InternetGateway) SetLifecycle(lifecycle fi.Lifecycle)

SetLifecycle sets the Lifecycle of the object, implementing fi.SetLifecycle

func (*InternetGateway) SetName

func (o *InternetGateway) SetName(name string)

SetName sets the Name of the object, implementing fi.SetName

func (*InternetGateway) String

func (o *InternetGateway) String() string

String is the stringer function for the task, producing readable output using fi.TaskAsString

func (e *InternetGateway) TerraformLink() *terraform.Literal

func (*InternetGateway) UnmarshalJSON

func (o *InternetGateway) UnmarshalJSON(data []byte) error

UnmarshalJSON implements conversion to JSON, supporting an alternate specification of the object as a string

type LaunchConfiguration

type LaunchConfiguration struct {
	// Name is the name of the configuration
	Name *string
	// Lifecycle is the resource lifecycle
	Lifecycle *fi.Lifecycle

	// AssociatePublicIP indicates if a public ip address is assigned to instabces
	AssociatePublicIP *bool
	// BlockDeviceMappings is a block device mappings
	BlockDeviceMappings []*BlockDeviceMapping
	// IAMInstanceProfile is the IAM profile to assign to the nodes
	IAMInstanceProfile *IAMInstanceProfile
	// ID is the launch configuration name
	ID *string
	// ImageID is the AMI to use for the instances
	ImageID *string
	// InstanceMonitoring indicates if monitoring is enabled
	InstanceMonitoring *bool
	// InstanceType is the machine type to use
	InstanceType *string
	// If volume type is io1, then we need to specify the number of Iops.
	RootVolumeIops *int64
	// RootVolumeOptimization enables EBS optimization for an instance
	RootVolumeOptimization *bool
	// RootVolumeSize is the size of the EBS root volume to use, in GB
	RootVolumeSize *int64
	// RootVolumeType is the type of the EBS root volume to use (e.g. gp2)
	RootVolumeType *string
	// SSHKey is the ssh key for the instances
	SSHKey *SSHKey
	// SecurityGroups is a list of security group associated
	SecurityGroups []*SecurityGroup
	// SpotPrice is set to the spot-price bid if this is a spot pricing request
	SpotPrice string
	// Tenancy. Can be either default or dedicated.
	Tenancy *string
	// UserData is the user data configuration
	UserData *fi.ResourceHolder
}

LaunchConfiguration is the specification for a launch configuration

func (*LaunchConfiguration) CheckChanges

func (s *LaunchConfiguration) CheckChanges(a, e, changes *LaunchConfiguration) error
func (e *LaunchConfiguration) CloudformationLink() *cloudformation.Literal

func (*LaunchConfiguration) CompareWithID

func (e *LaunchConfiguration) CompareWithID() *string

func (*LaunchConfiguration) Find

Find is responsible for finding the launch configuration

func (*LaunchConfiguration) FindDeletions

func (e *LaunchConfiguration) FindDeletions(c *fi.Context) ([]fi.Deletion, error)

func (*LaunchConfiguration) GetLifecycle

func (o *LaunchConfiguration) GetLifecycle() *fi.Lifecycle

GetLifecycle returns the Lifecycle of the object, implementing fi.HasLifecycle

func (*LaunchConfiguration) GetName

func (o *LaunchConfiguration) GetName() *string

GetName returns the Name of the object, implementing fi.HasName

func (*LaunchConfiguration) Normalize

func (e *LaunchConfiguration) Normalize()

func (*LaunchConfiguration) RenderAWS

func (_ *LaunchConfiguration) RenderAWS(t *awsup.AWSAPITarget, a, e, changes *LaunchConfiguration) error

RenderAWS is responsible for creating the launchconfiguration via api

func (*LaunchConfiguration) RenderCloudformation

func (_ *LaunchConfiguration) RenderCloudformation(t *cloudformation.CloudformationTarget, a, e, changes *LaunchConfiguration) error

RenderCloudformation is responsible for rendering the cloudformation template

func (*LaunchConfiguration) RenderTerraform

func (_ *LaunchConfiguration) RenderTerraform(t *terraform.TerraformTarget, a, e, changes *LaunchConfiguration) error

RenderTerraform is responsible for rendering the terraform json

func (*LaunchConfiguration) Run

func (e *LaunchConfiguration) Run(c *fi.Context) error

func (*LaunchConfiguration) SetLifecycle

func (o *LaunchConfiguration) SetLifecycle(lifecycle fi.Lifecycle)

SetLifecycle sets the Lifecycle of the object, implementing fi.SetLifecycle

func (*LaunchConfiguration) SetName

func (o *LaunchConfiguration) SetName(name string)

SetName sets the Name of the object, implementing fi.SetName

func (*LaunchConfiguration) String

func (o *LaunchConfiguration) String() string

String is the stringer function for the task, producing readable output using fi.TaskAsString

func (e *LaunchConfiguration) TerraformLink() *terraform.Literal

TerraformLink returns the terraform reference

func (*LaunchConfiguration) UnmarshalJSON

func (o *LaunchConfiguration) UnmarshalJSON(data []byte) error

UnmarshalJSON implements conversion to JSON, supporting an alternate specification of the object as a string

type LaunchTemplate

type LaunchTemplate struct {
	// Name is the name of the configuration
	Name *string
	// Lifecycle is the resource lifecycle
	Lifecycle *fi.Lifecycle

	// AssociatePublicIP indicates if a public ip address is assigned to instabces
	AssociatePublicIP *bool
	// BlockDeviceMappings is a block device mappings
	BlockDeviceMappings []*BlockDeviceMapping
	// IAMInstanceProfile is the IAM profile to assign to the nodes
	IAMInstanceProfile *IAMInstanceProfile
	// ID is the launch configuration name
	ID *string
	// ImageID is the AMI to use for the instances
	ImageID *string
	// InstanceMonitoring indicates if monitoring is enabled
	InstanceMonitoring *bool
	// InstanceType is the type of instance we are using
	InstanceType *string
	// If volume type is io1, then we need to specify the number of Iops.
	RootVolumeIops *int64
	// RootVolumeOptimization enables EBS optimization for an instance
	RootVolumeOptimization *bool
	// RootVolumeSize is the size of the EBS root volume to use, in GB
	RootVolumeSize *int64
	// RootVolumeType is the type of the EBS root volume to use (e.g. gp2)
	RootVolumeType *string
	// SSHKey is the ssh key for the instances
	SSHKey *SSHKey
	// SecurityGroups is a list of security group associated
	SecurityGroups []*SecurityGroup
	// SpotPrice is set to the spot-price bid if this is a spot pricing request
	SpotPrice string
	// Tenancy. Can be either default or dedicated.
	Tenancy *string
	// UserData is the user data configuration
	UserData *fi.ResourceHolder
}

LaunchTemplate defines the specificate for a template

func (*LaunchTemplate) CheckChanges

func (t *LaunchTemplate) CheckChanges(a, e, changes *LaunchTemplate) error

CheckChanges is responsible for ensuring certains fields

func (t *LaunchTemplate) CloudformationLink() *cloudformation.Literal

CloudformationLink returns the cloudformation link for us

func (*LaunchTemplate) CompareWithID

func (t *LaunchTemplate) CompareWithID() *string

CompareWithID implements the comparable interface

func (*LaunchTemplate) Find

func (t *LaunchTemplate) Find(c *fi.Context) (*LaunchTemplate, error)

Find is responsible for finding the launch template for us

func (*LaunchTemplate) FindDeletions

func (t *LaunchTemplate) FindDeletions(c *fi.Context) ([]fi.Deletion, error)

FindDeletions is responsible for finding launch templates which can be deleted

func (*LaunchTemplate) GetLifecycle

func (o *LaunchTemplate) GetLifecycle() *fi.Lifecycle

GetLifecycle returns the Lifecycle of the object, implementing fi.HasLifecycle

func (*LaunchTemplate) GetName

func (o *LaunchTemplate) GetName() *string

GetName returns the Name of the object, implementing fi.HasName

func (*LaunchTemplate) LaunchTemplateName

func (t *LaunchTemplate) LaunchTemplateName() string

LaunchTemplateName returns the lanuch template name

func (*LaunchTemplate) Normalize

func (t *LaunchTemplate) Normalize()

Normalize is responsible for normalizing any data within the resource

func (*LaunchTemplate) RenderAWS

func (t *LaunchTemplate) RenderAWS(c *awsup.AWSAPITarget, a, ep, changes *LaunchTemplate) error

RenderAWS is responsible for performing creating / updating the launch template

func (*LaunchTemplate) RenderCloudformation

func (t *LaunchTemplate) RenderCloudformation(target *cloudformation.CloudformationTarget, a, e, changes *LaunchTemplate) error

RenderCloudformation is responsible for rendering the cloudformation json

func (*LaunchTemplate) RenderTerraform

func (t *LaunchTemplate) RenderTerraform(target *terraform.TerraformTarget, a, e, changes *LaunchTemplate) error

RenderTerraform is responsible for rendering the terraform json

func (*LaunchTemplate) Run

func (t *LaunchTemplate) Run(c *fi.Context) error

Run is responsible for

func (*LaunchTemplate) SetLifecycle

func (o *LaunchTemplate) SetLifecycle(lifecycle fi.Lifecycle)

SetLifecycle sets the Lifecycle of the object, implementing fi.SetLifecycle

func (*LaunchTemplate) SetName

func (o *LaunchTemplate) SetName(name string)

SetName sets the Name of the object, implementing fi.SetName

func (*LaunchTemplate) String

func (o *LaunchTemplate) String() string

String is the stringer function for the task, producing readable output using fi.TaskAsString

func (t *LaunchTemplate) TerraformLink() *terraform.Literal

TerraformLink returns the terraform reference

func (*LaunchTemplate) UnmarshalJSON

func (o *LaunchTemplate) UnmarshalJSON(data []byte) error

UnmarshalJSON implements conversion to JSON, supporting an alternate specification of the object as a string

func (t *LaunchTemplate) VersionLink() *terraform.Literal

VersionLink returns the terraform version reference

type LoadBalancer

type LoadBalancer struct {
	// We use the Name tag to find the existing ELB, because we are (more or less) unrestricted when
	// it comes to tag values, but the LoadBalancerName is length limited
	Name      *string
	Lifecycle *fi.Lifecycle

	// LoadBalancerName is the name in ELB, possibly different from our name
	// (ELB is restricted as to names, so we have limited choices!)
	// We use the Name tag to find the existing ELB.
	LoadBalancerName *string

	DNSName      *string
	HostedZoneId *string

	Subnets        []*Subnet
	SecurityGroups []*SecurityGroup

	Listeners map[string]*LoadBalancerListener

	Scheme *string

	HealthCheck            *LoadBalancerHealthCheck
	AccessLog              *LoadBalancerAccessLog
	ConnectionDraining     *LoadBalancerConnectionDraining
	ConnectionSettings     *LoadBalancerConnectionSettings
	CrossZoneLoadBalancing *LoadBalancerCrossZoneLoadBalancing
	SSLCertificateID       string

	Tags map[string]string
}

func (*LoadBalancer) CheckChanges

func (s *LoadBalancer) CheckChanges(a, e, changes *LoadBalancer) error

func (*LoadBalancer) CloudformationAttrCanonicalHostedZoneNameID

func (e *LoadBalancer) CloudformationAttrCanonicalHostedZoneNameID() *cloudformation.Literal

func (*LoadBalancer) CloudformationAttrDNSName

func (e *LoadBalancer) CloudformationAttrDNSName() *cloudformation.Literal
func (e *LoadBalancer) CloudformationLink() *cloudformation.Literal

func (*LoadBalancer) CompareWithID

func (e *LoadBalancer) CompareWithID() *string

func (*LoadBalancer) Find

func (e *LoadBalancer) Find(c *fi.Context) (*LoadBalancer, error)

func (*LoadBalancer) FindIPAddress

func (e *LoadBalancer) FindIPAddress(context *fi.Context) (*string, error)

func (*LoadBalancer) GetLifecycle

func (o *LoadBalancer) GetLifecycle() *fi.Lifecycle

GetLifecycle returns the Lifecycle of the object, implementing fi.HasLifecycle

func (*LoadBalancer) GetName

func (o *LoadBalancer) GetName() *string

GetName returns the Name of the object, implementing fi.HasName

func (*LoadBalancer) Normalize

func (e *LoadBalancer) Normalize()

func (*LoadBalancer) RenderAWS

func (_ *LoadBalancer) RenderAWS(t *awsup.AWSAPITarget, a, e, changes *LoadBalancer) error

func (*LoadBalancer) RenderCloudformation

func (_ *LoadBalancer) RenderCloudformation(t *cloudformation.CloudformationTarget, a, e, changes *LoadBalancer) error

func (*LoadBalancer) RenderTerraform

func (_ *LoadBalancer) RenderTerraform(t *terraform.TerraformTarget, a, e, changes *LoadBalancer) error

func (*LoadBalancer) Run

func (e *LoadBalancer) Run(c *fi.Context) error

func (*LoadBalancer) SetLifecycle

func (o *LoadBalancer) SetLifecycle(lifecycle fi.Lifecycle)

SetLifecycle sets the Lifecycle of the object, implementing fi.SetLifecycle

func (*LoadBalancer) SetName

func (o *LoadBalancer) SetName(name string)

SetName sets the Name of the object, implementing fi.SetName

func (*LoadBalancer) String

func (o *LoadBalancer) String() string

String is the stringer function for the task, producing readable output using fi.TaskAsString

func (e *LoadBalancer) TerraformLink(params ...string) *terraform.Literal

func (*LoadBalancer) UnmarshalJSON

func (o *LoadBalancer) UnmarshalJSON(data []byte) error

UnmarshalJSON implements conversion to JSON, supporting an alternate specification of the object as a string

type LoadBalancerAccessLog

type LoadBalancerAccessLog struct {
	EmitInterval   *int64
	Enabled        *bool
	S3BucketName   *string
	S3BucketPrefix *string
}

func (*LoadBalancerAccessLog) GetDependencies

func (_ *LoadBalancerAccessLog) GetDependencies(tasks map[string]fi.Task) []fi.Task

type LoadBalancerAttachment

type LoadBalancerAttachment struct {
	Name      *string
	Lifecycle *fi.Lifecycle

	LoadBalancer *LoadBalancer

	// LoadBalancerAttachments now support ASGs or direct instances
	AutoscalingGroup *AutoscalingGroup
	Subnet           *Subnet

	// Here be dragons..
	// This will *NOT* unmarshal.. for some reason this pointer is initiated as nil
	// instead of a pointer to Instance with nil members..
	Instance *Instance
}

func (*LoadBalancerAttachment) CheckChanges

func (s *LoadBalancerAttachment) CheckChanges(a, e, changes *LoadBalancerAttachment) error

func (*LoadBalancerAttachment) Find

func (*LoadBalancerAttachment) GetLifecycle

func (o *LoadBalancerAttachment) GetLifecycle() *fi.Lifecycle

GetLifecycle returns the Lifecycle of the object, implementing fi.HasLifecycle

func (*LoadBalancerAttachment) GetName

func (o *LoadBalancerAttachment) GetName() *string

GetName returns the Name of the object, implementing fi.HasName

func (*LoadBalancerAttachment) RenderAWS

func (_ *LoadBalancerAttachment) RenderAWS(t *awsup.AWSAPITarget, a, e, changes *LoadBalancerAttachment) error

func (*LoadBalancerAttachment) RenderCloudformation

func (_ *LoadBalancerAttachment) RenderCloudformation(t *cloudformation.CloudformationTarget, a, e, changes *LoadBalancerAttachment) error

func (*LoadBalancerAttachment) RenderTerraform

func (_ *LoadBalancerAttachment) RenderTerraform(t *terraform.TerraformTarget, a, e, changes *LoadBalancerAttachment) error

func (*LoadBalancerAttachment) Run

func (*LoadBalancerAttachment) SetLifecycle

func (o *LoadBalancerAttachment) SetLifecycle(lifecycle fi.Lifecycle)

SetLifecycle sets the Lifecycle of the object, implementing fi.SetLifecycle

func (*LoadBalancerAttachment) SetName

func (o *LoadBalancerAttachment) SetName(name string)

SetName sets the Name of the object, implementing fi.SetName

func (*LoadBalancerAttachment) String

func (o *LoadBalancerAttachment) String() string

String is the stringer function for the task, producing readable output using fi.TaskAsString

func (e *LoadBalancerAttachment) TerraformLink() *terraform.Literal

func (*LoadBalancerAttachment) UnmarshalJSON

func (o *LoadBalancerAttachment) UnmarshalJSON(data []byte) error

UnmarshalJSON implements conversion to JSON, supporting an alternate specification of the object as a string

type LoadBalancerConnectionDraining

type LoadBalancerConnectionDraining struct {
	Enabled *bool
	Timeout *int64
}

func (*LoadBalancerConnectionDraining) GetDependencies

func (_ *LoadBalancerConnectionDraining) GetDependencies(tasks map[string]fi.Task) []fi.Task

type LoadBalancerConnectionSettings

type LoadBalancerConnectionSettings struct {
	IdleTimeout *int64
}

func (*LoadBalancerConnectionSettings) GetDependencies

func (_ *LoadBalancerConnectionSettings) GetDependencies(tasks map[string]fi.Task) []fi.Task

type LoadBalancerCrossZoneLoadBalancing

type LoadBalancerCrossZoneLoadBalancing struct {
	Enabled *bool
}

func (*LoadBalancerCrossZoneLoadBalancing) GetDependencies

func (_ *LoadBalancerCrossZoneLoadBalancing) GetDependencies(tasks map[string]fi.Task) []fi.Task

type LoadBalancerHealthCheck

type LoadBalancerHealthCheck struct {
	Target *string

	HealthyThreshold   *int64
	UnhealthyThreshold *int64

	Interval *int64
	Timeout  *int64
}

func (*LoadBalancerHealthCheck) GetDependencies

func (e *LoadBalancerHealthCheck) GetDependencies(tasks map[string]fi.Task) []fi.Task

type LoadBalancerListener

type LoadBalancerListener struct {
	InstancePort     int
	SSLCertificateID string
}

func (*LoadBalancerListener) GetDependencies

func (e *LoadBalancerListener) GetDependencies(tasks map[string]fi.Task) []fi.Task

type NatGateway

type NatGateway struct {
	Name      *string
	Lifecycle *fi.Lifecycle

	ElasticIP *ElasticIP
	Subnet    *Subnet
	ID        *string

	EgressId *string

	// Shared is set if this is a shared NatGateway
	Shared *bool

	// Tags is a map of aws tags that are added to the NatGateway
	Tags map[string]string

	// We can't tag NatGateways, so we have to find through a surrogate
	AssociatedRouteTable *RouteTable
}

func (*NatGateway) CheckChanges

func (s *NatGateway) CheckChanges(a, e, changes *NatGateway) error
func (e *NatGateway) CloudformationLink() *cloudformation.Literal

func (*NatGateway) CompareWithID

func (e *NatGateway) CompareWithID() *string

func (*NatGateway) Find

func (e *NatGateway) Find(c *fi.Context) (*NatGateway, error)

func (*NatGateway) GetLifecycle

func (o *NatGateway) GetLifecycle() *fi.Lifecycle

GetLifecycle returns the Lifecycle of the object, implementing fi.HasLifecycle

func (*NatGateway) GetName

func (o *NatGateway) GetName() *string

GetName returns the Name of the object, implementing fi.HasName

func (*NatGateway) RenderAWS

func (_ *NatGateway) RenderAWS(t *awsup.AWSAPITarget, a, e, changes *NatGateway) error

func (*NatGateway) RenderCloudformation

func (_ *NatGateway) RenderCloudformation(t *cloudformation.CloudformationTarget, a, e, changes *NatGateway) error

func (*NatGateway) RenderTerraform

func (_ *NatGateway) RenderTerraform(t *terraform.TerraformTarget, a, e, changes *NatGateway) error

func (*NatGateway) Run

func (e *NatGateway) Run(c *fi.Context) error

func (*NatGateway) SetLifecycle

func (o *NatGateway) SetLifecycle(lifecycle fi.Lifecycle)

SetLifecycle sets the Lifecycle of the object, implementing fi.SetLifecycle

func (*NatGateway) SetName

func (o *NatGateway) SetName(name string)

SetName sets the Name of the object, implementing fi.SetName

func (*NatGateway) String

func (o *NatGateway) String() string

String is the stringer function for the task, producing readable output using fi.TaskAsString

func (e *NatGateway) TerraformLink() *terraform.Literal

func (*NatGateway) UnmarshalJSON

func (o *NatGateway) UnmarshalJSON(data []byte) error

UnmarshalJSON implements conversion to JSON, supporting an alternate specification of the object as a string

type OrderSecurityGroupsById

type OrderSecurityGroupsById []*SecurityGroup

OrderSecurityGroupsById implements sort.Interface for []SecurityGroup, based on ID

func (OrderSecurityGroupsById) Len

func (a OrderSecurityGroupsById) Len() int

func (OrderSecurityGroupsById) Less

func (a OrderSecurityGroupsById) Less(i, j int) bool

func (OrderSecurityGroupsById) Swap

func (a OrderSecurityGroupsById) Swap(i, j int)

type OrderSubnetsById

type OrderSubnetsById []*Subnet

OrderSubnetsById implements sort.Interface for []Subnet, based on ID

func (OrderSubnetsById) Len

func (a OrderSubnetsById) Len() int

func (OrderSubnetsById) Less

func (a OrderSubnetsById) Less(i, j int) bool

func (OrderSubnetsById) Swap

func (a OrderSubnetsById) Swap(i, j int)

type PortRemovalRule

type PortRemovalRule struct {
	Port int
}

func (*PortRemovalRule) Matches

func (r *PortRemovalRule) Matches(permission *ec2.IpPermission) bool

func (*PortRemovalRule) String

func (r *PortRemovalRule) String() string

type RemovalRule

type RemovalRule interface {
	Matches(permission *ec2.IpPermission) bool
}

RemovalRule is a rule that filters the permissions we should remove

func ParseRemovalRule

func ParseRemovalRule(rule string) (RemovalRule, error)

ParseRemovalRule parses our removal rule DSL into a RemovalRule

type Route

type Route struct {
	Name      *string
	Lifecycle *fi.Lifecycle

	RouteTable *RouteTable
	Instance   *Instance
	CIDR       *string

	// Either an InternetGateway or a NAT Gateway
	// MUST be provided.
	InternetGateway *InternetGateway
	NatGateway      *NatGateway
}

func (*Route) CheckChanges

func (s *Route) CheckChanges(a, e, changes *Route) error

func (*Route) Find

func (e *Route) Find(c *fi.Context) (*Route, error)

func (*Route) GetLifecycle

func (o *Route) GetLifecycle() *fi.Lifecycle

GetLifecycle returns the Lifecycle of the object, implementing fi.HasLifecycle

func (*Route) GetName

func (o *Route) GetName() *string

GetName returns the Name of the object, implementing fi.HasName

func (*Route) RenderAWS

func (_ *Route) RenderAWS(t *awsup.AWSAPITarget, a, e, changes *Route) error

func (*Route) RenderCloudformation

func (_ *Route) RenderCloudformation(t *cloudformation.CloudformationTarget, a, e, changes *Route) error

func (*Route) RenderTerraform

func (_ *Route) RenderTerraform(t *terraform.TerraformTarget, a, e, changes *Route) error

func (*Route) Run

func (e *Route) Run(c *fi.Context) error

func (*Route) SetLifecycle

func (o *Route) SetLifecycle(lifecycle fi.Lifecycle)

SetLifecycle sets the Lifecycle of the object, implementing fi.SetLifecycle

func (*Route) SetName

func (o *Route) SetName(name string)

SetName sets the Name of the object, implementing fi.SetName

func (*Route) String

func (o *Route) String() string

String is the stringer function for the task, producing readable output using fi.TaskAsString

func (*Route) UnmarshalJSON

func (o *Route) UnmarshalJSON(data []byte) error

UnmarshalJSON implements conversion to JSON, supporting an alternate specification of the object as a string

type RouteTable

type RouteTable struct {
	Name      *string
	Lifecycle *fi.Lifecycle

	ID  *string
	VPC *VPC

	// Shared is set if this is a shared RouteTable
	Shared *bool
	// Tags is a map of aws tags that are added to the RouteTable
	Tags map[string]string
}

func (*RouteTable) CheckChanges

func (s *RouteTable) CheckChanges(a, e, changes *RouteTable) error
func (e *RouteTable) CloudformationLink() *cloudformation.Literal

func (*RouteTable) CompareWithID

func (e *RouteTable) CompareWithID() *string

func (*RouteTable) Find

func (e *RouteTable) Find(c *fi.Context) (*RouteTable, error)

func (*RouteTable) GetLifecycle

func (o *RouteTable) GetLifecycle() *fi.Lifecycle

GetLifecycle returns the Lifecycle of the object, implementing fi.HasLifecycle

func (*RouteTable) GetName

func (o *RouteTable) GetName() *string

GetName returns the Name of the object, implementing fi.HasName

func (*RouteTable) RenderAWS

func (_ *RouteTable) RenderAWS(t *awsup.AWSAPITarget, a, e, changes *RouteTable) error

func (*RouteTable) RenderCloudformation

func (_ *RouteTable) RenderCloudformation(t *cloudformation.CloudformationTarget, a, e, changes *RouteTable) error

func (*RouteTable) RenderTerraform

func (_ *RouteTable) RenderTerraform(t *terraform.TerraformTarget, a, e, changes *RouteTable) error

func (*RouteTable) Run

func (e *RouteTable) Run(c *fi.Context) error

func (*RouteTable) SetLifecycle

func (o *RouteTable) SetLifecycle(lifecycle fi.Lifecycle)

SetLifecycle sets the Lifecycle of the object, implementing fi.SetLifecycle

func (*RouteTable) SetName

func (o *RouteTable) SetName(name string)

SetName sets the Name of the object, implementing fi.SetName

func (*RouteTable) String

func (o *RouteTable) String() string

String is the stringer function for the task, producing readable output using fi.TaskAsString

func (e *RouteTable) TerraformLink() *terraform.Literal

func (*RouteTable) UnmarshalJSON

func (o *RouteTable) UnmarshalJSON(data []byte) error

UnmarshalJSON implements conversion to JSON, supporting an alternate specification of the object as a string

type RouteTableAssociation

type RouteTableAssociation struct {
	Name      *string
	Lifecycle *fi.Lifecycle

	ID         *string
	RouteTable *RouteTable
	Subnet     *Subnet
}

func (*RouteTableAssociation) CheckChanges

func (s *RouteTableAssociation) CheckChanges(a, e, changes *RouteTableAssociation) error
func (e *RouteTableAssociation) CloudformationLink() *cloudformation.Literal

func (*RouteTableAssociation) CompareWithID

func (s *RouteTableAssociation) CompareWithID() *string

func (*RouteTableAssociation) Find

func (*RouteTableAssociation) GetLifecycle

func (o *RouteTableAssociation) GetLifecycle() *fi.Lifecycle

GetLifecycle returns the Lifecycle of the object, implementing fi.HasLifecycle

func (*RouteTableAssociation) GetName

func (o *RouteTableAssociation) GetName() *string

GetName returns the Name of the object, implementing fi.HasName

func (*RouteTableAssociation) RenderAWS

func (_ *RouteTableAssociation) RenderAWS(t *awsup.AWSAPITarget, a, e, changes *RouteTableAssociation) error

func (*RouteTableAssociation) RenderCloudformation

func (_ *RouteTableAssociation) RenderCloudformation(t *cloudformation.CloudformationTarget, a, e, changes *RouteTableAssociation) error

func (*RouteTableAssociation) RenderTerraform

func (_ *RouteTableAssociation) RenderTerraform(t *terraform.TerraformTarget, a, e, changes *RouteTableAssociation) error

func (*RouteTableAssociation) Run

func (*RouteTableAssociation) SetLifecycle

func (o *RouteTableAssociation) SetLifecycle(lifecycle fi.Lifecycle)

SetLifecycle sets the Lifecycle of the object, implementing fi.SetLifecycle

func (*RouteTableAssociation) SetName

func (o *RouteTableAssociation) SetName(name string)

SetName sets the Name of the object, implementing fi.SetName

func (*RouteTableAssociation) String

func (o *RouteTableAssociation) String() string

String is the stringer function for the task, producing readable output using fi.TaskAsString

func (e *RouteTableAssociation) TerraformLink() *terraform.Literal

func (*RouteTableAssociation) UnmarshalJSON

func (o *RouteTableAssociation) UnmarshalJSON(data []byte) error

UnmarshalJSON implements conversion to JSON, supporting an alternate specification of the object as a string

type SSHKey

type SSHKey struct {
	Name      *string
	Lifecycle *fi.Lifecycle

	PublicKey *fi.ResourceHolder

	KeyFingerprint *string
}

func (*SSHKey) CheckChanges

func (s *SSHKey) CheckChanges(a, e, changes *SSHKey) error

func (*SSHKey) CompareWithID

func (e *SSHKey) CompareWithID() *string

func (*SSHKey) Find

func (e *SSHKey) Find(c *fi.Context) (*SSHKey, error)

func (*SSHKey) GetLifecycle

func (o *SSHKey) GetLifecycle() *fi.Lifecycle

GetLifecycle returns the Lifecycle of the object, implementing fi.HasLifecycle

func (*SSHKey) GetName

func (o *SSHKey) GetName() *string

GetName returns the Name of the object, implementing fi.HasName

func (*SSHKey) IsExistingKey

func (e *SSHKey) IsExistingKey() bool

IsExistingKey will be true if the task has been initialized without using a public key this is when we want to use a key that is already present in AWS.

func (*SSHKey) RenderAWS

func (_ *SSHKey) RenderAWS(t *awsup.AWSAPITarget, a, e, changes *SSHKey) error

func (*SSHKey) RenderCloudformation

func (_ *SSHKey) RenderCloudformation(t *cloudformation.CloudformationTarget, a, e, changes *SSHKey) error

func (*SSHKey) RenderTerraform

func (_ *SSHKey) RenderTerraform(t *terraform.TerraformTarget, a, e, changes *SSHKey) error

func (*SSHKey) Run

func (e *SSHKey) Run(c *fi.Context) error

func (*SSHKey) SetLifecycle

func (o *SSHKey) SetLifecycle(lifecycle fi.Lifecycle)

SetLifecycle sets the Lifecycle of the object, implementing fi.SetLifecycle

func (*SSHKey) SetName

func (o *SSHKey) SetName(name string)

SetName sets the Name of the object, implementing fi.SetName

func (*SSHKey) String

func (o *SSHKey) String() string

String is the stringer function for the task, producing readable output using fi.TaskAsString

func (e *SSHKey) TerraformLink() *terraform.Literal

func (*SSHKey) UnmarshalJSON

func (o *SSHKey) UnmarshalJSON(data []byte) error

UnmarshalJSON implements conversion to JSON, supporting an alternate specification of the object as a string

type SecurityGroup

type SecurityGroup struct {
	Name      *string
	Lifecycle *fi.Lifecycle

	ID          *string
	Description *string
	VPC         *VPC

	RemoveExtraRules []string

	// Shared is set if this is a shared security group (one we don't create or own)
	Shared *bool

	Tags map[string]string
}

func (*SecurityGroup) CheckChanges

func (_ *SecurityGroup) CheckChanges(a, e, changes *SecurityGroup) error
func (e *SecurityGroup) CloudformationLink() *cloudformation.Literal

func (*SecurityGroup) CompareWithID

func (e *SecurityGroup) CompareWithID() *string

func (*SecurityGroup) Find

func (e *SecurityGroup) Find(c *fi.Context) (*SecurityGroup, error)

func (*SecurityGroup) FindDeletions

func (e *SecurityGroup) FindDeletions(c *fi.Context) ([]fi.Deletion, error)

func (*SecurityGroup) GetLifecycle

func (o *SecurityGroup) GetLifecycle() *fi.Lifecycle

GetLifecycle returns the Lifecycle of the object, implementing fi.HasLifecycle

func (*SecurityGroup) GetName

func (o *SecurityGroup) GetName() *string

GetName returns the Name of the object, implementing fi.HasName

func (*SecurityGroup) RenderAWS

func (_ *SecurityGroup) RenderAWS(t *awsup.AWSAPITarget, a, e, changes *SecurityGroup) error

func (*SecurityGroup) RenderCloudformation

func (_ *SecurityGroup) RenderCloudformation(t *cloudformation.CloudformationTarget, a, e, changes *SecurityGroup) error

func (*SecurityGroup) RenderTerraform

func (_ *SecurityGroup) RenderTerraform(t *terraform.TerraformTarget, a, e, changes *SecurityGroup) error

func (*SecurityGroup) Run

func (e *SecurityGroup) Run(c *fi.Context) error

func (*SecurityGroup) SetLifecycle

func (o *SecurityGroup) SetLifecycle(lifecycle fi.Lifecycle)

SetLifecycle sets the Lifecycle of the object, implementing fi.SetLifecycle

func (*SecurityGroup) SetName

func (o *SecurityGroup) SetName(name string)

SetName sets the Name of the object, implementing fi.SetName

func (*SecurityGroup) ShouldCreate

func (_ *SecurityGroup) ShouldCreate(a, e, changes *SecurityGroup) (bool, error)

func (*SecurityGroup) String

func (o *SecurityGroup) String() string

String is the stringer function for the task, producing readable output using fi.TaskAsString

func (e *SecurityGroup) TerraformLink() *terraform.Literal

func (*SecurityGroup) UnmarshalJSON

func (o *SecurityGroup) UnmarshalJSON(data []byte) error

UnmarshalJSON implements conversion to JSON, supporting an alternate specification of the object as a string

type SecurityGroupRule

type SecurityGroupRule struct {
	Name      *string
	Lifecycle *fi.Lifecycle

	SecurityGroup *SecurityGroup
	CIDR          *string
	Protocol      *string

	// FromPort is the lower-bound (inclusive) of the port-range
	FromPort *int64
	// ToPort is the upper-bound (inclusive) of the port-range
	ToPort      *int64
	SourceGroup *SecurityGroup

	Egress *bool
}

func (*SecurityGroupRule) CheckChanges

func (_ *SecurityGroupRule) CheckChanges(a, e, changes *SecurityGroupRule) error

func (*SecurityGroupRule) Description

func (e *SecurityGroupRule) Description() string

Description returns a human readable summary of the security group rule

func (*SecurityGroupRule) Find

func (*SecurityGroupRule) GetLifecycle

func (o *SecurityGroupRule) GetLifecycle() *fi.Lifecycle

GetLifecycle returns the Lifecycle of the object, implementing fi.HasLifecycle

func (*SecurityGroupRule) GetName

func (o *SecurityGroupRule) GetName() *string

GetName returns the Name of the object, implementing fi.HasName

func (*SecurityGroupRule) RenderAWS

func (_ *SecurityGroupRule) RenderAWS(t *awsup.AWSAPITarget, a, e, changes *SecurityGroupRule) error

func (*SecurityGroupRule) RenderCloudformation

func (_ *SecurityGroupRule) RenderCloudformation(t *cloudformation.CloudformationTarget, a, e, changes *SecurityGroupRule) error

func (*SecurityGroupRule) RenderTerraform

func (_ *SecurityGroupRule) RenderTerraform(t *terraform.TerraformTarget, a, e, changes *SecurityGroupRule) error

func (*SecurityGroupRule) Run

func (e *SecurityGroupRule) Run(c *fi.Context) error

func (*SecurityGroupRule) SetLifecycle

func (o *SecurityGroupRule) SetLifecycle(lifecycle fi.Lifecycle)

SetLifecycle sets the Lifecycle of the object, implementing fi.SetLifecycle

func (*SecurityGroupRule) SetName

func (o *SecurityGroupRule) SetName(name string)

SetName sets the Name of the object, implementing fi.SetName

func (*SecurityGroupRule) String

func (o *SecurityGroupRule) String() string

String is the stringer function for the task, producing readable output using fi.TaskAsString

func (*SecurityGroupRule) UnmarshalJSON

func (o *SecurityGroupRule) UnmarshalJSON(data []byte) error

UnmarshalJSON implements conversion to JSON, supporting an alternate specification of the object as a string

type Subnet

type Subnet struct {
	Name *string

	// ShortName is a shorter name, for use in terraform outputs
	// ShortName is expected to be unique across all subnets in the cluster,
	// so it is typically set to the name of the Subnet, in the cluster spec.
	ShortName *string

	Lifecycle *fi.Lifecycle

	ID               *string
	VPC              *VPC
	AvailabilityZone *string
	CIDR             *string
	Shared           *bool

	Tags map[string]string
}

func (*Subnet) CheckChanges

func (s *Subnet) CheckChanges(a, e, changes *Subnet) error
func (e *Subnet) CloudformationLink() *cloudformation.Literal

func (*Subnet) CompareWithID

func (e *Subnet) CompareWithID() *string

func (*Subnet) Find

func (e *Subnet) Find(c *fi.Context) (*Subnet, error)

func (*Subnet) GetLifecycle

func (o *Subnet) GetLifecycle() *fi.Lifecycle

GetLifecycle returns the Lifecycle of the object, implementing fi.HasLifecycle

func (*Subnet) GetName

func (o *Subnet) GetName() *string

GetName returns the Name of the object, implementing fi.HasName

func (*Subnet) RenderAWS

func (_ *Subnet) RenderAWS(t *awsup.AWSAPITarget, a, e, changes *Subnet) error

func (*Subnet) RenderCloudformation

func (_ *Subnet) RenderCloudformation(t *cloudformation.CloudformationTarget, a, e, changes *Subnet) error

func (*Subnet) RenderTerraform

func (_ *Subnet) RenderTerraform(t *terraform.TerraformTarget, a, e, changes *Subnet) error

func (*Subnet) Run

func (e *Subnet) Run(c *fi.Context) error

func (*Subnet) SetLifecycle

func (o *Subnet) SetLifecycle(lifecycle fi.Lifecycle)

SetLifecycle sets the Lifecycle of the object, implementing fi.SetLifecycle

func (*Subnet) SetName

func (o *Subnet) SetName(name string)

SetName sets the Name of the object, implementing fi.SetName

func (*Subnet) String

func (o *Subnet) String() string

String is the stringer function for the task, producing readable output using fi.TaskAsString

func (e *Subnet) TerraformLink() *terraform.Literal

func (*Subnet) UnmarshalJSON

func (o *Subnet) UnmarshalJSON(data []byte) error

UnmarshalJSON implements conversion to JSON, supporting an alternate specification of the object as a string

type TaggableResource

type TaggableResource interface {
	FindResourceID(c fi.Cloud) (*string, error)
}

type VPC

type VPC struct {
	Name      *string
	Lifecycle *fi.Lifecycle

	ID                 *string
	CIDR               *string
	EnableDNSHostnames *bool
	EnableDNSSupport   *bool

	// Shared is set if this is a shared VPC
	Shared *bool

	Tags map[string]string
}

func (*VPC) CheckChanges

func (s *VPC) CheckChanges(a, e, changes *VPC) error
func (e *VPC) CloudformationLink() *cloudformation.Literal

func (*VPC) CompareWithID

func (e *VPC) CompareWithID() *string

func (*VPC) Find

func (e *VPC) Find(c *fi.Context) (*VPC, error)

func (*VPC) GetLifecycle

func (o *VPC) GetLifecycle() *fi.Lifecycle

GetLifecycle returns the Lifecycle of the object, implementing fi.HasLifecycle

func (*VPC) GetName

func (o *VPC) GetName() *string

GetName returns the Name of the object, implementing fi.HasName

func (*VPC) RenderAWS

func (_ *VPC) RenderAWS(t *awsup.AWSAPITarget, a, e, changes *VPC) error

func (*VPC) RenderCloudformation

func (_ *VPC) RenderCloudformation(t *cloudformation.CloudformationTarget, a, e, changes *VPC) error

func (*VPC) RenderTerraform

func (_ *VPC) RenderTerraform(t *terraform.TerraformTarget, a, e, changes *VPC) error

func (*VPC) Run

func (e *VPC) Run(c *fi.Context) error

func (*VPC) SetLifecycle

func (o *VPC) SetLifecycle(lifecycle fi.Lifecycle)

SetLifecycle sets the Lifecycle of the object, implementing fi.SetLifecycle

func (*VPC) SetName

func (o *VPC) SetName(name string)

SetName sets the Name of the object, implementing fi.SetName

func (*VPC) String

func (o *VPC) String() string

String is the stringer function for the task, producing readable output using fi.TaskAsString

func (e *VPC) TerraformLink() *terraform.Literal

func (*VPC) UnmarshalJSON

func (o *VPC) UnmarshalJSON(data []byte) error

UnmarshalJSON implements conversion to JSON, supporting an alternate specification of the object as a string

type VPCCIDRBlock

type VPCCIDRBlock struct {
	Name      *string
	Lifecycle *fi.Lifecycle

	VPC       *VPC
	CIDRBlock *string

	// Shared is set if this is a shared VPC
	Shared *bool
}

func (*VPCCIDRBlock) CheckChanges

func (s *VPCCIDRBlock) CheckChanges(a, e, changes *VPCCIDRBlock) error

func (*VPCCIDRBlock) Find

func (e *VPCCIDRBlock) Find(c *fi.Context) (*VPCCIDRBlock, error)

func (*VPCCIDRBlock) GetLifecycle

func (o *VPCCIDRBlock) GetLifecycle() *fi.Lifecycle

GetLifecycle returns the Lifecycle of the object, implementing fi.HasLifecycle

func (*VPCCIDRBlock) GetName

func (o *VPCCIDRBlock) GetName() *string

GetName returns the Name of the object, implementing fi.HasName

func (*VPCCIDRBlock) RenderAWS

func (_ *VPCCIDRBlock) RenderAWS(t *awsup.AWSAPITarget, a, e, changes *VPCCIDRBlock) error

func (*VPCCIDRBlock) RenderCloudformation

func (_ *VPCCIDRBlock) RenderCloudformation(t *cloudformation.CloudformationTarget, a, e, changes *VPCCIDRBlock) error

func (*VPCCIDRBlock) RenderTerraform

func (_ *VPCCIDRBlock) RenderTerraform(t *terraform.TerraformTarget, a, e, changes *VPCCIDRBlock) error

func (*VPCCIDRBlock) Run

func (e *VPCCIDRBlock) Run(c *fi.Context) error

func (*VPCCIDRBlock) SetLifecycle

func (o *VPCCIDRBlock) SetLifecycle(lifecycle fi.Lifecycle)

SetLifecycle sets the Lifecycle of the object, implementing fi.SetLifecycle

func (*VPCCIDRBlock) SetName

func (o *VPCCIDRBlock) SetName(name string)

SetName sets the Name of the object, implementing fi.SetName

func (*VPCCIDRBlock) String

func (o *VPCCIDRBlock) String() string

String is the stringer function for the task, producing readable output using fi.TaskAsString

func (*VPCCIDRBlock) UnmarshalJSON

func (o *VPCCIDRBlock) UnmarshalJSON(data []byte) error

UnmarshalJSON implements conversion to JSON, supporting an alternate specification of the object as a string

type VPCDHCPOptionsAssociation

type VPCDHCPOptionsAssociation struct {
	Name      *string
	Lifecycle *fi.Lifecycle

	VPC         *VPC
	DHCPOptions *DHCPOptions
}

func (*VPCDHCPOptionsAssociation) CheckChanges

func (s *VPCDHCPOptionsAssociation) CheckChanges(a, e, changes *VPCDHCPOptionsAssociation) error

func (*VPCDHCPOptionsAssociation) Find

func (*VPCDHCPOptionsAssociation) GetLifecycle

func (o *VPCDHCPOptionsAssociation) GetLifecycle() *fi.Lifecycle

GetLifecycle returns the Lifecycle of the object, implementing fi.HasLifecycle

func (*VPCDHCPOptionsAssociation) GetName

func (o *VPCDHCPOptionsAssociation) GetName() *string

GetName returns the Name of the object, implementing fi.HasName

func (*VPCDHCPOptionsAssociation) RenderAWS

func (*VPCDHCPOptionsAssociation) RenderCloudformation

func (*VPCDHCPOptionsAssociation) RenderTerraform

func (*VPCDHCPOptionsAssociation) Run

func (*VPCDHCPOptionsAssociation) SetLifecycle

func (o *VPCDHCPOptionsAssociation) SetLifecycle(lifecycle fi.Lifecycle)

SetLifecycle sets the Lifecycle of the object, implementing fi.SetLifecycle

func (*VPCDHCPOptionsAssociation) SetName

func (o *VPCDHCPOptionsAssociation) SetName(name string)

SetName sets the Name of the object, implementing fi.SetName

func (*VPCDHCPOptionsAssociation) String

func (o *VPCDHCPOptionsAssociation) String() string

String is the stringer function for the task, producing readable output using fi.TaskAsString

func (*VPCDHCPOptionsAssociation) UnmarshalJSON

func (o *VPCDHCPOptionsAssociation) UnmarshalJSON(data []byte) error

UnmarshalJSON implements conversion to JSON, supporting an alternate specification of the object as a string

Source Files

Jump to

Keyboard shortcuts

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