federatedtypes

package
v1.1.0-alpha.1....-1f45cd0 Latest Latest
Warning

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

Go to latest
Published: Sep 27, 2017 License: Apache-2.0 Imports: 31 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ConfigMapKind           = "configmap"
	ConfigMapControllerName = "configmaps"
)
View Source
const (
	DaemonSetKind           = "daemonset"
	DaemonSetControllerName = "daemonsets"
)
View Source
const (
	DeploymentKind                     = "deployment"
	DeploymentControllerName           = "deployments"
	FedDeploymentPreferencesAnnotation = "federation.kubernetes.io/deployment-preferences"
)
View Source
const (
	HpaKind           = "horizontalpodautoscaler"
	HpaControllerName = "horizontalpodautoscalers"

	// This is a tunable which does not change replica nums
	// on an existing local hpa, before this timeout, if it
	// did scale already (avoids thrashing of replicas around).
	ScaleForbiddenWindow = 2 * time.Minute
)
View Source
const (
	NamespaceKind           = "namespace"
	NamespaceControllerName = "namespaces"
)
View Source
const (
	ReplicaSetKind                     = "replicaset"
	ReplicaSetControllerName           = "replicasets"
	FedReplicaSetPreferencesAnnotation = "federation.kubernetes.io/replica-set-preferences"
)
View Source
const (
	ActionAdd    = "add"
	ActionDelete = "delete"
)
View Source
const (
	SecretKind           = "secret"
	SecretControllerName = "secrets"
)

Variables

This section is empty.

Functions

func FederatedTypes

func FederatedTypes() map[string]FederatedType

FederatedTypes returns a mapping of kind (e.g. "secret") to the type information required to configure its federation.

func ObjectKey

func ObjectKey(adapter FederatedTypeAdapter, obj pkgruntime.Object) string

ObjectKey returns a cluster-unique key for the given object

func RegisterFederatedType

func RegisterFederatedType(kind, controllerName string, requiredResources []schema.GroupVersionResource, factory AdapterFactory)

RegisterFederatedType ensures that configuration for the given kind will be returned by the FederatedTypes method.

func SetAnnotation

func SetAnnotation(adapter FederatedTypeAdapter, obj pkgruntime.Object, key, value string)

SetAnnotation sets the given key and value in the given object's ObjectMeta.Annotations map

Types

type AdapterFactory

type AdapterFactory func(client federationclientset.Interface, config *restclient.Config, adapterSpecificArgs map[string]interface{}) FederatedTypeAdapter

AdapterFactory defines the function signature for factory methods that create instances of FederatedTypeAdapter. Such methods should be registered with RegisterAdapterFactory to ensure the type adapter is discoverable.

type ConfigMapAdapter

type ConfigMapAdapter struct {
	// contains filtered or unexported fields
}

func (*ConfigMapAdapter) ClusterCreate

func (*ConfigMapAdapter) ClusterDelete

func (a *ConfigMapAdapter) ClusterDelete(client kubeclientset.Interface, qualifiedName QualifiedName, options *metav1.DeleteOptions) error

func (*ConfigMapAdapter) ClusterGet

func (a *ConfigMapAdapter) ClusterGet(client kubeclientset.Interface, qualifiedName QualifiedName) (pkgruntime.Object, error)

func (*ConfigMapAdapter) ClusterList

func (a *ConfigMapAdapter) ClusterList(client kubeclientset.Interface, namespace string, options metav1.ListOptions) (pkgruntime.Object, error)

func (*ConfigMapAdapter) ClusterUpdate

func (*ConfigMapAdapter) ClusterWatch

func (a *ConfigMapAdapter) ClusterWatch(client kubeclientset.Interface, namespace string, options metav1.ListOptions) (watch.Interface, error)

func (*ConfigMapAdapter) Copy

func (*ConfigMapAdapter) Equivalent

func (a *ConfigMapAdapter) Equivalent(obj1, obj2 pkgruntime.Object) bool

func (*ConfigMapAdapter) FedCreate

func (*ConfigMapAdapter) FedDelete

func (a *ConfigMapAdapter) FedDelete(qualifiedName QualifiedName, options *metav1.DeleteOptions) error

func (*ConfigMapAdapter) FedGet

func (a *ConfigMapAdapter) FedGet(qualifiedName QualifiedName) (pkgruntime.Object, error)

func (*ConfigMapAdapter) FedList

func (a *ConfigMapAdapter) FedList(namespace string, options metav1.ListOptions) (pkgruntime.Object, error)

func (*ConfigMapAdapter) FedUpdate

func (*ConfigMapAdapter) FedWatch

func (a *ConfigMapAdapter) FedWatch(namespace string, options metav1.ListOptions) (watch.Interface, error)

func (*ConfigMapAdapter) IsExpectedType

func (a *ConfigMapAdapter) IsExpectedType(obj interface{}) bool

func (*ConfigMapAdapter) IsSchedulingAdapter

func (a *ConfigMapAdapter) IsSchedulingAdapter() bool

func (*ConfigMapAdapter) Kind

func (a *ConfigMapAdapter) Kind() string

func (*ConfigMapAdapter) NewTestObject

func (a *ConfigMapAdapter) NewTestObject(namespace string) pkgruntime.Object

func (*ConfigMapAdapter) ObjectMeta

func (a *ConfigMapAdapter) ObjectMeta(obj pkgruntime.Object) *metav1.ObjectMeta

func (*ConfigMapAdapter) ObjectType

func (a *ConfigMapAdapter) ObjectType() pkgruntime.Object

func (*ConfigMapAdapter) QualifiedName

func (a *ConfigMapAdapter) QualifiedName(obj pkgruntime.Object) QualifiedName

type DaemonSetAdapter

type DaemonSetAdapter struct {
	// contains filtered or unexported fields
}

func (*DaemonSetAdapter) ClusterCreate

func (*DaemonSetAdapter) ClusterDelete

func (a *DaemonSetAdapter) ClusterDelete(client kubeclientset.Interface, qualifiedName QualifiedName, options *metav1.DeleteOptions) error

func (*DaemonSetAdapter) ClusterGet

func (a *DaemonSetAdapter) ClusterGet(client kubeclientset.Interface, qualifiedName QualifiedName) (pkgruntime.Object, error)

func (*DaemonSetAdapter) ClusterList

func (a *DaemonSetAdapter) ClusterList(client kubeclientset.Interface, namespace string, options metav1.ListOptions) (pkgruntime.Object, error)

func (*DaemonSetAdapter) ClusterUpdate

func (*DaemonSetAdapter) ClusterWatch

func (a *DaemonSetAdapter) ClusterWatch(client kubeclientset.Interface, namespace string, options metav1.ListOptions) (watch.Interface, error)

func (*DaemonSetAdapter) Copy

func (*DaemonSetAdapter) Equivalent

func (a *DaemonSetAdapter) Equivalent(obj1, obj2 pkgruntime.Object) bool

func (*DaemonSetAdapter) FedCreate

func (*DaemonSetAdapter) FedDelete

func (a *DaemonSetAdapter) FedDelete(qualifiedName QualifiedName, options *metav1.DeleteOptions) error

func (*DaemonSetAdapter) FedGet

func (a *DaemonSetAdapter) FedGet(qualifiedName QualifiedName) (pkgruntime.Object, error)

func (*DaemonSetAdapter) FedList

func (a *DaemonSetAdapter) FedList(namespace string, options metav1.ListOptions) (pkgruntime.Object, error)

func (*DaemonSetAdapter) FedUpdate

func (*DaemonSetAdapter) FedWatch

func (a *DaemonSetAdapter) FedWatch(namespace string, options metav1.ListOptions) (watch.Interface, error)

func (*DaemonSetAdapter) IsExpectedType

func (a *DaemonSetAdapter) IsExpectedType(obj interface{}) bool

func (*DaemonSetAdapter) IsSchedulingAdapter

func (a *DaemonSetAdapter) IsSchedulingAdapter() bool

func (*DaemonSetAdapter) Kind

func (a *DaemonSetAdapter) Kind() string

func (*DaemonSetAdapter) NewTestObject

func (a *DaemonSetAdapter) NewTestObject(namespace string) pkgruntime.Object

