Documentation ¶
Overview ¶
Package patch implements patch utilities.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Clusterv1ConditionsFieldPath ¶ added in v1.9.0
type Clusterv1ConditionsFieldPath []string
Clusterv1ConditionsFieldPath allows to override the path for the field hosting clusterv1.Conditions. Please note that the default value for this option is inferred from the object struct. The override for this option is considered only if the object implements the conditions.Setter interface.
func (Clusterv1ConditionsFieldPath) ApplyToHelper ¶ added in v1.9.0
func (w Clusterv1ConditionsFieldPath) ApplyToHelper(in *HelperOptions)
ApplyToHelper applies this configuration to the given HelperOptions.
type Helper ¶
type Helper struct {
// contains filtered or unexported fields
}
Helper is a utility for ensuring the proper patching of objects.
func NewHelper ¶
NewHelper returns an initialized Helper. Use NewHelper before changing obj. After changing obj use Helper.Patch to persist your changes.
Please note that patch helper implements a custom handling for objects implementing the condition.Setter interface or the v1beta2conditions.Setter interface.
It is also possible to implement wrappers for object not implementing those interfaces; in case those objects have custom conditions types the wrapper should take care of conversions. Additionally, if the conditions are not in the canonical place defined by the proposal for improving status in Cluster API conditions, locations of the condition field must be provided explicitly by using Metav1ConditionsFieldPath and Clusterv1ConditionsFieldPath options during the Patch call.
type HelperOptions ¶ added in v0.3.7
type HelperOptions struct { // IncludeStatusObservedGeneration sets the status.observedGeneration field // on the incoming object to match metadata.generation, only if there is a change. IncludeStatusObservedGeneration bool // ForceOverwriteConditions allows the patch helper to overwrite conditions in case of conflicts. // This option should only ever be set in controller managing the object being patched. ForceOverwriteConditions bool // OwnedConditions defines condition types owned by the controller. // In case of conflicts for the owned conditions, the patch helper will always use the value provided by the controller. OwnedConditions []clusterv1.ConditionType // OwnedV1Beta2Conditions defines condition types owned by the controller. // In case of conflicts for the owned conditions, the patch helper will always use the value provided by the controller. OwnedV1Beta2Conditions []string // Metav1ConditionsFields allows to override the path for the field hosting []metav1.Condition. // Please note that the default value for this option is inferred from the object struct. // This means, that if the correct path cannot be detected, this option has to be specified. One example // is if you pass a wrapper to unstructured. // The override for this option is considered only if the object implements the v1beta2conditions.Setter interface. Metav1ConditionsFieldPath []string // Clusterv1ConditionsFieldPath allows to override the path for the field hosting clusterv1.Conditions. // Please note that the default value for this option is inferred from the object struct. // This means, that if the correct path cannot be detected, this option has to be specified. One example // is if you pass a wrapper to unstructured. // The override for this option is considered only if the object implements the conditions.Setter interface. Clusterv1ConditionsFieldPath []string }
HelperOptions contains options for patch options.
type Metav1ConditionsFieldPath ¶ added in v1.9.0
type Metav1ConditionsFieldPath []string
Metav1ConditionsFieldPath allows to override the path for the field hosting []metav1.Condition. Please note that the default value for this option is inferred from the object struct. The override for this option is considered only if the object implements the v1beta2conditions.Setter interface.
func (Metav1ConditionsFieldPath) ApplyToHelper ¶ added in v1.9.0
func (w Metav1ConditionsFieldPath) ApplyToHelper(in *HelperOptions)
ApplyToHelper applies this configuration to the given HelperOptions.
type Option ¶ added in v0.3.7
type Option interface { // ApplyToHelper applies this configuration to the given Helper options. ApplyToHelper(*HelperOptions) }
Option is some configuration that modifies options for a patch request.
type WithForceOverwriteConditions ¶ added in v0.3.10
type WithForceOverwriteConditions struct{}
WithForceOverwriteConditions allows the patch helper to overwrite conditions in case of conflicts. This option should only ever be set in controller managing the object being patched.
func (WithForceOverwriteConditions) ApplyToHelper ¶ added in v0.3.10
func (w WithForceOverwriteConditions) ApplyToHelper(in *HelperOptions)
ApplyToHelper applies this configuration to the given HelperOptions.
type WithOwnedConditions ¶ added in v0.3.7
type WithOwnedConditions struct {
Conditions []clusterv1.ConditionType
}
WithOwnedConditions allows to define condition types owned by the controller. In case of conflicts for the owned conditions, the patch helper will always use the value provided by the controller.
func (WithOwnedConditions) ApplyToHelper ¶ added in v0.3.7
func (w WithOwnedConditions) ApplyToHelper(in *HelperOptions)
ApplyToHelper applies this configuration to the given HelperOptions.
type WithOwnedV1Beta2Conditions ¶ added in v1.9.0
type WithOwnedV1Beta2Conditions struct {
Conditions []string
}
WithOwnedV1Beta2Conditions allows to define condition types owned by the controller. In case of conflicts for the owned conditions, the patch helper will always use the value provided by the controller.
func (WithOwnedV1Beta2Conditions) ApplyToHelper ¶ added in v1.9.0
func (w WithOwnedV1Beta2Conditions) ApplyToHelper(in *HelperOptions)
ApplyToHelper applies this configuration to the given HelperOptions.
type WithStatusObservedGeneration ¶ added in v0.3.7
type WithStatusObservedGeneration struct{}
WithStatusObservedGeneration sets the status.observedGeneration field on the incoming object to match metadata.generation, only if there is a change.
func (WithStatusObservedGeneration) ApplyToHelper ¶ added in v0.3.7
func (w WithStatusObservedGeneration) ApplyToHelper(in *HelperOptions)
ApplyToHelper applies this configuration to the given HelperOptions.