v1alpha1

package
Version: v0.0.10 Latest Latest
Warning

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

Go to latest
Published: May 6, 2019 License: Apache-2.0 Imports: 9 Imported by: 78

Documentation

Overview

Package v1alpha1 contains API Schema definitions for the core v1alpha1 API group +k8s:openapi-gen=true +k8s:deepcopy-gen=package,register +k8s:conversion-gen=github.com/kubernetes-sigs/federation-v2/pkg/apis/core +k8s:defaulter-gen=TypeMeta +groupName=core.federation.k8s.io

Package v1alpha1 contains API Schema definitions for the core v1alpha1 API group +k8s:openapi-gen=true +k8s:deepcopy-gen=package,register +k8s:conversion-gen=github.com/kubernetes-sigs/federation-v2/pkg/apis/core +k8s:defaulter-gen=TypeMeta +groupName=core.federation.k8s.io

Index

Constants

This section is empty.

Variables

View Source
var (
	// SchemeGroupVersion is group version used to register these objects
	SchemeGroupVersion = schema.GroupVersion{Group: "core.federation.k8s.io", Version: "v1alpha1"}

	// SchemeBuilder is used to add go types to the GroupVersionKind scheme
	SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion}

	// AddToScheme is required by pkg/client/...
	AddToScheme = SchemeBuilder.AddToScheme
)

Functions

func PluralName added in v0.0.2

func PluralName(kind string) string

PluralName computes the plural name from the kind by lowercasing and suffixing with 's' or `es`.

func Resource

func Resource(resource string) schema.GroupResource

Resource is required by pkg/client/listers/...

func SetFederatedTypeConfigDefaults

func SetFederatedTypeConfigDefaults(obj *FederatedTypeConfig)

Types

type APIResource

type APIResource struct {

	// Group of the resource.
	Group string `json:"group,omitempty"`
	// Version of the resource.
	Version string `json:"version,omitempty"`
	// Camel-cased singular name of the resource (e.g. ConfigMap)
	Kind string `json:"kind"`
	// Lower-cased plural name of the resource (e.g. configmaps).  If
	// not provided, it will be computed by lower-casing the kind and
	// suffixing an 's'.
	PluralName string `json:"pluralName,omitempty"`
}

APIResource defines how to configure the dynamic client for an API resource.

func (*APIResource) DeepCopy

func (in *APIResource) DeepCopy() *APIResource

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new APIResource.

func (*APIResource) DeepCopyInto

func (in *APIResource) DeepCopyInto(out *APIResource)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ClusterCondition

type ClusterCondition struct {
	// Type of cluster condition, Ready or Offline.
	Type common.ClusterConditionType `json:"type"`
	// Status of the condition, one of True, False, Unknown.
	Status apiv1.ConditionStatus `json:"status"`
	// Last time the condition was checked.
	// +optional
	LastProbeTime metav1.Time `json:"lastProbeTime,omitempty"`
	// Last time the condition transit from one status to another.
	// +optional
	LastTransitionTime metav1.Time `json:"lastTransitionTime,omitempty"`
	// (brief) reason for the condition's last transition.
	// +optional
	Reason string `json:"reason,omitempty"`
	// Human readable message indicating details about last transition.
	// +optional
	Message string `json:"message,omitempty"`
}

ClusterCondition describes current state of a cluster.

func (*ClusterCondition) DeepCopy

func (in *ClusterCondition) DeepCopy() *ClusterCondition

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterCondition.

func (*ClusterCondition) DeepCopyInto

func (in *ClusterCondition) DeepCopyInto(out *ClusterCondition)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ClusterHealthCheckConfig added in v0.0.9

