Improve webhooks logging
Signed-off-by: Andrea Mazzotti <andrea.mazzotti@suse.com>
This commit is contained in:
parent
18d45e5b00
commit
065a235939
|
|
@ -35,7 +35,7 @@ import (
|
|||
|
||||
var (
|
||||
cannotUseWithIgnition = fmt.Sprintf("not supported when spec.format is set to %q", Ignition)
|
||||
rke2configlog = logf.Log.WithName("rke2config-resource")
|
||||
rke2ConfigLogger = logf.Log.WithName("RKE2Config")
|
||||
)
|
||||
|
||||
// RKE2ConfigCustomDefaulter struct is responsible for setting default values on the custom resource of the
|
||||
|
|
@ -72,6 +72,8 @@ func (r *RKE2ConfigCustomDefaulter) Default(_ context.Context, obj runtime.Objec
|
|||
return apierrors.NewBadRequest(fmt.Sprintf("expected a RKE2Config but got a %T", obj))
|
||||
}
|
||||
|
||||
rke2ConfigLogger.Info("defaulting", "RKE2Config", klog.KObj(rc))
|
||||
|
||||
DefaultRKE2ConfigSpec(&rc.Spec)
|
||||
|
||||
return nil
|
||||
|
|
@ -95,7 +97,7 @@ func (r *RKE2ConfigCustomValidator) ValidateCreate(_ context.Context, obj runtim
|
|||
return nil, fmt.Errorf("expected a RKE2Config object but got %T", obj)
|
||||
}
|
||||
|
||||
rke2configlog.Info("RKE2Config validate create", "rke2config", klog.KObj(rc))
|
||||
rke2ConfigLogger.Info("validate create", "RKE2Config", klog.KObj(rc))
|
||||
|
||||
var allErrs field.ErrorList
|
||||
|
||||
|
|
@ -115,7 +117,7 @@ func (r *RKE2ConfigCustomValidator) ValidateUpdate(_ context.Context, _, newObj
|
|||
return nil, fmt.Errorf("expected a RKE2Config object but got %T", newObj)
|
||||
}
|
||||
|
||||
rke2configlog.Info("RKE2Config validate update", "rke2config", klog.KObj(newrc))
|
||||
rke2ConfigLogger.Info("validate update", "RKE2Config", klog.KObj(newrc))
|
||||
|
||||
var allErrs field.ErrorList
|
||||
|
||||
|
|
@ -129,7 +131,14 @@ func (r *RKE2ConfigCustomValidator) ValidateUpdate(_ context.Context, _, newObj
|
|||
}
|
||||
|
||||
// ValidateDelete implements webhook.Validator so a webhook will be registered for the type.
|
||||
func (r *RKE2ConfigCustomValidator) ValidateDelete(_ context.Context, _ runtime.Object) (admission.Warnings, error) {
|
||||
func (r *RKE2ConfigCustomValidator) ValidateDelete(_ context.Context, obj runtime.Object) (admission.Warnings, error) {
|
||||
rc, ok := obj.(*RKE2Config)
|
||||
if !ok {
|
||||
return nil, fmt.Errorf("expected a RKE2Config object but got %T", obj)
|
||||
}
|
||||
|
||||
rke2ConfigLogger.Info("validate delete", "RKE2Config", klog.KObj(rc))
|
||||
|
||||
return nil, nil
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -22,14 +22,15 @@ import (
|
|||
|
||||
apierrors "k8s.io/apimachinery/pkg/api/errors"
|
||||
"k8s.io/apimachinery/pkg/runtime"
|
||||
"k8s.io/klog/v2"
|
||||
ctrl "sigs.k8s.io/controller-runtime"
|
||||
logf "sigs.k8s.io/controller-runtime/pkg/log"
|
||||
"sigs.k8s.io/controller-runtime/pkg/webhook"
|
||||
"sigs.k8s.io/controller-runtime/pkg/webhook/admission"
|
||||
)
|
||||
|
||||
// RKE2configtemplatelog is for logging in this package.
|
||||
var RKE2configtemplatelog = logf.Log.WithName("RKE2configtemplate-resource")
|
||||
// rke2ConfigTemplateLogger the RKE2ConfigTemplate webhook logger.
|
||||
var rke2ConfigTemplateLogger = logf.Log.WithName("RKE2ConfigTemplate")
|
||||
|
||||
// RKE2ConfigTemplateCustomDefaulter struct is responsible for setting default values on the custom resource of the
|
||||
// Kind RKE2ConfigTemplate when those are created or updated.
|
||||
|
|
@ -65,7 +66,7 @@ func (r *RKE2ConfigTemplateCustomDefaulter) Default(_ context.Context, obj runti
|
|||
return apierrors.NewBadRequest(fmt.Sprintf("expected a RKE2ConfigTemplate but got a %T", obj))
|
||||
}
|
||||
|
||||
RKE2configtemplatelog.Info("default", "name", rct.Name)
|
||||
rke2ConfigTemplateLogger.Info("defaulting", "RKE2ConfigTemplate", klog.KObj(rct))
|
||||
|
||||
return nil
|
||||
}
|
||||
|
|
@ -81,7 +82,7 @@ func (r *RKE2ConfigTemplateCustomValidator) ValidateCreate(_ context.Context, ob
|
|||
return nil, fmt.Errorf("expected a RKE2ConfigTemplate object but got %T", obj)
|
||||
}
|
||||
|
||||
RKE2configtemplatelog.Info("validate create", "name", rct.Name)
|
||||
rke2ConfigTemplateLogger.Info("validate create", "RKE2ConfigTemplate", klog.KObj(rct))
|
||||
|
||||
return nil, nil
|
||||
}
|
||||
|
|
@ -93,7 +94,7 @@ func (r *RKE2ConfigTemplateCustomValidator) ValidateUpdate(_ context.Context, ol
|
|||
return nil, fmt.Errorf("expected a RKE2ConfigTemplate object but got %T", oldObj)
|
||||
}
|
||||
|
||||
RKE2configtemplatelog.Info("validate update", "name", rct.Name)
|
||||
rke2ConfigTemplateLogger.Info("validate update", "RKE2ConfigTemplate", klog.KObj(rct))
|
||||
|
||||
return nil, nil
|
||||
}
|
||||
|
|
@ -105,7 +106,7 @@ func (r *RKE2ConfigTemplateCustomValidator) ValidateDelete(_ context.Context, ob
|
|||
return nil, fmt.Errorf("expected a RKE2ConfigTemplate object but got %T", obj)
|
||||
}
|
||||
|
||||
RKE2configtemplatelog.Info("validate delete", "name", rct.Name)
|
||||
rke2ConfigTemplateLogger.Info("validate delete", "RKE2ConfigTemplate", klog.KObj(rct))
|
||||
|
||||
return nil, nil
|
||||
}
|
||||
|
|
|
|||
|
|
@ -40,8 +40,8 @@ const (
|
|||
defaultNodeVolumeDetachTimeout = 300 * time.Second
|
||||
)
|
||||
|
||||
// log is for logging in this package.
|
||||
var rke2controlplanelog = logf.Log.WithName("rke2controlplane-resource")
|
||||
// rke2ControlPlaneLogger is the RKE2ControlPlane webhook logger.
|
||||
var rke2ControlPlaneLogger = logf.Log.WithName("RKE2ControlPlane")
|
||||
|
||||
// RKE2ControlPlaneCustomDefaulter struct is responsible for setting default values on the custom resource of the
|
||||
// Kind RKE2ControlPlane when those are created or updated.
|
||||
|
|
@ -77,6 +77,8 @@ func (rd *RKE2ControlPlaneCustomDefaulter) Default(_ context.Context, obj runtim
|
|||
return apierrors.NewBadRequest(fmt.Sprintf("expected a RKE2ControlPlane but got a %T", obj))
|
||||
}
|
||||
|
||||
rke2ControlPlaneLogger.Info("defaulting", "RKE2ControlPlane", klog.KObj(rcp))
|
||||
|
||||
bootstrapv1.DefaultRKE2ConfigSpec(&rcp.Spec.RKE2ConfigSpec)
|
||||
|
||||
// Defaults missing MachineTemplate.InfrastructureRef to Spec.InfrastructureRef
|
||||
|
|
@ -129,7 +131,7 @@ func (rv *RKE2ControlPlaneCustomValidator) ValidateCreate(_ context.Context, obj
|
|||
return nil, fmt.Errorf("expected a RKE2ControlPlane object but got %T", obj)
|
||||
}
|
||||
|
||||
rke2controlplanelog.Info("RKE2ControlPlane validate create", "control-plane", klog.KObj(rcp))
|
||||
rke2ControlPlaneLogger.Info("validate create", "RKE2ControlPlane", klog.KObj(rcp))
|
||||
|
||||
var allErrs field.ErrorList
|
||||
|
||||
|
|
@ -157,6 +159,8 @@ func (rv *RKE2ControlPlaneCustomValidator) ValidateUpdate(_ context.Context, old
|
|||
return nil, fmt.Errorf("expected a RKE2ControlPlane object but got %T", newObj)
|
||||
}
|
||||
|
||||
rke2ControlPlaneLogger.Info("validate update", "RKE2ControlPlane", klog.KObj(oldControlplane))
|
||||
|
||||
var allErrs field.ErrorList
|
||||
|
||||
allErrs = append(allErrs, bootstrapv1.ValidateRKE2ConfigSpec(newControlplane.Name, &newControlplane.Spec.RKE2ConfigSpec)...)
|
||||
|
|
@ -173,7 +177,7 @@ func (rv *RKE2ControlPlaneCustomValidator) ValidateUpdate(_ context.Context, old
|
|||
// Ensure new fields NodeDrainTimeout, NodeVolumeDetachTimeout and NodeDeletionTimeout are mutable
|
||||
if oldControlplane.Spec.MachineTemplate.NodeDrainTimeout != nil && newControlplane.Spec.MachineTemplate.NodeDrainTimeout != nil &&
|
||||
oldControlplane.Spec.MachineTemplate.NodeDrainTimeout.Duration != newControlplane.Spec.MachineTemplate.NodeDrainTimeout.Duration {
|
||||
rke2controlplanelog.Info(
|
||||
rke2ControlPlaneLogger.Info(
|
||||
"NodeDrainTimeout field updated",
|
||||
"old", oldControlplane.Spec.MachineTemplate.NodeDrainTimeout.Duration,
|
||||
"new", newControlplane.Spec.MachineTemplate.NodeDrainTimeout.Duration,
|
||||
|
|
@ -182,7 +186,7 @@ func (rv *RKE2ControlPlaneCustomValidator) ValidateUpdate(_ context.Context, old
|
|||
|
||||
if oldControlplane.Spec.MachineTemplate.NodeVolumeDetachTimeout != nil && newControlplane.Spec.MachineTemplate.NodeVolumeDetachTimeout != nil &&
|
||||
oldControlplane.Spec.MachineTemplate.NodeVolumeDetachTimeout.Duration != newControlplane.Spec.MachineTemplate.NodeVolumeDetachTimeout.Duration {
|
||||
rke2controlplanelog.Info(
|
||||
rke2ControlPlaneLogger.Info(
|
||||
"NodeVolumeDetachTimeout field updated",
|
||||
"old", oldControlplane.Spec.MachineTemplate.NodeVolumeDetachTimeout.Duration,
|
||||
"new", newControlplane.Spec.MachineTemplate.NodeVolumeDetachTimeout.Duration,
|
||||
|
|
@ -191,7 +195,7 @@ func (rv *RKE2ControlPlaneCustomValidator) ValidateUpdate(_ context.Context, old
|
|||
|
||||
if oldControlplane.Spec.MachineTemplate.NodeDeletionTimeout != nil && newControlplane.Spec.MachineTemplate.NodeDeletionTimeout != nil &&
|
||||
oldControlplane.Spec.MachineTemplate.NodeDeletionTimeout.Duration != newControlplane.Spec.MachineTemplate.NodeDeletionTimeout.Duration {
|
||||
rke2controlplanelog.Info(
|
||||
rke2ControlPlaneLogger.Info(
|
||||
"NodeDeletionTimeout field updated",
|
||||
"old", oldControlplane.Spec.MachineTemplate.NodeDeletionTimeout.Duration,
|
||||
"new", newControlplane.Spec.MachineTemplate.NodeDeletionTimeout.Duration,
|
||||
|
|
@ -212,7 +216,7 @@ func (rv *RKE2ControlPlaneCustomValidator) ValidateDelete(_ context.Context, obj
|
|||
return nil, fmt.Errorf("expected a RKE2ControlPlane object but got %T", obj)
|
||||
}
|
||||
|
||||
rke2controlplanelog.Info("validate delete", "name", rcp.Name)
|
||||
rke2ControlPlaneLogger.Info("validate delete", "RKE2ControlPlane", klog.KObj(rcp))
|
||||
|
||||
return nil, nil
|
||||
}
|
||||
|
|
|
|||
|
|
@ -26,12 +26,16 @@ import (
|
|||
"k8s.io/apimachinery/pkg/util/validation/field"
|
||||
"k8s.io/klog/v2"
|
||||
ctrl "sigs.k8s.io/controller-runtime"
|
||||
logf "sigs.k8s.io/controller-runtime/pkg/log"
|
||||
"sigs.k8s.io/controller-runtime/pkg/webhook"
|
||||
"sigs.k8s.io/controller-runtime/pkg/webhook/admission"
|
||||
|
||||
bootstrapv1 "github.com/rancher/cluster-api-provider-rke2/bootstrap/api/v1beta1"
|
||||
)
|
||||
|
||||
// rke2ControlPlaneTemplateLogger is the RKE2ControlPlaneTemplate webhook logger.
|
||||
var rke2ControlPlaneTemplateLogger = logf.Log.WithName("RKE2ControlPlaneTemplate")
|
||||
|
||||
// RKE2ControlPlaneTemplateCustomDefaulter struct is responsible for setting default values on the custom resource of the
|
||||
// Kind RKE2ControlPlaneTemplate when those are created or updated.
|
||||
// NOTE: The +kubebuilder:object:generate=false marker prevents controller-gen from generating DeepCopy methods,
|
||||
|
|
@ -66,6 +70,8 @@ func (r *RKE2ControlPlaneTemplateCustomDefaulter) Default(_ context.Context, obj
|
|||
return apierrors.NewBadRequest(fmt.Sprintf("expected a RKE2ControlPlaneTemplate but got a %T", obj))
|
||||
}
|
||||
|
||||
rke2ControlPlaneTemplateLogger.Info("defaulting", "RKE2ControlPlaneTemplate", klog.KObj(rcpt))
|
||||
|
||||
bootstrapv1.DefaultRKE2ConfigSpec(&rcpt.Spec.Template.Spec.RKE2ConfigSpec)
|
||||
|
||||
return nil
|
||||
|
|
@ -82,7 +88,7 @@ func (r *RKE2ControlPlaneTemplateCustomValidator) ValidateCreate(_ context.Conte
|
|||
return nil, fmt.Errorf("expected a RKE2ControlPlaneTemplate object but got %T", obj)
|
||||
}
|
||||
|
||||
rke2controlplanelog.Info("RKE2ControlPlane validate create", "control-plane", klog.KObj(rcpt))
|
||||
rke2ControlPlaneTemplateLogger.Info("validate create", "RKE2ControlPlaneTemplate", klog.KObj(rcpt))
|
||||
|
||||
var allErrs field.ErrorList
|
||||
|
||||
|
|
@ -114,6 +120,8 @@ func (r *RKE2ControlPlaneTemplateCustomValidator) ValidateUpdate(_ context.Conte
|
|||
})
|
||||
}
|
||||
|
||||
rke2ControlPlaneTemplateLogger.Info("validate update", "RKE2ControlPlaneTemplate", klog.KObj(oldControlplane))
|
||||
|
||||
var allErrs field.ErrorList
|
||||
|
||||
allErrs = append(allErrs, bootstrapv1.ValidateRKE2ConfigSpec(newControlplane.Name, &newControlplane.Spec.Template.Spec.RKE2ConfigSpec)...)
|
||||
|
|
@ -144,7 +152,7 @@ func (r *RKE2ControlPlaneTemplateCustomValidator) ValidateDelete(_ context.Conte
|
|||
return nil, fmt.Errorf("expected a RKE2ControlPlaneTemplate object but got %T", obj)
|
||||
}
|
||||
|
||||
rke2controlplanelog.Info("validate delete", "name", rcpt.Name)
|
||||
rke2ControlPlaneTemplateLogger.Info("validate delete", "RKE2ControlPlaneTemplate", klog.KObj(rcpt))
|
||||
|
||||
return nil, nil
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue