Documentation ¶
Overview ¶
Package v1alpha1 is the v1alpha1 version of the API.
Index ¶
- Constants
- Variables
- func Kind(kind string) schema.GroupKind
- func Resource(resource string) schema.GroupResource
- type AggregatedStatusItem
- type ClusterAffinity
- type DeploymentStatus
- type FieldSelector
- type Manifest
- type ManifestStatus
- type ObjectReference
- type OverridePolicy
- type OverridePolicyList
- type OverrideSpec
- type OverriderOperator
- type Overriders
- type Placement
- type PlaintextOverrider
- type PropagationBinding
- type PropagationBindingList
- type PropagationBindingSpec
- type PropagationBindingStatus
- type PropagationPolicy
- type PropagationPolicyList
- type PropagationSpec
- type PropagationWork
- type PropagationWorkList
- type PropagationWorkSpec
- type PropagationWorkStatus
- type ResourceIdentifier
- type ResourceSelector
- type ResourceStatus
- type SpreadConstraint
- type TargetCluster
- type WorkloadTemplate
Constants ¶
const ( // WorkApplied represents that the resource defined in PropagationWork is // successfully applied on the managed cluster. WorkApplied string = "Applied" // WorkProgressing represents that the resource defined in PropagationWork is // in the progress to be applied on the managed cluster. WorkProgressing string = "Progressing" // WorkAvailable represents that all resources of the PropagationWork exists on // the managed cluster. WorkAvailable string = "Available" // WorkDegraded represents that the current state of PropagationWork does not match // the desired state for a certain period. WorkDegraded string = "Degraded" )
Variables ¶
var ( // SchemeBuilder initializes a scheme builder SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) // AddToScheme is a global function that registers this API group & version to a scheme AddToScheme = SchemeBuilder.AddToScheme )
var SchemeGroupVersion = schema.GroupVersion{Group: propagationstrategy.GroupName, Version: "v1alpha1"}
SchemeGroupVersion is group version used to register these objects
Functions ¶
func Resource ¶
func Resource(resource string) schema.GroupResource
Resource takes an unqualified resource and returns a Group qualified GroupResource
Types ¶
type AggregatedStatusItem ¶
type AggregatedStatusItem struct { // ClusterName represents the member cluster name which the resource deployed on. ClusterName string `json:"clusterName"` // ResourceStatus represents the status of the resource. // +optional ResourceStatus ResourceStatus `json:"resourceStatus,omitempty"` }
AggregatedStatusItem represents status of the resource running in a member cluster.
func (*AggregatedStatusItem) DeepCopy ¶
func (in *AggregatedStatusItem) DeepCopy() *AggregatedStatusItem
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AggregatedStatusItem.
func (*AggregatedStatusItem) DeepCopyInto ¶
func (in *AggregatedStatusItem) DeepCopyInto(out *AggregatedStatusItem)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterAffinity ¶
type ClusterAffinity struct { // LabelSelector is a filter to select member clusters by labels. // If non-nil and non-empty, only the clusters match this filter will be selected. LabelSelector *metav1.LabelSelector `json:"labelSelector,omitempty"` // FieldSelector is a filter to select member clusters by fields. // If non-nil and non-empty, only the clusters match this filter will be selected. FieldSelector *FieldSelector `json:"fieldSelector,omitempty"` // ClusterNames is the list of clusters to be selected. ClusterNames []string `json:"clusterNames,omitempty"` // ExcludedClusters is the list of clusters to be ignored. ExcludeClusters []string `json:"exclude,omitempty"` }
ClusterAffinity represents the filter to select clusters.
func (*ClusterAffinity) DeepCopy ¶
func (in *ClusterAffinity) DeepCopy() *ClusterAffinity
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterAffinity.
func (*ClusterAffinity) DeepCopyInto ¶
func (in *ClusterAffinity) DeepCopyInto(out *ClusterAffinity)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DeploymentStatus ¶
type DeploymentStatus struct { // Total number of non-terminated pods targeted by this deployment (their labels match the selector). // +optional Replicas int32 `json:"replicas,omitempty"` // Total number of non-terminated pods targeted by this deployment that have the desired template spec. // +optional UpdatedReplicas int32 `json:"updatedReplicas,omitempty"` // Total number of ready pods targeted by this deployment. // +optional ReadyReplicas int32 `json:"readyReplicas,omitempty"` // Total number of available pods (ready for at least minReadySeconds) targeted by this deployment. // +optional AvailableReplicas int32 `json:"availableReplicas,omitempty"` // pods that are still required for the deployment to have 100% available capacity. They may // either be pods that are running but not yet available or pods that still have not been created. // +optional UnavailableReplicas int32 `json:"unavailableReplicas,omitempty"` }
DeploymentStatus represents a 'Deployment' status.
func (*DeploymentStatus) DeepCopy ¶
func (in *DeploymentStatus) DeepCopy() *DeploymentStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeploymentStatus.
func (*DeploymentStatus) DeepCopyInto ¶
func (in *DeploymentStatus) DeepCopyInto(out *DeploymentStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type FieldSelector ¶
type FieldSelector struct { // A list of field selector requirements. MatchExpressions []corev1.NodeSelectorRequirement `json:"matchExpressions,omitempty"` }
FieldSelector is a field filter.
func (*FieldSelector) DeepCopy ¶
func (in *FieldSelector) DeepCopy() *FieldSelector
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new FieldSelector.
func (*FieldSelector) DeepCopyInto ¶
func (in *FieldSelector) DeepCopyInto(out *FieldSelector)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Manifest ¶
type Manifest struct { // +kubebuilder:pruning:PreserveUnknownFields runtime.RawExtension `json:",inline"` }
Manifest represents a resource to be deployed on managed cluster.
func (*Manifest) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Manifest.
func (*Manifest) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ManifestStatus ¶
type ManifestStatus struct { // Identifier represents the identity of a resource linking to manifests in spec. Identifier ResourceIdentifier `json:"identifier"` // Status reflects running status of current manifest. // +kubebuilder:pruning:PreserveUnknownFields Status runtime.RawExtension `json:",inline"` }
ManifestStatus contains running status of a specific manifest in spec.
func (*ManifestStatus) DeepCopy ¶
func (in *ManifestStatus) DeepCopy() *ManifestStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ManifestStatus.
func (*ManifestStatus) DeepCopyInto ¶
func (in *ManifestStatus) DeepCopyInto(out *ManifestStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ObjectReference ¶
type ObjectReference struct { // APIVersion represents the API version of the referent. APIVersion string `json:"apiVersion"` // Kind represents the Kind of the referent. Kind string `json:"kind"` // Namespace represents the namespace for the referent. // For non-namespace scoped resources(e.g. 'ClusterRole'),do not need specify Namespace, // and for namespace scoped resources, Namespace is required. // If Namespace is not specified, means the resource is non-namespace scoped. // +optional Namespace string `json:"namespace,omitempty"` // Name represents the name of the referent. Name string `json:"name"` // ResourceVersion represents the internal version of the referenced object, that can be used by clients to // determine when object has changed. // +optional ResourceVersion string `json:"resourceVersion,omitempty"` }
ObjectReference contains enough information to locate the referenced object inside current cluster.
func (*ObjectReference) DeepCopy ¶
func (in *ObjectReference) DeepCopy() *ObjectReference
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ObjectReference.
func (*ObjectReference) DeepCopyInto ¶
func (in *ObjectReference) DeepCopyInto(out *ObjectReference)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OverridePolicy ¶
type OverridePolicy struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` // Spec represents the desired behavior of OverridePolicy. Spec OverrideSpec `json:"spec"` }
OverridePolicy represents the policy that overrides a group of resources to one or more clusters.
func (*OverridePolicy) DeepCopy ¶
func (in *OverridePolicy) DeepCopy() *OverridePolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OverridePolicy.
func (*OverridePolicy) DeepCopyInto ¶
func (in *OverridePolicy) DeepCopyInto(out *OverridePolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OverridePolicy) DeepCopyObject ¶
func (in *OverridePolicy) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type OverridePolicyList ¶
type OverridePolicyList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` // Items holds a list of OverridePolicy. Items []OverridePolicy `json:"items"` }
OverridePolicyList is a collection of OverridePolicy.
func (*OverridePolicyList) DeepCopy ¶
func (in *OverridePolicyList) DeepCopy() *OverridePolicyList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OverridePolicyList.
func (*OverridePolicyList) DeepCopyInto ¶
func (in *OverridePolicyList) DeepCopyInto(out *OverridePolicyList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*OverridePolicyList) DeepCopyObject ¶
func (in *OverridePolicyList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type OverrideSpec ¶
type OverrideSpec struct { // ResourceSelectors restricts resource types that this override policy applies to. ResourceSelectors []ResourceSelector `json:"resourceSelectors,omitempty"` // TargetCluster defines restrictions on this override policy // that only applies to resources propagated to the matching clusters TargetCluster ClusterAffinity `json:"targetCluster,omitempty"` // Overriders represents the override rules that would apply on resources Overriders Overriders `json:"overriders,omitempty"` }
OverrideSpec defines the desired behavior of OverridePolicy.
func (*OverrideSpec) DeepCopy ¶
func (in *OverrideSpec) DeepCopy() *OverrideSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OverrideSpec.
func (*OverrideSpec) DeepCopyInto ¶
func (in *OverrideSpec) DeepCopyInto(out *OverrideSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OverriderOperator ¶
type OverriderOperator string
OverriderOperator is the set of operators that can be used in an overrider.
const ( OverriderOpAdd OverriderOperator = "Add" OverriderOpRemove OverriderOperator = "Remove" OverriderOpReplace OverriderOperator = "Replace" )
These are valid overrider operators.
type Overriders ¶
type Overriders struct { // Plaintext represents override rules defined with plaintext overriders. Plaintext []PlaintextOverrider `json:"plaintext,omitempty"` }
Overriders represents the override rules that would apply on resources
func (*Overriders) DeepCopy ¶
func (in *Overriders) DeepCopy() *Overriders
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Overriders.
func (*Overriders) DeepCopyInto ¶
func (in *Overriders) DeepCopyInto(out *Overriders)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Placement ¶
type Placement struct { // ClusterAffinity represents scheduling restrictions to a certain set of clusters. // If not set, any cluster can be scheduling candidate. // +optional ClusterAffinity *ClusterAffinity `json:"clusterAffinity,omitempty"` // ClusterTolerations represents the tolerations. ClusterTolerations []corev1.Toleration `json:"clusterTolerations,omitempty"` // SpreadConstraints represents a list of the scheduling constraints. SpreadConstraints []SpreadConstraint `json:"spreadConstraints,omitempty"` }
Placement represents the rule for select clusters.
func (*Placement) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Placement.
func (*Placement) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PlaintextOverrider ¶
type PlaintextOverrider struct { // Path indicates the path of target field Path string `json:"path"` // Operator indicates the operation on target field. // Available operators are: Add, Update and Remove. Operator OverriderOperator `json:"operator"` // Value to be applied to target field. // Must be empty when operator is Remove. // +optional Value runtime.RawExtension `json:",inline"` }
PlaintextOverrider is a simple overrider that overrides target fields according to path, operator and value.
func (*PlaintextOverrider) DeepCopy ¶
func (in *PlaintextOverrider) DeepCopy() *PlaintextOverrider
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PlaintextOverrider.
func (*PlaintextOverrider) DeepCopyInto ¶
func (in *PlaintextOverrider) DeepCopyInto(out *PlaintextOverrider)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PropagationBinding ¶
type PropagationBinding struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` // Spec represents the desired behavior. Spec PropagationBindingSpec `json:"spec"` // Status represents the most recently observed status of the PropagationBinding. // +optional Status PropagationBindingStatus `json:"status,omitempty"` }
PropagationBinding represents a binding of a kubernetes resource with a propagation policy.
func (*PropagationBinding) DeepCopy ¶
func (in *PropagationBinding) DeepCopy() *PropagationBinding
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PropagationBinding.
func (*PropagationBinding) DeepCopyInto ¶
func (in *PropagationBinding) DeepCopyInto(out *PropagationBinding)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PropagationBinding) DeepCopyObject ¶
func (in *PropagationBinding) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PropagationBindingList ¶
type PropagationBindingList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` // Items is the list of PropagationBinding. Items []PropagationBinding `json:"items"` }
PropagationBindingList contains a list of PropagationBinding.
func (*PropagationBindingList) DeepCopy ¶
func (in *PropagationBindingList) DeepCopy() *PropagationBindingList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PropagationBindingList.
func (*PropagationBindingList) DeepCopyInto ¶
func (in *PropagationBindingList) DeepCopyInto(out *PropagationBindingList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PropagationBindingList) DeepCopyObject ¶
func (in *PropagationBindingList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PropagationBindingSpec ¶
type PropagationBindingSpec struct { // Resource represents the Kubernetes resource to be propagated. Resource ObjectReference `json:"resource"` // Clusters represents target member clusters where the resource to be deployed. // +optional Clusters []TargetCluster `json:"clusters,omitempty"` }
PropagationBindingSpec represents the expectation of PropagationBinding.
func (*PropagationBindingSpec) DeepCopy ¶
func (in *PropagationBindingSpec) DeepCopy() *PropagationBindingSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PropagationBindingSpec.
func (*PropagationBindingSpec) DeepCopyInto ¶
func (in *PropagationBindingSpec) DeepCopyInto(out *PropagationBindingSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PropagationBindingStatus ¶
type PropagationBindingStatus struct { // Conditions contain the different condition statuses. // +optional Conditions []metav1.Condition `json:"conditions,omitempty"` // AggregatedStatus represents status list of the resource running in each member cluster. // +optional AggregatedStatus []AggregatedStatusItem `json:"aggregatedStatus,omitempty"` }
PropagationBindingStatus represents the overall status of the strategy as well as the referenced resources.
func (*PropagationBindingStatus) DeepCopy ¶
func (in *PropagationBindingStatus) DeepCopy() *PropagationBindingStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PropagationBindingStatus.
func (*PropagationBindingStatus) DeepCopyInto ¶
func (in *PropagationBindingStatus) DeepCopyInto(out *PropagationBindingStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PropagationPolicy ¶
type PropagationPolicy struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` // Spec represents the desired behavior of PropagationPolicy. Spec PropagationSpec `json:"spec"` }
PropagationPolicy represents the policy that propagates a group of resources to one or more clusters.
func (*PropagationPolicy) DeepCopy ¶
func (in *PropagationPolicy) DeepCopy() *PropagationPolicy
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PropagationPolicy.
func (*PropagationPolicy) DeepCopyInto ¶
func (in *PropagationPolicy) DeepCopyInto(out *PropagationPolicy)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PropagationPolicy) DeepCopyObject ¶
func (in *PropagationPolicy) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PropagationPolicyList ¶
type PropagationPolicyList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []PropagationPolicy `json:"items"` }
PropagationPolicyList contains a list of PropagationPolicy.
func (*PropagationPolicyList) DeepCopy ¶
func (in *PropagationPolicyList) DeepCopy() *PropagationPolicyList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PropagationPolicyList.
func (*PropagationPolicyList) DeepCopyInto ¶
func (in *PropagationPolicyList) DeepCopyInto(out *PropagationPolicyList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PropagationPolicyList) DeepCopyObject ¶
func (in *PropagationPolicyList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PropagationSpec ¶
type PropagationSpec struct { // ResourceSelectors used to select resources. // nil represents all resources. ResourceSelectors []ResourceSelector `json:"resourceSelectors,omitempty"` // Association tells if relevant resources should be selected automatically. // e.g. a ConfigMap referred by a Deployment. // default false. // +optional Association bool `json:"association,omitempty"` // Placement represents the rule for select clusters to propagate resources. Placement Placement `json:"placement,omitempty"` // SchedulerName represents which scheduler to proceed the scheduling. // If specified, the policy will be dispatched by specified scheduler. // If not specified, the policy will be dispatched by default scheduler. SchedulerName string `json:"schedulerName,omitempty"` }
PropagationSpec represents the desired behavior of PropagationPolicy.
func (*PropagationSpec) DeepCopy ¶
func (in *PropagationSpec) DeepCopy() *PropagationSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PropagationSpec.
func (*PropagationSpec) DeepCopyInto ¶
func (in *PropagationSpec) DeepCopyInto(out *PropagationSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PropagationWork ¶
type PropagationWork struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` // Spec represents the desired behavior of PropagationWork. Spec PropagationWorkSpec `json:"spec"` // Status represents the status of PropagationStatus. // +optional Status PropagationWorkStatus `json:"status,omitempty"` }
PropagationWork defines a list of resources to be deployed on the member cluster.
func (*PropagationWork) DeepCopy ¶
func (in *PropagationWork) DeepCopy() *PropagationWork
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PropagationWork.
func (*PropagationWork) DeepCopyInto ¶
func (in *PropagationWork) DeepCopyInto(out *PropagationWork)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PropagationWork) DeepCopyObject ¶
func (in *PropagationWork) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PropagationWorkList ¶
type PropagationWorkList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` // Items holds a list of PropagationWork. Items []PropagationWork `json:"items"` }
PropagationWorkList is a collection of PropagationWork.
func (*PropagationWorkList) DeepCopy ¶
func (in *PropagationWorkList) DeepCopy() *PropagationWorkList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PropagationWorkList.
func (*PropagationWorkList) DeepCopyInto ¶
func (in *PropagationWorkList) DeepCopyInto(out *PropagationWorkList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*PropagationWorkList) DeepCopyObject ¶
func (in *PropagationWorkList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type PropagationWorkSpec ¶
type PropagationWorkSpec struct { // Workload represents the manifest workload to be deployed on managed cluster. Workload WorkloadTemplate `json:"workload,omitempty"` }
PropagationWorkSpec defines the desired state of PropagationWork.
func (*PropagationWorkSpec) DeepCopy ¶
func (in *PropagationWorkSpec) DeepCopy() *PropagationWorkSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PropagationWorkSpec.
func (*PropagationWorkSpec) DeepCopyInto ¶
func (in *PropagationWorkSpec) DeepCopyInto(out *PropagationWorkSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type PropagationWorkStatus ¶
type PropagationWorkStatus struct { // Conditions contain the different condition statuses for this work. // Valid condition types are: // 1. Applied represents workload in PropagationWork is applied successfully on a managed cluster. // 2. Progressing represents workload in PropagationWork is being applied on a managed cluster. // 3. Available represents workload in PropagationWork exists on the managed cluster. // 4. Degraded represents the current state of workload does not match the desired // state for a certain period. // +optional Conditions []metav1.Condition `json:"conditions,omitempty"` // ManifestStatuses contains running status of manifests in spec. // +optional ManifestStatuses []ManifestStatus `json:"manifestStatuses,omitempty"` }
PropagationWorkStatus defines the observed state of PropagationWork.
func (*PropagationWorkStatus) DeepCopy ¶
func (in *PropagationWorkStatus) DeepCopy() *PropagationWorkStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new PropagationWorkStatus.
func (*PropagationWorkStatus) DeepCopyInto ¶
func (in *PropagationWorkStatus) DeepCopyInto(out *PropagationWorkStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ResourceIdentifier ¶
type ResourceIdentifier struct { // Ordinal represents an index in manifests list, so the condition can still be linked // to a manifest even though manifest cannot be parsed successfully. Ordinal int `json:"ordinal"` // Group is the group of the resource. Group string `json:"group,omitempty"` // Version is the version of the resource. Version string `json:"version"` // Kind is the kind of the resource. Kind string `json:"kind"` // Resource is the resource type of the resource Resource string `json:"resource"` // Namespace is the namespace of the resource, the resource is cluster scoped if the value // is empty Namespace string `json:"namespace,omitempty"` // Name is the name of the resource Name string `json:"name"` }
ResourceIdentifier provides the identifiers needed to interact with any arbitrary object.
func (*ResourceIdentifier) DeepCopy ¶
func (in *ResourceIdentifier) DeepCopy() *ResourceIdentifier
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceIdentifier.
func (*ResourceIdentifier) DeepCopyInto ¶
func (in *ResourceIdentifier) DeepCopyInto(out *ResourceIdentifier)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ResourceSelector ¶
type ResourceSelector struct { // APIVersion represents the API version of the target resources. APIVersion string `json:"apiVersion"` // Kind represents the Kind of the target resources. Kind string `json:"kind"` // Namespace of the target resource. // Default is empty, which means inherit from the parent object scope. // +optional Namespace string `json:"namespace,omitempty"` // Name of the target resource. // Default is empty, which means selecting all resources. // +optional Name string `json:"name,omitempty"` // A label query over a set of resources. // If name is not empty, labelSelector will be ignored. // +optional LabelSelector *metav1.LabelSelector `json:"labelSelector,omitempty"` }
ResourceSelector the resources will be selected.
func (*ResourceSelector) DeepCopy ¶
func (in *ResourceSelector) DeepCopy() *ResourceSelector
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceSelector.
func (*ResourceSelector) DeepCopyInto ¶
func (in *ResourceSelector) DeepCopyInto(out *ResourceSelector)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ResourceStatus ¶
type ResourceStatus struct { // Deployment represents the deployment status in the member cluster, // only available when the resource kind is Deployment. // +optional Deployment *DeploymentStatus `json:"deploymentStatus,omitempty"` }
ResourceStatus represents status of all supported resource type. Each field owns a specific `Kind`, and only one field will be available(non-nil).
func (*ResourceStatus) DeepCopy ¶
func (in *ResourceStatus) DeepCopy() *ResourceStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceStatus.
func (*ResourceStatus) DeepCopyInto ¶
func (in *ResourceStatus) DeepCopyInto(out *ResourceStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SpreadConstraint ¶
type SpreadConstraint struct { // SpreadByField represents the field used for grouping member clusters into units. // Resources will be spread among different cluster units. // Available field for spreading are: region, zone, cluster and provider. // +optional SpreadByField string `json:"spreadByField,omitempty"` // SpreadByLabel represents the label key used for grouping member clusters into units. // Resources will be spread among different cluster units. // +optional SpreadByLabel string `json:"spreadByLabel,omitempty"` // Maximum restricts the maximum number of cluster units to be selected. // +optional Maximum int `json:"maximum,omitempty"` // Minimum restricts the minimum number of cluster units to be selected. // +optional Minimum int `json:"minimum,omitempty"` }
SpreadConstraint represents the spread constraints on resources.
func (*SpreadConstraint) DeepCopy ¶
func (in *SpreadConstraint) DeepCopy() *SpreadConstraint
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SpreadConstraint.
func (*SpreadConstraint) DeepCopyInto ¶
func (in *SpreadConstraint) DeepCopyInto(out *SpreadConstraint)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type TargetCluster ¶
type TargetCluster struct { // Name of target cluster. Name string `json:"name"` }
TargetCluster represents the identifier of a member cluster.
func (*TargetCluster) DeepCopy ¶
func (in *TargetCluster) DeepCopy() *TargetCluster
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new TargetCluster.
func (*TargetCluster) DeepCopyInto ¶
func (in *TargetCluster) DeepCopyInto(out *TargetCluster)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type WorkloadTemplate ¶
type WorkloadTemplate struct { // Manifests represents a list of Kubernetes resources to be deployed on the managed cluster. // +optional Manifests []Manifest `json:"manifests,omitempty"` }
WorkloadTemplate represents the manifest workload to be deployed on managed cluster.
func (*WorkloadTemplate) DeepCopy ¶
func (in *WorkloadTemplate) DeepCopy() *WorkloadTemplate
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkloadTemplate.
func (*WorkloadTemplate) DeepCopyInto ¶
func (in *WorkloadTemplate) DeepCopyInto(out *WorkloadTemplate)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.