func (*DaemonSetAdapter) ObjectMeta

func (a *DaemonSetAdapter) ObjectMeta(obj pkgruntime.Object) *metav1.ObjectMeta

func (*DaemonSetAdapter) ObjectType

func (a *DaemonSetAdapter) ObjectType() pkgruntime.Object

func (*DaemonSetAdapter) QualifiedName

func (a *DaemonSetAdapter) QualifiedName(obj pkgruntime.Object) QualifiedName

type DeploymentAdapter

type DeploymentAdapter struct {
	// contains filtered or unexported fields
}

func (*DeploymentAdapter) ClusterCreate

func (*DeploymentAdapter) ClusterDelete

func (a *DeploymentAdapter) ClusterDelete(client kubeclientset.Interface, qualifiedName QualifiedName, options *metav1.DeleteOptions) error

func (*DeploymentAdapter) ClusterGet

func (a *DeploymentAdapter) ClusterGet(client kubeclientset.Interface, qualifiedName QualifiedName) (pkgruntime.Object, error)

func (*DeploymentAdapter) ClusterList

func (a *DeploymentAdapter) ClusterList(client kubeclientset.Interface, namespace string, options metav1.ListOptions) (pkgruntime.Object, error)

func (*DeploymentAdapter) ClusterUpdate

func (*DeploymentAdapter) ClusterWatch

func (a *DeploymentAdapter) ClusterWatch(client kubeclientset.Interface, namespace string, options metav1.ListOptions) (watch.Interface, error)

func (*DeploymentAdapter) Copy

func (*DeploymentAdapter) Equivalent

func (a *DeploymentAdapter) Equivalent(obj1, obj2 pkgruntime.Object) bool

func (*DeploymentAdapter) EquivalentIgnoringSchedule

func (a *DeploymentAdapter) EquivalentIgnoringSchedule(obj1, obj2 pkgruntime.Object) bool

func (*DeploymentAdapter) FedCreate

func (*DeploymentAdapter) FedDelete

func (a *DeploymentAdapter) FedDelete(qualifiedName QualifiedName, options *metav1.DeleteOptions) error

func (*DeploymentAdapter) FedGet

func (a *DeploymentAdapter) FedGet(qualifiedName QualifiedName) (pkgruntime.Object, error)

func (*DeploymentAdapter) FedList

func (a *DeploymentAdapter) FedList(namespace string, options metav1.ListOptions) (pkgruntime.Object, error)

func (*DeploymentAdapter) FedUpdate

func (*DeploymentAdapter) FedWatch

func (a *DeploymentAdapter) FedWatch(namespace string, options metav1.ListOptions) (watch.Interface, error)

func (DeploymentAdapter) GetSchedule

func (a DeploymentAdapter) GetSchedule(obj pkgruntime.Object, key string, clusters []*federationapi.Cluster, informer fedutil.FederatedInformer) (interface{}, error)

func (*DeploymentAdapter) IsExpectedType

func (a *DeploymentAdapter) IsExpectedType(obj interface{}) bool

func (DeploymentAdapter) IsSchedulingAdapter

func (a DeploymentAdapter) IsSchedulingAdapter() bool

func (*DeploymentAdapter) Kind

func (a *DeploymentAdapter) Kind() string

func (*DeploymentAdapter) NewTestObject

func (a *DeploymentAdapter) NewTestObject(namespace string) pkgruntime.Object

func (*DeploymentAdapter) ObjectMeta

func (a *DeploymentAdapter) ObjectMeta(obj pkgruntime.Object) *metav1.ObjectMeta

func (*DeploymentAdapter) ObjectType

func (a *DeploymentAdapter) ObjectType() pkgruntime.Object

func (*DeploymentAdapter) QualifiedName

func (a *DeploymentAdapter) QualifiedName(obj pkgruntime.Object) QualifiedName

func (DeploymentAdapter) ScheduleObject

func (a DeploymentAdapter) ScheduleObject(cluster *federationapi.Cluster, clusterObj pkgruntime.Object, federationObjCopy pkgruntime.Object, schedulingInfo interface{}) (pkgruntime.Object, ScheduleAction, error)