type ClusterHealthCheckConfig struct {
	// How often to monitor the cluster health (in seconds).
	PeriodSeconds int `json:"period-seconds,omitempty"`
	// Minimum consecutive failures for the cluster health to be considered failed after having succeeded.
	FailureThreshold int `json:"failure-threshold,omitempty"`
	// Minimum consecutive successes for the cluster health to be considered successful after having failed.
	SuccessThreshold int `json:"success-threshold,omitempty"`
	// Number of seconds after which the cluster health check times out.
	TimeoutSeconds int `json:"timeout-seconds,omitempty"`
}

func (*ClusterHealthCheckConfig) DeepCopy added in v0.0.9

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterHealthCheckConfig.

func (*ClusterHealthCheckConfig) DeepCopyInto added in v0.0.9

func (in *ClusterHealthCheckConfig) DeepCopyInto(out *ClusterHealthCheckConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ClusterObjectVersion

type ClusterObjectVersion struct {
	// The name of the cluster the version is for.
	ClusterName string `json:"clusterName,omitempty"`
	// The last version produced for the resource by a federation
	// operation.
	Version string `json:"version,omitempty"`
}

func (*ClusterObjectVersion) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterObjectVersion.

func (*ClusterObjectVersion) DeepCopyInto

func (in *ClusterObjectVersion) DeepCopyInto(out *ClusterObjectVersion)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ClusterPropagatedVersion added in v0.0.3

type ClusterPropagatedVersion struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   ClusterPropagatedVersionSpec `json:"spec,omitempty"`
	Status PropagatedVersionStatus      `json:"status,omitempty"`
}

ClusterPropagatedVersion holds version information about the state propagated from cluster-scoped federation APIs configured by FederatedTypeConfig to target clusters. The name of a ClusterPropagatedVersion encodes the kind and name of the resource it stores information for. The type of version information stored in ClusterPropagatedVersion will be the metadata.resourceVersion or metadata.Generation of the resource depending on the value of spec.comparisonField in the FederatedTypeConfig associated with the resource.

+k8s:openapi-gen=true +kubebuilder:resource:path=clusterpropagatedversions +kubebuilder:subresource:status

func (*ClusterPropagatedVersion) DeepCopy added in v0.0.3

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterPropagatedVersion.

func (*ClusterPropagatedVersion) DeepCopyInto added in v0.0.3

func (in *ClusterPropagatedVersion) DeepCopyInto(out *ClusterPropagatedVersion)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ClusterPropagatedVersion) DeepCopyObject added in v0.0.3

func (in *ClusterPropagatedVersion) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ClusterPropagatedVersionList added in v0.0.3

type ClusterPropagatedVersionList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []ClusterPropagatedVersion `json:"items"`
}

ClusterPropagatedVersionList contains a list of ClusterPropagatedVersion

func (*ClusterPropagatedVersionList) DeepCopy added in v0.0.3

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterPropagatedVersionList.

func (*ClusterPropagatedVersionList) DeepCopyInto added in v0.0.3

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*ClusterPropagatedVersionList) DeepCopyObject added in v0.0.3

