Global Owner resource
This is an API specification for the GlobalOwner
resource.
Resources
This is a list of structures representing the GlobalOwner
resource API.
GlobalOwner
type GlobalOwner struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata"`
Spec GlobalOwnerSpec `json:"spec"`
Status GlobalOwnerStatus `json:"status,omitempty"`
}
GlobalOwner
spec
type GlobalOwnerSpec struct {
// Global label selector value. Will be applied to all child resources
// if resource does not have its own.
Selector *metav1.LabelSelector `json:"selector,omitempty"`
// A list of child resources which global owner should adopt.
// Each child resource is passed to generated Group Owner object spec.
//
// The order of the resources in the list specifies removal ordering,
// top to bottom.
ChildResources []ChildResource `json:"childResources"`
}
GlobalOwner
resource rule
type ResourceRule struct {
// Resource api version, for example: v1
APIVersion string `json:"apiVersion"`
// Resource plural name, for example: secrets
Resource string `json:"resource"`
}
GlobalOwner
child resource
type ChildResource struct {
ResourceRule `json:",inline"`
// A list of unique names for the resources to adopt
// Mutually exclusive with the selector value.
Names []string `json:"names,omitempty"`
// A namespace, where the resources should be looked up.
Namespace string `json:"namespace,omitempty"`
// Label selector value for resource group.
// Mutually exclusive with the names and namespace values.
// Has precedence on Names/Namespaces if specified.
Selector *metav1.LabelSelector `json:"selector,omitempty"`
}
GlobalOwner
status
type GlobalOwnerStatus struct {
ObservedGeneration int `json:"observedGeneration,omitempty"`
}