func (DeploymentAdapter) UpdateFederatedStatus

func (a DeploymentAdapter) UpdateFederatedStatus(obj pkgruntime.Object, schedulingInfo interface{}) error

type FederatedType

type FederatedType struct {
	Kind              string
	ControllerName    string
	RequiredResources []schema.GroupVersionResource
	AdapterFactory    AdapterFactory
}

FederatedType configures federation for a kubernetes type

type FederatedTypeAdapter

type FederatedTypeAdapter interface {
	Kind() string
	ObjectType() pkgruntime.Object
	IsExpectedType(obj interface{}) bool
	Copy(obj pkgruntime.Object) pkgruntime.Object
	Equivalent(obj1, obj2 pkgruntime.Object) bool
	QualifiedName(obj pkgruntime.Object) QualifiedName
	ObjectMeta(obj pkgruntime.Object) *metav1.ObjectMeta

	// Fed* operations target the federation control plane
	FedCreate(obj pkgruntime.Object) (pkgruntime.Object, error)
	FedDelete(qualifiedName QualifiedName, options *metav1.DeleteOptions) error
	FedGet(qualifiedName QualifiedName) (pkgruntime.Object, error)
	FedList(namespace string, options metav1.ListOptions) (pkgruntime.Object, error)
	FedUpdate(obj pkgruntime.Object) (pkgruntime.Object, error)
	FedWatch(namespace string, options metav1.ListOptions) (watch.Interface, error)

	// The following operations are intended to target a cluster that is a member of a federation
	ClusterCreate(client kubeclientset.Interface, obj pkgruntime.Object) (pkgruntime.Object, error)
	ClusterDelete(client kubeclientset.Interface, qualifiedName QualifiedName, options *metav1.DeleteOptions) error
	ClusterGet(client kubeclientset.Interface, qualifiedName QualifiedName) (pkgruntime.Object, error)
	ClusterList(client kubeclientset.Interface, namespace string, options metav1.ListOptions) (pkgruntime.Object, error)
	ClusterUpdate(client kubeclientset.Interface, obj pkgruntime.Object) (pkgruntime.Object, error)
	ClusterWatch(client kubeclientset.Interface, namespace string, options metav1.ListOptions) (watch.Interface, error)

	IsSchedulingAdapter() bool

	NewTestObject(namespace string) pkgruntime.Object
}

FederatedTypeAdapter defines operations for interacting with a federated type. Code written to this interface can then target any type for which an implementation of this interface exists.

func NewConfigMapAdapter

func NewConfigMapAdapter(client federationclientset.Interface, config *restclient.Config, adapterSpecificArgs map[string]interface{}) FederatedTypeAdapter

func NewDaemonSetAdapter

func NewDaemonSetAdapter(client federationclientset.Interface, config *restclient.Config, adapterSpecificArgs map[string]interface{}) FederatedTypeAdapter

func NewDeploymentAdapter

func NewDeploymentAdapter(client federationclientset.Interface, config *restclient.Config, adapterSpecificArgs map[string]interface{}) FederatedTypeAdapter

func NewHpaAdapter

func NewHpaAdapter(client federationclientset.Interface, config *restclient.Config, adapterSpecificArgs map[string]interface{}) FederatedTypeAdapter

func NewNamespaceAdapter

func NewNamespaceAdapter(client federationclientset.Interface, config *restclient.Config, adapterSpecificArgs map[string]interface{}) FederatedTypeAdapter

func NewReplicaSetAdapter

func NewReplicaSetAdapter(client federationclientset.Interface, config *restclient.Config, adapterSpecificArgs map[string]interface{}) FederatedTypeAdapter

func NewSecretAdapter

func NewSecretAdapter(client federationclientset.Interface, config *restclient.Config, adapterSpecificArgs map[string]interface{}) FederatedTypeAdapter

type HpaAdapter

type HpaAdapter struct {
	// contains filtered or unexported fields
}

func (*HpaAdapter) ClusterCreate

func (a *HpaAdapter) ClusterCreate(client kubeclientset.Interface, obj pkgruntime.Object) (pkgruntime.Object, error)