func (in *ClusterPropagatedVersionList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type ClusterPropagatedVersionSpec added in v0.0.3

type ClusterPropagatedVersionSpec struct {
}

ClusterPropagatedVersionSpec defines the desired state of ClusterPropagatedVersion

func (*ClusterPropagatedVersionSpec) DeepCopy added in v0.0.3

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterPropagatedVersionSpec.

func (*ClusterPropagatedVersionSpec) DeepCopyInto added in v0.0.3

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type ControllerStatus added in v0.0.4

type ControllerStatus string

ControllerStatus defines the current state of the controller

const (
	// ControllerStatusRunning means controller is in "running" state
	ControllerStatusRunning ControllerStatus = "Running"
	// ControllerStatusNotRunning means controller is in "notrunning" state
	ControllerStatusNotRunning ControllerStatus = "NotRunning"
)

type DurationConfig added in v0.0.8

type DurationConfig struct {
	// Time to wait before reconciling on a healthy cluster.
	AvailableDelay metav1.Duration `json:"available-delay,omitempty"`
	// Time to wait before giving up on an unhealthy cluster.
	UnavailableDelay metav1.Duration `json:"unavailable-delay,omitempty"`
}

func (*DurationConfig) DeepCopy added in v0.0.8

func (in *DurationConfig) DeepCopy() *DurationConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DurationConfig.

func (*DurationConfig) DeepCopyInto added in v0.0.8

func (in *DurationConfig) DeepCopyInto(out *DurationConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type FeatureGatesConfig added in v0.0.8

type FeatureGatesConfig struct {
	Name    string `json:"name,omitempty"`
	Enabled bool   `json:"enabled,omitempty"`
}

func (*FeatureGatesConfig) DeepCopy added in v0.0.8

func (in *FeatureGatesConfig) DeepCopy() *FeatureGatesConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FeatureGatesConfig.

func (*FeatureGatesConfig) DeepCopyInto added in v0.0.8

func (in *FeatureGatesConfig) DeepCopyInto(out *FeatureGatesConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type FederatedCluster

type FederatedCluster struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   FederatedClusterSpec   `json:"spec,omitempty"`
	Status FederatedClusterStatus `json:"status,omitempty"`
}

FederatedCluster configures federation to be aware of a Kubernetes cluster from the cluster-registry and provides a Kubeconfig for federation to use to communicate with the cluster.

+k8s:openapi-gen=true +kubebuilder:resource:path=federatedclusters +kubebuilder:subresource:status +kubebuilder:printcolumn:name=ready,type=string,JSONPath=.status.conditions[?(@.type=='Ready')].status +kubebuilder:printcolumn:name=age,type=date,JSONPath=.metadata.creationTimestamp

func (*FederatedCluster) DeepCopy

func (in *FederatedCluster) DeepCopy() *FederatedCluster

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FederatedCluster.

func (*FederatedCluster) DeepCopyInto

func (in *FederatedCluster) DeepCopyInto(out *FederatedCluster)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*FederatedCluster) DeepCopyObject

func (in *FederatedCluster) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type FederatedClusterList

type FederatedClusterList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []FederatedCluster `json:"items"`
}

FederatedClusterList contains a list of FederatedCluster

