aws

package
v0.0.1 Latest Latest
Warning

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

Go to latest
Published: Oct 25, 2015 License: Apache-2.0 Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func FilterRouteTables

func FilterRouteTables(f RouteTableFilter, tables []*ec2.RouteTable) []*ec2.RouteTable

func RouteTableForSubnet

func RouteTableForSubnet(subnet string, tables []*ec2.RouteTable) *ec2.RouteTable

Types

type ManageRoutesSpec

type ManageRoutesSpec struct {
	Cidr            string `yaml:"cidr"`
	Instance        string `yaml:"instance"`
	InstanceIsSelf  bool   `yaml:"-"`
	HealthcheckName string `yaml:"healthcheck"`

	IfUnhealthy bool `yaml:"if_unhealthy"`

	Manager RouteTableManager `yaml:"-"`
	// contains filtered or unexported fields
}

func (*ManageRoutesSpec) Default

func (r *ManageRoutesSpec) Default(instance string)

func (*ManageRoutesSpec) StartHealthcheckListener

func (r *ManageRoutesSpec) StartHealthcheckListener(noop bool)

func (*ManageRoutesSpec) UpdateEc2RouteTables

func (r *ManageRoutesSpec) UpdateEc2RouteTables(rt []*ec2.RouteTable)

func (*ManageRoutesSpec) Validate

func (r *ManageRoutesSpec) Validate(name string, healthchecks map[string]*healthcheck.Healthcheck) error

type MetadataFetcher

type MetadataFetcher interface {
	Available() bool
	GetMetadata(string) (string, error)
}

func NewMetadataFetcher

func NewMetadataFetcher(debug bool) MetadataFetcher

type MyEC2Conn

type MyEC2Conn interface {
	CreateRoute(*ec2.CreateRouteInput) (*ec2.CreateRouteOutput, error)
	ReplaceRoute(*ec2.ReplaceRouteInput) (*ec2.ReplaceRouteOutput, error)
	DescribeRouteTables(*ec2.DescribeRouteTablesInput) (*ec2.DescribeRouteTablesOutput, error)
	DeleteRoute(*ec2.DeleteRouteInput) (*ec2.DeleteRouteOutput, error)
}

type RouteTableFilter

type RouteTableFilter interface {
	Keep(*ec2.RouteTable) bool
}

type RouteTableFilterAlways

type RouteTableFilterAlways struct{}

func (RouteTableFilterAlways) Keep

type RouteTableFilterAnd

type RouteTableFilterAnd struct {
	RouteTableFilters []RouteTableFilter
}

func (RouteTableFilterAnd) Keep

func (fs RouteTableFilterAnd) Keep(rt *ec2.RouteTable) bool

type RouteTableFilterDestinationCidrBlock

type RouteTableFilterDestinationCidrBlock struct {
	DestinationCidrBlock string
	ViaIGW               bool
	ViaInstance          bool
	InstanceNotActive    bool
}

func (RouteTableFilterDestinationCidrBlock) Keep

type RouteTableFilterMain

type RouteTableFilterMain struct{}

func (RouteTableFilterMain) Keep

func (fs RouteTableFilterMain) Keep(rt *ec2.RouteTable) bool

type RouteTableFilterNever

type RouteTableFilterNever struct{}

func (RouteTableFilterNever) Keep

type RouteTableFilterOr

type RouteTableFilterOr struct {
	RouteTableFilters []RouteTableFilter
}

func (RouteTableFilterOr) Keep

func (fs RouteTableFilterOr) Keep(rt *ec2.RouteTable) bool

type RouteTableFilterSubnet

type RouteTableFilterSubnet struct {
	SubnetId string
}

func (RouteTableFilterSubnet) Keep

type RouteTableFilterTagMatch

type RouteTableFilterTagMatch struct {
	Key   string
	Value string
}

func (RouteTableFilterTagMatch) Keep

type RouteTableManager

type RouteTableManager interface {
	GetRouteTables() ([]*ec2.RouteTable, error)
	ManageInstanceRoute(ec2.RouteTable, ManageRoutesSpec, bool) error
}

func NewRouteTableManager

func NewRouteTableManager(region string, debug bool) RouteTableManager

type RouteTableManagerEC2

type RouteTableManagerEC2 struct {
	Region string
	// contains filtered or unexported fields
}

func (RouteTableManagerEC2) DeleteInstanceRoute

func (r RouteTableManagerEC2) DeleteInstanceRoute(routeTableId *string, route *ec2.Route, cidr string, instance string, noop bool) error

func (RouteTableManagerEC2) GetRouteTables

func (r RouteTableManagerEC2) GetRouteTables() ([]*ec2.RouteTable, error)

func (RouteTableManagerEC2) ManageInstanceRoute

func (r RouteTableManagerEC2) ManageInstanceRoute(rtb ec2.RouteTable, rs ManageRoutesSpec, noop bool) error

func (RouteTableManagerEC2) ReplaceInstanceRoute

func (r RouteTableManagerEC2) ReplaceInstanceRoute(routeTableId *string, route *ec2.Route, cidr string, instance string, ifUnhealthy bool, noop bool) error

Jump to

Keyboard shortcuts

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