Documentation ¶
Overview ¶
Package fake is a test-double implementation of cloudprovider Interface, LoadBalancer and Instances. It is useful for testing.
Index ¶
- type FakeBalancer
- type FakeCloud
- func (f *FakeCloud) AddSSHKeyToAllInstances(user string, keyData []byte) error
- func (f *FakeCloud) ClearCalls()
- func (f *FakeCloud) Clusters() (cloudprovider.Clusters, bool)
- func (f *FakeCloud) CreateRoute(clusterName string, nameHint string, route *cloudprovider.Route) error
- func (f *FakeCloud) CurrentNodeName(hostname string) (types.NodeName, error)
- func (f *FakeCloud) DeleteRoute(clusterName string, route *cloudprovider.Route) error
- func (f *FakeCloud) EnsureLoadBalancer(clusterName string, service *v1.Service, nodes []*v1.Node) (*v1.LoadBalancerStatus, error)
- func (f *FakeCloud) EnsureLoadBalancerDeleted(clusterName string, service *v1.Service) error
- func (f *FakeCloud) ExternalID(nodeName types.NodeName) (string, error)
- func (c *FakeCloud) GetLabelsForVolume(pv *v1.PersistentVolume) (map[string]string, error)
- func (f *FakeCloud) GetLoadBalancer(clusterName string, service *v1.Service) (*v1.LoadBalancerStatus, bool, error)
- func (f *FakeCloud) GetZone() (cloudprovider.Zone, error)
- func (f *FakeCloud) GetZoneByNodeName(nodeName types.NodeName) (cloudprovider.Zone, error)
- func (f *FakeCloud) GetZoneByProviderID(providerID string) (cloudprovider.Zone, error)
- func (f *FakeCloud) HasClusterID() bool
- func (f *FakeCloud) Initialize(clientBuilder controller.ControllerClientBuilder)
- func (f *FakeCloud) InstanceExistsByProviderID(providerID string) (bool, error)
- func (f *FakeCloud) InstanceID(nodeName types.NodeName) (string, error)
- func (f *FakeCloud) InstanceType(instance types.NodeName) (string, error)
- func (f *FakeCloud) InstanceTypeByProviderID(providerID string) (string, error)
- func (f *FakeCloud) Instances() (cloudprovider.Instances, bool)
- func (f *FakeCloud) List(filter string) ([]types.NodeName, error)
- func (f *FakeCloud) ListClusters() ([]string, error)
- func (f *FakeCloud) ListRoutes(clusterName string) ([]*cloudprovider.Route, error)
- func (f *FakeCloud) LoadBalancer() (cloudprovider.LoadBalancer, bool)
- func (f *FakeCloud) Master(name string) (string, error)
- func (f *FakeCloud) NodeAddresses(instance types.NodeName) ([]v1.NodeAddress, error)
- func (f *FakeCloud) NodeAddressesByProviderID(providerID string) ([]v1.NodeAddress, error)
- func (f *FakeCloud) ProviderName() string
- func (f *FakeCloud) Routes() (cloudprovider.Routes, bool)
- func (f *FakeCloud) ScrubDNS(nameservers, searches []string) (nsOut, srchOut []string)
- func (f *FakeCloud) UpdateLoadBalancer(clusterName string, service *v1.Service, nodes []*v1.Node) error
- func (f *FakeCloud) Zones() (cloudprovider.Zones, bool)
- type FakeRoute
- type FakeUpdateBalancerCall
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type FakeBalancer ¶
type FakeBalancer struct { Name string Region string LoadBalancerIP string Ports []v1.ServicePort Hosts []*v1.Node }
FakeBalancer is a fake storage of balancer information
type FakeCloud ¶
type FakeCloud struct { Exists bool Err error ExistsByProviderID bool ErrByProviderID error Calls []string Addresses []v1.NodeAddress ExtID map[types.NodeName]string InstanceTypes map[types.NodeName]string Machines []types.NodeName NodeResources *v1.NodeResources ClusterList []string MasterName string ExternalIP net.IP Balancers map[string]FakeBalancer UpdateCalls []FakeUpdateBalancerCall RouteMap map[string]*FakeRoute Lock sync.Mutex Provider string cloudprovider.Zone VolumeLabelMap map[string]map[string]string // contains filtered or unexported fields }
FakeCloud is a test-double implementation of Interface, LoadBalancer, Instances, and Routes. It is useful for testing.
func (*FakeCloud) AddSSHKeyToAllInstances ¶
func (*FakeCloud) ClearCalls ¶
func (f *FakeCloud) ClearCalls()
ClearCalls clears internal record of method calls to this FakeCloud.
func (*FakeCloud) CreateRoute ¶
func (*FakeCloud) CurrentNodeName ¶
Implementation of Instances.CurrentNodeName
func (*FakeCloud) DeleteRoute ¶
func (f *FakeCloud) DeleteRoute(clusterName string, route *cloudprovider.Route) error
func (*FakeCloud) EnsureLoadBalancer ¶ added in v1.2.0
func (f *FakeCloud) EnsureLoadBalancer(clusterName string, service *v1.Service, nodes []*v1.Node) (*v1.LoadBalancerStatus, error)
EnsureLoadBalancer is a test-spy implementation of LoadBalancer.EnsureLoadBalancer. It adds an entry "create" into the internal method call record.
func (*FakeCloud) EnsureLoadBalancerDeleted ¶ added in v1.2.0
EnsureLoadBalancerDeleted is a test-spy implementation of LoadBalancer.EnsureLoadBalancerDeleted. It adds an entry "delete" into the internal method call record.
func (*FakeCloud) ExternalID ¶
ExternalID is a test-spy implementation of Instances.ExternalID. It adds an entry "external-id" into the internal method call record. It returns an external id to the mapped instance name, if not found, it will return "ext-{instance}"
func (*FakeCloud) GetLabelsForVolume ¶ added in v1.8.1
func (*FakeCloud) GetLoadBalancer ¶ added in v1.2.0
func (f *FakeCloud) GetLoadBalancer(clusterName string, service *v1.Service) (*v1.LoadBalancerStatus, bool, error)
GetLoadBalancer is a stub implementation of LoadBalancer.GetLoadBalancer.
func (*FakeCloud) GetZoneByNodeName ¶ added in v1.8.1
GetZoneByNodeName implements Zones.GetZoneByNodeName This is particularly useful in external cloud providers where the kubelet does not initialize node data.
func (*FakeCloud) GetZoneByProviderID ¶ added in v1.8.1
func (f *FakeCloud) GetZoneByProviderID(providerID string) (cloudprovider.Zone, error)
GetZoneByProviderID implements Zones.GetZoneByProviderID This is particularly useful in external cloud providers where the kubelet does not initialize node data.
func (*FakeCloud) HasClusterID ¶ added in v1.8.1
HasClusterID returns true if the cluster has a clusterID
func (*FakeCloud) Initialize ¶ added in v1.7.1
func (f *FakeCloud) Initialize(clientBuilder controller.ControllerClientBuilder)
Initialize passes a Kubernetes clientBuilder interface to the cloud provider
func (*FakeCloud) InstanceExistsByProviderID ¶ added in v1.8.1
InstanceExistsByProviderID returns true if the instance with the given provider id still exists and is running. If false is returned with no error, the instance will be immediately deleted by the cloud controller manager.
func (*FakeCloud) InstanceID ¶
InstanceID returns the cloud provider ID of the node with the specified Name.
func (*FakeCloud) InstanceType ¶ added in v1.2.0
InstanceType returns the type of the specified instance.
func (*FakeCloud) InstanceTypeByProviderID ¶ added in v1.7.1
InstanceTypeByProviderID returns the type of the specified instance.
func (*FakeCloud) Instances ¶
func (f *FakeCloud) Instances() (cloudprovider.Instances, bool)
Instances returns a fake implementation of Instances.
Actually it just returns f itself.
func (*FakeCloud) List ¶
List is a test-spy implementation of Instances.List. It adds an entry "list" into the internal method call record.
func (*FakeCloud) ListClusters ¶
func (*FakeCloud) ListRoutes ¶
func (f *FakeCloud) ListRoutes(clusterName string) ([]*cloudprovider.Route, error)
func (*FakeCloud) LoadBalancer ¶ added in v1.2.0
func (f *FakeCloud) LoadBalancer() (cloudprovider.LoadBalancer, bool)
LoadBalancer returns a fake implementation of LoadBalancer. Actually it just returns f itself.
func (*FakeCloud) NodeAddresses ¶
NodeAddresses is a test-spy implementation of Instances.NodeAddresses. It adds an entry "node-addresses" into the internal method call record.
func (*FakeCloud) NodeAddressesByProviderID ¶ added in v1.7.1
func (f *FakeCloud) NodeAddressesByProviderID(providerID string) ([]v1.NodeAddress, error)
NodeAddressesByProviderID is a test-spy implementation of Instances.NodeAddressesByProviderID. It adds an entry "node-addresses-by-provider-id" into the internal method call record.
func (*FakeCloud) ProviderName ¶
ProviderName returns the cloud provider ID.
func (*FakeCloud) UpdateLoadBalancer ¶ added in v1.2.0
func (f *FakeCloud) UpdateLoadBalancer(clusterName string, service *v1.Service, nodes []*v1.Node) error
UpdateLoadBalancer is a test-spy implementation of LoadBalancer.UpdateLoadBalancer. It adds an entry "update" into the internal method call record.
type FakeRoute ¶
type FakeRoute struct { ClusterName string Route cloudprovider.Route }