func (*HpaAdapter) ClusterDelete

func (a *HpaAdapter) ClusterDelete(client kubeclientset.Interface, qualifiedName QualifiedName, options *metav1.DeleteOptions) error

func (*HpaAdapter) ClusterGet

func (a *HpaAdapter) ClusterGet(client kubeclientset.Interface, qualifiedName QualifiedName) (pkgruntime.Object, error)

func (*HpaAdapter) ClusterList

func (a *HpaAdapter) ClusterList(client kubeclientset.Interface, namespace string, options metav1.ListOptions) (pkgruntime.Object, error)

func (*HpaAdapter) ClusterUpdate

func (a *HpaAdapter) ClusterUpdate(client kubeclientset.Interface, obj pkgruntime.Object) (pkgruntime.Object, error)

func (*HpaAdapter) ClusterWatch

func (a *HpaAdapter) ClusterWatch(client kubeclientset.Interface, namespace string, options metav1.ListOptions) (watch.Interface, error)

func (*HpaAdapter) Copy

func (*HpaAdapter) Equivalent

func (a *HpaAdapter) Equivalent(obj1, obj2 pkgruntime.Object) bool

func (*HpaAdapter) EquivalentIgnoringSchedule

func (a *HpaAdapter) EquivalentIgnoringSchedule(obj1, obj2 pkgruntime.Object) bool

func (*HpaAdapter) FedCreate

func (a *HpaAdapter) FedCreate(obj pkgruntime.Object) (pkgruntime.Object, error)

func (*HpaAdapter) FedDelete

func (a *HpaAdapter) FedDelete(qualifiedName QualifiedName, options *metav1.DeleteOptions) error

func (*HpaAdapter) FedGet

func (a *HpaAdapter) FedGet(qualifiedName QualifiedName) (pkgruntime.Object, error)

func (*HpaAdapter) FedList

func (a *HpaAdapter) FedList(namespace string, options metav1.ListOptions) (pkgruntime.Object, error)

func (*HpaAdapter) FedUpdate

func (a *HpaAdapter) FedUpdate(obj pkgruntime.Object) (pkgruntime.Object, error)

func (*HpaAdapter) FedWatch

func (a *HpaAdapter) FedWatch(namespace string, options metav1.ListOptions) (watch.Interface, error)

func (*HpaAdapter) GetSchedule

func (a *HpaAdapter) GetSchedule(obj pkgruntime.Object, key string, clusters []*federationapi.Cluster, informer fedutil.FederatedInformer) (interface{}, error)

func (*HpaAdapter) IsExpectedType

func (a *HpaAdapter) IsExpectedType(obj interface{}) bool

func (*HpaAdapter) IsSchedulingAdapter

func (a *HpaAdapter) IsSchedulingAdapter() bool

func (*HpaAdapter) Kind

func (a *HpaAdapter) Kind() string

func (*HpaAdapter) NewTestObject

func (a *HpaAdapter) NewTestObject(namespace string) pkgruntime.Object

func (*HpaAdapter) ObjectMeta

func (a *HpaAdapter) ObjectMeta(obj pkgruntime.Object) *metav1.ObjectMeta

func (*HpaAdapter) ObjectType

func (a *HpaAdapter) ObjectType() pkgruntime.Object

func (*HpaAdapter) QualifiedName

func (a *HpaAdapter) QualifiedName(obj pkgruntime.Object) QualifiedName

func (*HpaAdapter) ScheduleObject

func (a *HpaAdapter) ScheduleObject(cluster *federationapi.Cluster, clusterObj pkgruntime.Object, federationObjCopy pkgruntime.Object, schedulingInfo interface{}) (pkgruntime.Object, ScheduleAction, error)

func (*HpaAdapter) UpdateFederatedStatus

func (a *HpaAdapter) UpdateFederatedStatus(obj pkgruntime.Object, schedulingInfo interface{}) error

type NamespaceAdapter

type NamespaceAdapter struct {
	// contains filtered or unexported fields
}

func (*NamespaceAdapter) CleanUpNamespace

func (a *NamespaceAdapter) CleanUpNamespace(obj pkgruntime.Object, eventRecorder record.EventRecorder) (pkgruntime.Object, error)