func (*FederatedClusterList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FederatedClusterList.

func (*FederatedClusterList) DeepCopyInto

func (in *FederatedClusterList) DeepCopyInto(out *FederatedClusterList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*FederatedClusterList) DeepCopyObject

func (in *FederatedClusterList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type FederatedClusterSpec

type FederatedClusterSpec struct {
	// Name of the cluster registry Cluster resource from which to source api
	// endpoints.
	// TODO(marun) should this go away in favor of a 1:1 mapping?
	ClusterRef LocalClusterReference `json:"clusterRef,omitempty"`

	// Name of the secret containing kubeconfig to access the referenced cluster.
	//
	// Admin needs to ensure that the required secret exists. Secret
	// should be in the same namespace where federation control plane
	// is hosted and it should have kubeconfig in its data with key
	// "kubeconfig".
	//
	// This will later be changed to a reference to secret in
	// federation control plane when the federation control plane
	// supports secrets.
	//
	// This can be left empty if the cluster allows insecure access.
	// +optional
	SecretRef *LocalSecretReference `json:"secretRef,omitempty"`
}

FederatedClusterSpec defines the desired state of FederatedCluster

func (*FederatedClusterSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FederatedClusterSpec.

func (*FederatedClusterSpec) DeepCopyInto

func (in *FederatedClusterSpec) DeepCopyInto(out *FederatedClusterSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type FederatedClusterStatus

type FederatedClusterStatus struct {
	// Conditions is an array of current cluster conditions.
	// +optional
	Conditions []ClusterCondition `json:"conditions,omitempty"`
	// Zones are the names of availability zones in which the nodes of the cluster exist, e.g. 'us-east1-a'.
	// +optional
	Zones []string `json:"zones,omitempty"`
	// Region is the name of the region in which all of the nodes in the cluster exist.  e.g. 'us-east1'.
	// +optional
	Region string `json:"region,omitempty"`
}

FederatedClusterStatus contains information about the current status of a cluster updated periodically by cluster controller.

func (*FederatedClusterStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FederatedClusterStatus.

func (*FederatedClusterStatus) DeepCopyInto

func (in *FederatedClusterStatus) DeepCopyInto(out *FederatedClusterStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type FederatedServiceClusterStatus added in v0.0.3

type FederatedServiceClusterStatus struct {
	ClusterName string               `json:"clusterName,omitempty"`
	Status      corev1.ServiceStatus `json:"status,omitempty"`
}

FederatedServiceClusterStatus is the observed status of the resource for a named cluster

func (*FederatedServiceClusterStatus) DeepCopy added in v0.0.3

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FederatedServiceClusterStatus.

func (*FederatedServiceClusterStatus) DeepCopyInto added in v0.0.3

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type FederatedServiceStatus

type FederatedServiceStatus struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	ClusterStatus []FederatedServiceClusterStatus `json:"clusterStatus,omitempty"`
}

FederatedServiceStatus +k8s:openapi-gen=true +kubebuilder:resource:path=federatedservicestatuses

func (*FederatedServiceStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FederatedServiceStatus.

func (*FederatedServiceStatus) DeepCopyInto

func (in *FederatedServiceStatus) DeepCopyInto(out *FederatedServiceStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*FederatedServiceStatus) DeepCopyObject added in v0.0.3

func (in *FederatedServiceStatus) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type FederatedServiceStatusList added in v0.0.3

type FederatedServiceStatusList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []FederatedServiceStatus `json:"items"`
}

FederatedServiceStatusList contains a list of FederatedServiceStatus

func (*FederatedServiceStatusList) DeepCopy added in v0.0.3

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FederatedServiceStatusList.

func (*FederatedServiceStatusList) DeepCopyInto added in v0.0.3

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*FederatedServiceStatusList) DeepCopyObject added in v0.0.3

func (in *FederatedServiceStatusList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type FederatedTypeConfig

type FederatedTypeConfig struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   FederatedTypeConfigSpec   `json:"spec,omitempty"`
	Status FederatedTypeConfigStatus `json:"status,omitempty"`
}

FederatedTypeConfig programs federation to know about a single API type - the "target type" - that a user wants to federate. For each target type, there is a corresponding FederatedType that has the following fields:

  • The "template" field specifies the basic definition of a federated resource
  • The "placement" field specifies the placement information for the federated resource
  • The "overrides" field specifies how the target resource should vary across clusters.

+k8s:openapi-gen=true +kubebuilder:resource:path=federatedtypeconfigs +kubebuilder:subresource:status

func (*FederatedTypeConfig) DeepCopy

func (in *FederatedTypeConfig) DeepCopy() *FederatedTypeConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FederatedTypeConfig.

func (*FederatedTypeConfig) DeepCopyInto

func (in *FederatedTypeConfig) DeepCopyInto(out *FederatedTypeConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*FederatedTypeConfig) DeepCopyObject

func (in *FederatedTypeConfig) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

func (*FederatedTypeConfig) GetEnableStatus added in v0.0.3

func (f *FederatedTypeConfig) GetEnableStatus() bool

func (*FederatedTypeConfig) GetFederatedNamespaced added in v0.0.5

func (f *FederatedTypeConfig) GetFederatedNamespaced() bool

TODO(marun) Remove in favor of using 'true' for namespaces and the value from target otherwise.

func (*FederatedTypeConfig) GetFederatedType added in v0.0.6

func (f *FederatedTypeConfig) GetFederatedType() metav1.APIResource

func (*FederatedTypeConfig) GetNamespaced

func (f *FederatedTypeConfig) GetNamespaced() bool

func (*FederatedTypeConfig) GetObjectMeta added in v0.0.3

func (f *FederatedTypeConfig) GetObjectMeta() metav1.ObjectMeta

func (*FederatedTypeConfig) GetPropagationEnabled

func (f *FederatedTypeConfig) GetPropagationEnabled() bool

func (*FederatedTypeConfig) GetStatus added in v0.0.3

func (f *FederatedTypeConfig) GetStatus() *metav1.APIResource

func (*FederatedTypeConfig) GetTarget

func (f *FederatedTypeConfig) GetTarget() metav1.APIResource

func (*FederatedTypeConfig) IsNamespace added in v0.0.10

func (f *FederatedTypeConfig) IsNamespace() bool

type FederatedTypeConfigList

type FederatedTypeConfigList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []FederatedTypeConfig `json:"items"`
}

FederatedTypeConfigList contains a list of FederatedTypeConfig

func (*FederatedTypeConfigList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FederatedTypeConfigList.

func (*FederatedTypeConfigList) DeepCopyInto

func (in *FederatedTypeConfigList) DeepCopyInto(out *FederatedTypeConfigList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*FederatedTypeConfigList) DeepCopyObject

func (in *FederatedTypeConfigList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type FederatedTypeConfigSpec

type FederatedTypeConfigSpec struct {
	// The configuration of the target type. If not set, the pluralName and
	// groupName fields will be set from the metadata.name of this resource. The
	// kind field must be set.
	Target APIResource `json:"target"`
	// Whether or not the target type is namespaced. The federation
	// types (FederatedType, Status) for the type will share this
	// characteristic.
	//
	// TODO(marun) Remove in favor of using the value from Target and
	// FederatedType (depending on context).
	Namespaced bool `json:"namespaced"`
	// Whether or not propagation to member clusters should be enabled.
	PropagationEnabled bool `json:"propagationEnabled"`
	// Configuration for the federated type that defines (via
	// template, placement and overrides fields) how the target type
	// should appear in multiple cluster.
	FederatedType APIResource `json:"federatedType"`
	// Configuration for the status type that holds information about which type
	// holds the status of the federated resource. If not provided, the group
	// and version will default to those provided for the federated type api
	// resource.
	// +optional
	Status *APIResource `json:"status,omitempty"`
	// Whether or not Status object should be populated.
	// +optional
	EnableStatus bool `json:"enableStatus,omitempty"`
}

FederatedTypeConfigSpec defines the desired state of FederatedTypeConfig.

func (*FederatedTypeConfigSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FederatedTypeConfigSpec.

func (*FederatedTypeConfigSpec) DeepCopyInto

func (in *FederatedTypeConfigSpec) DeepCopyInto(out *FederatedTypeConfigSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type FederatedTypeConfigStatus

type FederatedTypeConfigStatus struct {
	// ObservedGeneration is the generation as observed by the controller consuming the FederatedTypeConfig.
	// +optional
	ObservedGeneration int64 `json:"observedGeneration,omitempty"`
	// PropagationController tracks the status of the sync controller.
	// +optional
	PropagationController ControllerStatus `json:"propagationController,omitempty"`
	// StatusController tracks the status of the status controller.
	// +optional
	StatusController ControllerStatus `json:"statusController,omitempty"`
}

FederatedTypeConfigStatus defines the observed state of FederatedTypeConfig

func (*FederatedTypeConfigStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FederatedTypeConfigStatus.

func (*FederatedTypeConfigStatus) DeepCopyInto

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type FederationConfig added in v0.0.8

type FederationConfig struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec FederationConfigSpec `json:"spec,omitempty"`
}

FederationConfig +k8s:openapi-gen=true +kubebuilder:resource:path=federationconfigs

func (*FederationConfig) DeepCopy added in v0.0.8

func (in *FederationConfig) DeepCopy() *FederationConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FederationConfig.

func (*FederationConfig) DeepCopyInto added in v0.0.8

func (in *FederationConfig) DeepCopyInto(out *FederationConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*FederationConfig) DeepCopyObject added in v0.0.8

func (in *FederationConfig) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type FederationConfigList added in v0.0.8

type FederationConfigList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []FederationConfig `json:"items"`
}

FederationConfigList contains a list of FederationConfig

func (*FederationConfigList) DeepCopy added in v0.0.8

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FederationConfigList.

func (*FederationConfigList) DeepCopyInto added in v0.0.8

func (in *FederationConfigList) DeepCopyInto(out *FederationConfigList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*FederationConfigList) DeepCopyObject added in v0.0.8

func (in *FederationConfigList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type FederationConfigSpec added in v0.0.8

type FederationConfigSpec struct {
	// The scope of the federation control plane should be either `Namespaced` or `Cluster`.
	// `Namespaced` indicates that the federation namespace will be the only target for federation.
	Scope apiextv1b1.ResourceScope `json:"scope,omitempty"`
	// The cluster registry namespace.
	RegistryNamespace  string                   `json:"registry-namespace,omitempty"`
	ControllerDuration DurationConfig           `json:"controller-duration,omitempty"`
	LeaderElect        LeaderElectConfig        `json:"leader-elect,omitempty"`
	FeatureGates       []FeatureGatesConfig     `json:"feature-gates,omitempty"`
	ClusterHealthCheck ClusterHealthCheckConfig `json:"cluster-health-check,omitempty"`
	SyncController     SyncControllerConfig     `json:"sync-controller,omitempty"`
}

FederationConfigSpec defines the desired state of FederationConfig

func (*FederationConfigSpec) DeepCopy added in v0.0.8

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FederationConfigSpec.

func (*FederationConfigSpec) DeepCopyInto added in v0.0.8

func (in *FederationConfigSpec) DeepCopyInto(out *FederationConfigSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type LeaderElectConfig added in v0.0.8

type LeaderElectConfig struct {
	// The duration that non-leader candidates will wait after observing a leadership
	// renewal until attempting to acquire leadership of a led but unrenewed leader
	// slot. This is effectively the maximum duration that a leader can be stopped
	// before it is replaced by another candidate. This is only applicable if leader
	// election is enabled.
	LeaseDuration metav1.Duration `json:"lease-duration,omitempty"`
	// The interval between attempts by the acting master to renew a leadership slot
	// before it stops leading. This must be less than or equal to the lease duration.
	// This is only applicable if leader election is enabled.
	RenewDeadline metav1.Duration `json:"renew-deadline,omitempty"`
	// The duration the clients should wait between attempting acquisition and renewal
	// of a leadership. This is only applicable if leader election is enabled.
	RetryPeriod metav1.Duration `json:"retry-period,omitempty"`
	// The type of resource object that is used for locking during
	// leader election. Supported options are `configmaps` (default) and `endpoints`.
	ResourceLock string `json:"resource-lock,omitempty"`
}

func (*LeaderElectConfig) DeepCopy added in v0.0.8

func (in *LeaderElectConfig) DeepCopy() *LeaderElectConfig

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LeaderElectConfig.

func (*LeaderElectConfig) DeepCopyInto added in v0.0.8

func (in *LeaderElectConfig) DeepCopyInto(out *LeaderElectConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type LocalClusterReference added in v0.0.10

type LocalClusterReference struct {
	// Name of the cluster registry Cluster resource from which to source API
	// endpoints.
	Name string `json:"name"`
}

LocalClusterReference contains information to identify a cluster in the cluster registry.

func (*LocalClusterReference) DeepCopy added in v0.0.10

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LocalClusterReference.

func (*LocalClusterReference) DeepCopyInto added in v0.0.10

func (in *LocalClusterReference) DeepCopyInto(out *LocalClusterReference)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type LocalSecretReference added in v0.0.10

type LocalSecretReference struct {
	// Name of a secret within the enclosing
	// namespace
	Name string `json:"name"`
}

LocalSecretReference is a reference to a secret within the enclosing namespace.

func (*LocalSecretReference) DeepCopy added in v0.0.10

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LocalSecretReference.

func (*LocalSecretReference) DeepCopyInto added in v0.0.10

func (in *LocalSecretReference) DeepCopyInto(out *LocalSecretReference)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PropagatedVersion

type PropagatedVersion struct {
	metav1.TypeMeta   `json:",inline"`
	metav1.ObjectMeta `json:"metadata,omitempty"`

	Spec   PropagatedVersionSpec   `json:"spec,omitempty"`
	Status PropagatedVersionStatus `json:"status,omitempty"`
}

PropagatedVersion holds version information about the state propagated from federation APIs configured by FederatedTypeConfig to target clusters. The name of a PropagatedVersion encodes the kind and name of the resource it stores information for. The type of version information stored in PropagatedVersion will be the metadata.resourceVersion or metadata.Generation of the resource depending on the value of spec.comparisonField in the FederatedTypeConfig associated with the resource.

+k8s:openapi-gen=true +kubebuilder:resource:path=propagatedversions +kubebuilder:subresource:status

func (*PropagatedVersion) DeepCopy

func (in *PropagatedVersion) DeepCopy() *PropagatedVersion

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PropagatedVersion.

func (*PropagatedVersion) DeepCopyInto

func (in *PropagatedVersion) DeepCopyInto(out *PropagatedVersion)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*PropagatedVersion) DeepCopyObject

func (in *PropagatedVersion) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type PropagatedVersionList

type PropagatedVersionList struct {
	metav1.TypeMeta `json:",inline"`
	metav1.ListMeta `json:"metadata,omitempty"`
	Items           []PropagatedVersion `json:"items"`
}

PropagatedVersionList contains a list of PropagatedVersion

func (*PropagatedVersionList) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PropagatedVersionList.

func (*PropagatedVersionList) DeepCopyInto

func (in *PropagatedVersionList) DeepCopyInto(out *PropagatedVersionList)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

func (*PropagatedVersionList) DeepCopyObject

func (in *PropagatedVersionList) DeepCopyObject() runtime.Object

DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.

type PropagatedVersionSpec

type PropagatedVersionSpec struct {
}

PropagatedVersionSpec defines the desired state of PropagatedVersion

func (*PropagatedVersionSpec) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PropagatedVersionSpec.

func (*PropagatedVersionSpec) DeepCopyInto

func (in *PropagatedVersionSpec) DeepCopyInto(out *PropagatedVersionSpec)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type PropagatedVersionStatus

type PropagatedVersionStatus struct {
	// The observed version of the template for this resource.
	TemplateVersion string `json:"templateVersion,omitempty"`
	// The observed version of the overrides for this resource.
	OverrideVersion string `json:"overridesVersion,omitempty"`
	// The last versions produced in each cluster for this resource.
	ClusterVersions []ClusterObjectVersion `json:"clusterVersions,omitempty"`
}

PropagatedVersionStatus defines the observed state of PropagatedVersion

func (*PropagatedVersionStatus) DeepCopy

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PropagatedVersionStatus.

func (*PropagatedVersionStatus) DeepCopyInto

func (in *PropagatedVersionStatus) DeepCopyInto(out *PropagatedVersionStatus)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

type SyncControllerConfig added in v0.0.10

type SyncControllerConfig struct {
	// Whether to skip adopting pre-existing resource in member clusters. Defaults to false
	SkipAdoptingResources bool `json:"skip-adopting-resources,omitempty"`
}

func (*SyncControllerConfig) DeepCopy added in v0.0.10

DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SyncControllerConfig.

func (*SyncControllerConfig) DeepCopyInto added in v0.0.10

func (in *SyncControllerConfig) DeepCopyInto(out *SyncControllerConfig)

DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.

Jump to

Keyboard shortcuts

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