Documentation ¶
Overview ¶
Package v1 contains API Schema definitions for the apps v1 API group +k8s:deepcopy-gen=package,register +groupName=apps.open-cluster-management.io
Package v1 contains API Schema definitions for the apps v1 API group +k8s:deepcopy-gen=package,register +groupName=apps.open-cluster-management.io
Index ¶
- Constants
- Variables
- func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenAPIDefinition
- type Cluster
- type ClusterOverride
- type Dependency
- type Deployable
- type DeployableList
- type DeployablePhase
- type DeployableSpec
- type DeployableStatus
- type Overrides
- type ResourceUnitStatus
Constants ¶
const (
DefaultRollingUpdateMaxUnavailablePercentage = 25
)Variables ¶
var ( SchemeGroupVersion.Group + "/rollingupdate-maxunavaialble" // AnnotationRollingUpdateTarget target deployable to rolling update to. AnnotationRollingUpdateTarget = SchemeGroupVersion.Group + "/rollingupdate-target" // AnnotationDeployableVersion sits in deployable resource to identify if it is local deployable. AnnotationDeployableVersion = SchemeGroupVersion.Group + "/deployable-version" AnnotationShared = SchemeGroupVersion.Group + "/is-shared-deployable" // AnnotationLocal sits in deployable resource to identify if it is local deployable. AnnotationLocal = SchemeGroupVersion.Group + "/is-local-deployable" // AnnotationHosting sits in templated resource, gives name of hosting deployable. AnnotationHosting = SchemeGroupVersion.Group + "/" + PropertyHostingDeployable // AnnotationManagedCluster identifies this is a deployable for managed cluster. AnnotationManagedCluster = SchemeGroupVersion.Group + "/managed-cluster" // AnnotationExternalSource identifies this is a deployable created from an external source. AnnotationExternalSource = SchemeGroupVersion.Group + "/external-source" // AnnotationSubscription identifies this is a object created from Subscription controller. // The annotation doesn't exist if the object is created from a Deployable controller. AnnotationSubscription = SchemeGroupVersion.Group + "/hosting-subscription" // AnnotationIsGenerated tells if the deployable is generated by controller or not. AnnotationIsGenerated = SchemeGroupVersion.Group + "/is-generated" // LabelSubscriptionPause sits in deployable label to identify if the deployable is paused. LabelSubscriptionPause = "subscription-pause" )AnnotationRollingUpdateMaxUnavailable =
var ( // PropertyHostingDeployable tells NamespacedName of the hosting deployable of the dependency. PropertyHostingDeployable = "hosting-deployable" // PropertyHostingDeployableName tells the hosting deployable of the dependency. PropertyHostingDeployableName = "hosting-deployable-name" )
var ( // SchemeGroupVersion is group version used to register these objects. SchemeGroupVersion = schema.GroupVersion{Group: "apps.open-cluster-management.io", Version: "v1"} // SchemeBuilder is used to add go types to the GroupVersionKind scheme. SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion} )
Functions ¶
func GetOpenAPIDefinitions ¶
func GetOpenAPIDefinitions(ref common.ReferenceCallback) map[string]common.OpenAPIDefinition
Types ¶
type Cluster ¶
type Cluster struct {
Name string `json:"name,omitempty"`
}
Cluster is object with name field only to specify cluster.
func (*Cluster) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Cluster.
func (*Cluster) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterOverride ¶
type ClusterOverride struct {
runtime.RawExtension `json:",inline"`
}
ClusterOverride describes rules for override.
func (*ClusterOverride) DeepCopy ¶
func (in *ClusterOverride) DeepCopy() *ClusterOverride
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterOverride.
func (*ClusterOverride) DeepCopyInto ¶
func (in *ClusterOverride) DeepCopyInto(out *ClusterOverride)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Dependency ¶
type Dependency struct { corev1.ObjectReference `json:",inline"` Annotations map[string]string `json:"annotations,omitempty"` Labels map[string]string `json:"labels,omitempty"` }
Dependency of Deployable Properties field is the flexiblity for different Kind.
func (*Dependency) DeepCopy ¶
func (in *Dependency) DeepCopy() *Dependency
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Dependency.
func (*Dependency) DeepCopyInto ¶
func (in *Dependency) DeepCopyInto(out *Dependency)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Deployable ¶
type Deployable struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec DeployableSpec `json:"spec"` Status DeployableStatus `json:"status,omitempty"` }
Deployable is the Schema for the deployables API +k8s:openapi-gen=true +kubebuilder:subresource:status +kubebuilder:printcolumn:name="template-kind",type="string",JSONPath=".spec.template.kind",description="Kind of the template" +kubebuilder:printcolumn:name="template-apiversion",type="string",JSONPath=".spec.template.apiVersion",description="api version of the template" +kubebuilder:printcolumn:name="age",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:printcolumn:name="status",type="string",JSONPath=".status.phase"
func (*Deployable) DeepCopy ¶
func (in *Deployable) DeepCopy() *Deployable
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Deployable.
func (*Deployable) DeepCopyInto ¶
func (in *Deployable) DeepCopyInto(out *Deployable)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Deployable) DeepCopyObject ¶
func (in *Deployable) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type DeployableList ¶
type DeployableList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Deployable `json:"items"` }
DeployableList contains a list of Deployable.
func (*DeployableList) DeepCopy ¶
func (in *DeployableList) DeepCopy() *DeployableList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeployableList.
func (*DeployableList) DeepCopyInto ¶
func (in *DeployableList) DeepCopyInto(out *DeployableList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*DeployableList) DeepCopyObject ¶
func (in *DeployableList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
type DeployablePhase ¶
type DeployablePhase string
DeployablePhase indicate the phase of a deployable.
const ( // DeployableUnknown means not processed by controller yet. DeployableUnknown DeployablePhase = "" // DeployableDeployed means successfully deployed to remote clusters. DeployableDeployed DeployablePhase = "Deployed" // DeployableFailed means failed to apply the template into system. DeployableFailed DeployablePhase = "Failed" // DeployablePropagated means created other managed deployables. DeployablePropagated DeployablePhase = "Propagated" )
type DeployableSpec ¶
type DeployableSpec struct { Template *runtime.RawExtension `json:"template"` Dependencies []Dependency `json:"dependencies,omitempty"` Placement *placementv1alpha1.Placement `json:"placement,omitempty"` Overrides []Overrides `json:"overrides,omitempty"` Channels []string `json:"channels,omitempty"` }
DeployableSpec defines the desired state of Deployable.
func (*DeployableSpec) DeepCopy ¶
func (in *DeployableSpec) DeepCopy() *DeployableSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeployableSpec.
func (*DeployableSpec) DeepCopyInto ¶
func (in *DeployableSpec) DeepCopyInto(out *DeployableSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type DeployableStatus ¶
type DeployableStatus struct { // INSERT ADDITIONAL STATUS FIELD - define observed state of cluster // Important: Run "make" to regenerate code after modifying this file ResourceUnitStatus `json:",inline"` PropagatedStatus map[string]*ResourceUnitStatus `json:"targetClusters,omitempty"` }
DeployableStatus defines the observed state of Deployable.
func (*DeployableStatus) DeepCopy ¶
func (in *DeployableStatus) DeepCopy() *DeployableStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new DeployableStatus.
func (*DeployableStatus) DeepCopyInto ¶
func (in *DeployableStatus) DeepCopyInto(out *DeployableStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Overrides ¶
type Overrides struct { ClusterName string `json:"clusterName"` //+kubebuilder:validation:MinItems=1 ClusterOverrides []ClusterOverride `json:"clusterOverrides"` // To be added }
Overrides field in deployable.
func (*Overrides) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Overrides.
func (*Overrides) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ResourceUnitStatus ¶
type ResourceUnitStatus struct { Phase DeployablePhase `json:"phase"` Reason string `json:"reason,omitempty"` Message string `json:"message,omitempty"` LastUpdateTime *metav1.Time `json:"lastUpdateTime,omitempty"` ResourceStatus *runtime.RawExtension `json:"resourceStatus,omitempty"` }
ResourceUnitStatus aggregates status from target clusters.
func (*ResourceUnitStatus) DeepCopy ¶
func (in *ResourceUnitStatus) DeepCopy() *ResourceUnitStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ResourceUnitStatus.
func (*ResourceUnitStatus) DeepCopyInto ¶
func (in *ResourceUnitStatus) DeepCopyInto(out *ResourceUnitStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.