CleanUpNamespace deletes all resources in a given namespace.

func (*NamespaceAdapter) ClusterCreate

func (*NamespaceAdapter) ClusterDelete

func (a *NamespaceAdapter) ClusterDelete(client kubeclientset.Interface, qualifiedName QualifiedName, options *metav1.DeleteOptions) error

func (*NamespaceAdapter) ClusterGet

func (a *NamespaceAdapter) ClusterGet(client kubeclientset.Interface, qualifiedName QualifiedName) (pkgruntime.Object, error)

func (*NamespaceAdapter) ClusterList

func (a *NamespaceAdapter) ClusterList(client kubeclientset.Interface, namespace string, options metav1.ListOptions) (pkgruntime.Object, error)

func (*NamespaceAdapter) ClusterUpdate

func (*NamespaceAdapter) ClusterWatch

func (a *NamespaceAdapter) ClusterWatch(client kubeclientset.Interface, namespace string, options metav1.ListOptions) (watch.Interface, error)

func (*NamespaceAdapter) Copy

func (*NamespaceAdapter) Equivalent

func (a *NamespaceAdapter) Equivalent(obj1, obj2 pkgruntime.Object) bool

func (*NamespaceAdapter) FedCreate

func (*NamespaceAdapter) FedDelete

func (a *NamespaceAdapter) FedDelete(qualifiedName QualifiedName, options *metav1.DeleteOptions) error

func (*NamespaceAdapter) FedGet

func (a *NamespaceAdapter) FedGet(qualifiedName QualifiedName) (pkgruntime.Object, error)

func (*NamespaceAdapter) FedList

func (a *NamespaceAdapter) FedList(namespace string, options metav1.ListOptions) (pkgruntime.Object, error)

func (*NamespaceAdapter) FedUpdate

func (*NamespaceAdapter) FedWatch

func (a *NamespaceAdapter) FedWatch(namespace string, options metav1.ListOptions) (watch.Interface, error)

func (*NamespaceAdapter) IsExpectedType

func (a *NamespaceAdapter) IsExpectedType(obj interface{}) bool

func (*NamespaceAdapter) IsSchedulingAdapter

func (a *NamespaceAdapter) IsSchedulingAdapter() bool

func (*NamespaceAdapter) Kind

func (a *NamespaceAdapter) Kind() string

func (*NamespaceAdapter) NewTestObject

func (a *NamespaceAdapter) NewTestObject(namespace string) pkgruntime.Object

func (*NamespaceAdapter) ObjectMeta

func (a *NamespaceAdapter) ObjectMeta(obj pkgruntime.Object) *metav1.ObjectMeta

func (*NamespaceAdapter) ObjectType

func (a *NamespaceAdapter) ObjectType() pkgruntime.Object

func (*NamespaceAdapter) QualifiedName

func (a *NamespaceAdapter) QualifiedName(obj pkgruntime.Object) QualifiedName

type QualifiedName

type QualifiedName struct {
	Namespace string
	Name      string
}

func (QualifiedName) String

func (n QualifiedName) String() string

String returns the general purpose string representation

type ReplicaScheduleState

type ReplicaScheduleState struct {
	// contains filtered or unexported fields
}

ReplicaScheduleState is the result of adapter specific schedule() function, which is then used to update objects into clusters.

type ReplicaSchedulingInfo

type ReplicaSchedulingInfo struct {
	ScheduleState map[string]*ReplicaScheduleState
	Status        ReplicaStatus
}

ReplicaSchedulingInfo wraps the information that a replica type (rs or deployment) SchedulingAdapter needs to update objects per a schedule.

type ReplicaSetAdapter

type ReplicaSetAdapter struct {
	// contains filtered or unexported fields
}

func (*ReplicaSetAdapter) ClusterCreate

func (*ReplicaSetAdapter) ClusterDelete

func (a *ReplicaSetAdapter) ClusterDelete(client kubeclientset.Interface, qualifiedName QualifiedName, options *metav1.DeleteOptions) error

func (*ReplicaSetAdapter) ClusterGet

