controllercontext

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Jul 22, 2019 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func IsNotFound

func IsNotFound(err error) bool

IsNotFound asserts notFoundError.

func NewContext

func NewContext(ctx context.Context, c Context) context.Context

Types

type Context

type Context struct {
	// Client holds the client implementations used for several tenant cluster
	// specific actions.
	Client ContextClient

	// Spec holds the desired state we compute in a resource and then keep
	// inside the context to be used in a different resource.
	Spec ContextSpec

	// Status holds the data used to communicate between controller's
	// resources. It can be edited in place as Context is stored as
	// a pointer within context.Context. The content of the status should
	// reflect the current state.
	Status ContextStatus
}

func FromContext

func FromContext(ctx context.Context) (*Context, error)

type ContextClient

type ContextClient struct {
	ControlPlane  ContextClientControlPlane
	TenantCluster ContextClientTenantCluster
}

type ContextClientControlPlane

type ContextClientControlPlane struct {
	AWS aws.Clients
}

type ContextClientTenantCluster

type ContextClientTenantCluster struct {
	AWS aws.Clients
}

type ContextSpec

type ContextSpec struct {
	TenantCluster ContextSpecTenantCluster
}

type ContextSpecTenantCluster

type ContextSpecTenantCluster struct {
	TCCP ContextSpecTenantClusterTCCP
	TCNP ContextSpecTenantClusterTCNP
}

type ContextSpecTenantClusterTCCP

type ContextSpecTenantClusterTCCP struct {
	AvailabilityZones []ContextTenantClusterAvailabilityZone
}

type ContextSpecTenantClusterTCNP

type ContextSpecTenantClusterTCNP struct {
	AvailabilityZones []ContextSpecTenantClusterTCNPAvailabilityZone
}

type ContextSpecTenantClusterTCNPAvailabilityZone

type ContextSpecTenantClusterTCNPAvailabilityZone struct {
	AvailabilityZone string
	PrivateSubnet    net.IPNet
}

type ContextStatus

type ContextStatus struct {
	ControlPlane  ContextStatusControlPlane
	TenantCluster ContextStatusTenantCluster
}

type ContextStatusControlPlaneNATGateway

type ContextStatusControlPlaneNATGateway struct {
	Addresses []*ec2.Address
}

type ContextStatusControlPlanePeerRole

type ContextStatusControlPlanePeerRole struct {
	ARN string
}

type ContextStatusControlPlaneRouteTable

type ContextStatusControlPlaneRouteTable struct {
	// Mappings are key value pairs of control plane route table names and their
	// IDs, where the map keys are route table names and the map values are route
	// table IDs. The mapping is managed by the routetable resource.
	Mappings map[string]string
}

type ContextStatusControlPlaneVPC

type ContextStatusControlPlaneVPC struct {
	CIDR string
}

type ContextStatusTenantCluster

type ContextStatusTenantCluster struct {
	AWS                   ContextStatusTenantClusterAWS
	Encryption            ContextStatusTenantClusterEncryption
	HostedZoneNameServers string
	MasterInstance        ContextStatusTenantClusterMasterInstance
	TCCP                  ContextStatusTenantClusterTCCP
	VersionBundleVersion  string
	WorkerInstance        ContextStatusTenantClusterWorkerInstance
}

type ContextStatusTenantClusterAWS

type ContextStatusTenantClusterAWS struct {
	AccountID string
	Region    string
}

type ContextStatusTenantClusterEncryption

type ContextStatusTenantClusterEncryption struct {
	Key string
}

type ContextStatusTenantClusterMasterInstance

type ContextStatusTenantClusterMasterInstance struct {
	DockerVolumeResourceName string
	Image                    string
	ResourceName             string
	Type                     string
}

type ContextStatusTenantClusterTCCP

type ContextStatusTenantClusterTCCP struct {
	ASG               ContextStatusTenantClusterTCCPASG
	AvailabilityZones []ContextTenantClusterAvailabilityZone
	IsTransitioning   bool
	MachineDeployment v1alpha1.MachineDeployment
	RouteTables       []*ec2.RouteTable
	Subnets           []*ec2.Subnet
	VPC               ContextStatusTenantClusterTCCPVPC
}

type ContextStatusTenantClusterTCCPASG

type ContextStatusTenantClusterTCCPASG struct {
	DesiredCapacity int
	MaxSize         int
	MinSize         int
	Name            string
}

func (ContextStatusTenantClusterTCCPASG) IsEmpty

type ContextStatusTenantClusterTCCPVPC

type ContextStatusTenantClusterTCCPVPC struct {
	ID                  string
	PeeringConnectionID string
}

type ContextStatusTenantClusterWorkerInstance

type ContextStatusTenantClusterWorkerInstance struct {
	DockerVolumeSizeGB string
	Image              string
	Type               string
}

type ContextTenantClusterAvailabilityZone

type ContextTenantClusterAvailabilityZone struct {
	Name          string
	PrivateSubnet net.IPNet
	PublicSubnet  net.IPNet
}

Jump to

Keyboard shortcuts

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