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 ¶
- Variables
- func PluralName(kind string) string
- func Resource(resource string) schema.GroupResource
- func SetFederatedTypeConfigDefaults(obj *FederatedTypeConfig)
- type APIResource
- type ClusterCondition
- type ClusterHealthCheckConfig
- type ClusterObjectVersion
- type ClusterPropagatedVersion
- type ClusterPropagatedVersionList
- type ClusterPropagatedVersionSpec
- type ControllerStatus
- type DurationConfig
- type FeatureGatesConfig
- type FederatedCluster
- type FederatedClusterList
- type FederatedClusterSpec
- type FederatedClusterStatus
- type FederatedServiceClusterStatus
- type FederatedServiceStatus
- type FederatedServiceStatusList
- type FederatedTypeConfig
- func (in *FederatedTypeConfig) DeepCopy() *FederatedTypeConfig
- func (in *FederatedTypeConfig) DeepCopyInto(out *FederatedTypeConfig)
- func (in *FederatedTypeConfig) DeepCopyObject() runtime.Object
- func (f *FederatedTypeConfig) GetEnableStatus() bool
- func (f *FederatedTypeConfig) GetFederatedNamespaced() bool
- func (f *FederatedTypeConfig) GetFederatedType() metav1.APIResource
- func (f *FederatedTypeConfig) GetNamespaced() bool
- func (f *FederatedTypeConfig) GetObjectMeta() metav1.ObjectMeta
- func (f *FederatedTypeConfig) GetPropagationEnabled() bool
- func (f *FederatedTypeConfig) GetStatus() *metav1.APIResource
- func (f *FederatedTypeConfig) GetTarget() metav1.APIResource
- type FederatedTypeConfigList
- type FederatedTypeConfigSpec
- type FederatedTypeConfigStatus
- type FederationConfig
- type FederationConfigList
- type FederationConfigSpec
- type LeaderElectConfig
- type PropagatedVersion
- type PropagatedVersionList
- type PropagatedVersionSpec
- type PropagatedVersionStatus
Constants ¶
This section is empty.
Variables ¶
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
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
func (in *ClusterHealthCheckConfig) DeepCopy() *ClusterHealthCheckConfig
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 ¶
func (in *ClusterObjectVersion) DeepCopy() *ClusterObjectVersion
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
func (in *ClusterPropagatedVersion) DeepCopy() *ClusterPropagatedVersion
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
func (in *ClusterPropagatedVersionList) DeepCopy() *ClusterPropagatedVersionList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterPropagatedVersionList.
func (*ClusterPropagatedVersionList) DeepCopyInto ¶ added in v0.0.3
func (in *ClusterPropagatedVersionList) DeepCopyInto(out *ClusterPropagatedVersionList)
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
func (in *ClusterPropagatedVersionSpec) DeepCopy() *ClusterPropagatedVersionSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterPropagatedVersionSpec.
func (*ClusterPropagatedVersionSpec) DeepCopyInto ¶ added in v0.0.3
func (in *ClusterPropagatedVersionSpec) DeepCopyInto(out *ClusterPropagatedVersionSpec)
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"` 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 ¶
func (in *FederatedClusterList) DeepCopy() *FederatedClusterList
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 apiv1.LocalObjectReference `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 *apiv1.LocalObjectReference `json:"secretRef,omitempty"` }
FederatedClusterSpec defines the desired state of FederatedCluster
func (*FederatedClusterSpec) DeepCopy ¶
func (in *FederatedClusterSpec) DeepCopy() *FederatedClusterSpec
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 ¶
func (in *FederatedClusterStatus) DeepCopy() *FederatedClusterStatus
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
func (in *FederatedServiceClusterStatus) DeepCopy() *FederatedServiceClusterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FederatedServiceClusterStatus.
func (*FederatedServiceClusterStatus) DeepCopyInto ¶ added in v0.0.3
func (in *FederatedServiceClusterStatus) DeepCopyInto(out *FederatedServiceClusterStatus)
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 ¶
func (in *FederatedServiceStatus) DeepCopy() *FederatedServiceStatus
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
func (in *FederatedServiceStatusList) DeepCopy() *FederatedServiceStatusList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FederatedServiceStatusList.
func (*FederatedServiceStatusList) DeepCopyInto ¶ added in v0.0.3
func (in *FederatedServiceStatusList) DeepCopyInto(out *FederatedServiceStatusList)
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
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 ¶
func (in *FederatedTypeConfigList) DeepCopy() *FederatedTypeConfigList
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 ¶
func (in *FederatedTypeConfigSpec) DeepCopy() *FederatedTypeConfigSpec
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 ¶
func (in *FederatedTypeConfigStatus) DeepCopy() *FederatedTypeConfigStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FederatedTypeConfigStatus.
func (*FederatedTypeConfigStatus) DeepCopyInto ¶
func (in *FederatedTypeConfigStatus) DeepCopyInto(out *FederatedTypeConfigStatus)
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
func (in *FederationConfigList) DeepCopy() *FederationConfigList
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"` }
FederationConfigSpec defines the desired state of FederationConfig
func (*FederationConfigSpec) DeepCopy ¶ added in v0.0.8
func (in *FederationConfigSpec) DeepCopy() *FederationConfigSpec
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 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 ¶
func (in *PropagatedVersionList) DeepCopy() *PropagatedVersionList
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 ¶
func (in *PropagatedVersionSpec) DeepCopy() *PropagatedVersionSpec
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 ¶
func (in *PropagatedVersionStatus) DeepCopy() *PropagatedVersionStatus
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.