func (a *ReplicaSetAdapter) ClusterGet(client kubeclientset.Interface, qualifiedName QualifiedName) (pkgruntime.Object, error)

func (*ReplicaSetAdapter) ClusterList

func (a *ReplicaSetAdapter) ClusterList(client kubeclientset.Interface, namespace string, options metav1.ListOptions) (pkgruntime.Object, error)

func (*ReplicaSetAdapter) ClusterUpdate

func (*ReplicaSetAdapter) ClusterWatch

func (a *ReplicaSetAdapter) ClusterWatch(client kubeclientset.Interface, namespace string, options metav1.ListOptions) (watch.Interface, error)

func (*ReplicaSetAdapter) Copy

func (*ReplicaSetAdapter) Equivalent

func (a *ReplicaSetAdapter) Equivalent(obj1, obj2 pkgruntime.Object) bool

func (*ReplicaSetAdapter) EquivalentIgnoringSchedule

func (a *ReplicaSetAdapter) EquivalentIgnoringSchedule(obj1, obj2 pkgruntime.Object) bool

func (*ReplicaSetAdapter) FedCreate

func (*ReplicaSetAdapter) FedDelete

func (a *ReplicaSetAdapter) FedDelete(qualifiedName QualifiedName, options *metav1.DeleteOptions) error

func (*ReplicaSetAdapter) FedGet

func (a *ReplicaSetAdapter) FedGet(qualifiedName QualifiedName) (pkgruntime.Object, error)

func (*ReplicaSetAdapter) FedList

func (a *ReplicaSetAdapter) FedList(namespace string, options metav1.ListOptions) (pkgruntime.Object, error)

func (*ReplicaSetAdapter) FedUpdate

func (*ReplicaSetAdapter) FedWatch

func (a *ReplicaSetAdapter) FedWatch(namespace string, options metav1.ListOptions) (watch.Interface, error)

func (ReplicaSetAdapter) GetSchedule

func (a ReplicaSetAdapter) GetSchedule(obj pkgruntime.Object, key string, clusters []*federationapi.Cluster, informer fedutil.FederatedInformer) (interface{}, error)

func (*ReplicaSetAdapter) IsExpectedType

func (a *ReplicaSetAdapter) IsExpectedType(obj interface{}) bool

func (ReplicaSetAdapter) IsSchedulingAdapter

func (a ReplicaSetAdapter) IsSchedulingAdapter() bool

func (*ReplicaSetAdapter) Kind

func (a *ReplicaSetAdapter) Kind() string

func (*ReplicaSetAdapter) NewTestObject

func (a *ReplicaSetAdapter) NewTestObject(namespace string) pkgruntime.Object

func (*ReplicaSetAdapter) ObjectMeta

func (a *ReplicaSetAdapter) ObjectMeta(obj pkgruntime.Object) *metav1.ObjectMeta

func (*ReplicaSetAdapter) ObjectType

func (a *ReplicaSetAdapter) ObjectType() pkgruntime.Object

func (*ReplicaSetAdapter) QualifiedName

func (a *ReplicaSetAdapter) QualifiedName(obj pkgruntime.Object) QualifiedName

func (ReplicaSetAdapter) ScheduleObject

func (a ReplicaSetAdapter) ScheduleObject(cluster *federationapi.Cluster, clusterObj pkgruntime.Object, federationObjCopy pkgruntime.Object, schedulingInfo interface{}) (pkgruntime.Object, ScheduleAction, error)

func (ReplicaSetAdapter) UpdateFederatedStatus

func (a ReplicaSetAdapter) UpdateFederatedStatus(obj pkgruntime.Object, schedulingInfo interface{}) error

type ReplicaStatus

type ReplicaStatus struct {
	Replicas             int32
	UpdatedReplicas      int32
	FullyLabeledReplicas int32
	ReadyReplicas        int32
	AvailableReplicas    int32
}

ReplicaStatus contains the details of status fields from the cluster objects, which need accumulation to update the status of the federated object.

type ScheduleAction

type ScheduleAction string

ScheduleAction is used by the interface ScheduleObject of SchedulingAdapter to sync controller reconcile to convey the action type needed for the particular cluster local object in ScheduleObject

type SchedulingAdapter

type SchedulingAdapter interface {
	GetSchedule(obj pkgruntime.Object, key string, clusters []*federationapi.Cluster, informer fedutil.FederatedInformer) (interface{}, error)
	ScheduleObject(cluster *federationapi.Cluster, clusterObj pkgruntime.Object, federationObjCopy pkgruntime.Object, schedulingInfo interface{}) (pkgruntime.Object, ScheduleAction, error)
	UpdateFederatedStatus(obj pkgruntime.Object, schedulingInfo interface{}) error

	// EquivalentIgnoringSchedule returns whether obj1 and obj2 are
	// equivalent ignoring differences due to scheduling.
	EquivalentIgnoringSchedule(obj1, obj2 pkgruntime.Object) bool
}

SchedulingAdapter defines operations for interacting with a federated type that requires more complex synchronization logic.

type SecretAdapter

type SecretAdapter struct {
	// contains filtered or unexported fields
}

func (*SecretAdapter) ClusterCreate

func (a *SecretAdapter) ClusterCreate(client kubeclientset.Interface, obj pkgruntime.Object) (pkgruntime.Object, error)

func (*SecretAdapter) ClusterDelete

func (a *SecretAdapter) ClusterDelete(client kubeclientset.Interface, qualifiedName QualifiedName, options *metav1.DeleteOptions) error

func (*SecretAdapter) ClusterGet

func (a *SecretAdapter) ClusterGet(client kubeclientset.Interface, qualifiedName QualifiedName) (pkgruntime.Object, error)

func (*SecretAdapter) ClusterList

func (a *SecretAdapter) ClusterList(client kubeclientset.Interface, namespace string, options metav1.ListOptions) (pkgruntime.Object, error)

func (*SecretAdapter) ClusterUpdate

func (a *SecretAdapter) ClusterUpdate(client kubeclientset.Interface, obj pkgruntime.Object) (pkgruntime.Object, error)

func (*SecretAdapter) ClusterWatch

func (a *SecretAdapter) ClusterWatch(client kubeclientset.Interface, namespace string, options metav1.ListOptions) (watch.Interface, error)

func (*SecretAdapter) Copy

func (*SecretAdapter) Equivalent

func (a *SecretAdapter) Equivalent(obj1, obj2 pkgruntime.Object) bool

func (*SecretAdapter) FedCreate

func (a *SecretAdapter) FedCreate(obj pkgruntime.Object) (pkgruntime.Object, error)

func (*SecretAdapter) FedDelete

func (a *SecretAdapter) FedDelete(qualifiedName QualifiedName, options *metav1.DeleteOptions) error

func (*SecretAdapter) FedGet

func (a *SecretAdapter) FedGet(qualifiedName QualifiedName) (pkgruntime.Object, error)

func (*SecretAdapter) FedList

func (a *SecretAdapter) FedList(namespace string, options metav1.ListOptions) (pkgruntime.Object, error)

func (*SecretAdapter) FedUpdate

func (a *SecretAdapter) FedUpdate(obj pkgruntime.Object) (pkgruntime.Object, error)

func (*SecretAdapter) FedWatch

func (a *SecretAdapter) FedWatch(namespace string, options metav1.ListOptions) (watch.Interface, error)

func (*SecretAdapter) IsExpectedType

func (a *SecretAdapter) IsExpectedType(obj interface{}) bool

func (*SecretAdapter) IsSchedulingAdapter

func (a *SecretAdapter) IsSchedulingAdapter() bool

func (*SecretAdapter) Kind

func (a *SecretAdapter) Kind() string

func (*SecretAdapter) NewTestObject

func (a *SecretAdapter) NewTestObject(namespace string) pkgruntime.Object

func (*SecretAdapter) ObjectMeta

func (a *SecretAdapter) ObjectMeta(obj pkgruntime.Object) *metav1.ObjectMeta

func (*SecretAdapter) ObjectType

func (a *SecretAdapter) ObjectType() pkgruntime.Object

func (*SecretAdapter) QualifiedName

func (a *SecretAdapter) QualifiedName(obj pkgruntime.Object) QualifiedName

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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