Skip to content

Commit

Permalink
webhook to use controller-runtime set log
Browse files Browse the repository at this point in the history
Signed-off-by: adrianc <adrianc@nvidia.com>
  • Loading branch information
adrianchiris committed Oct 22, 2023
1 parent fdd45cc commit b7f5a90
Show file tree
Hide file tree
Showing 5 changed files with 26 additions and 25 deletions.
4 changes: 2 additions & 2 deletions pkg/webhook/client.go
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,10 @@ package webhook
import (
"os"

"github.com/golang/glog"
"k8s.io/client-go/kubernetes"
"k8s.io/client-go/rest"
"k8s.io/client-go/tools/clientcmd"
"sigs.k8s.io/controller-runtime/pkg/log"

snclientset "github.com/k8snetworkplumbingwg/sriov-network-operator/pkg/client/clientset/versioned"
)
Expand All @@ -27,7 +27,7 @@ func SetupInClusterClient() error {
}

if err != nil {
glog.Error("fail to setup client")
log.Log.Error(nil, "fail to setup client")
return err
}

Expand Down
4 changes: 2 additions & 2 deletions pkg/webhook/config.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import (
"crypto/tls"
"sync"

"github.com/golang/glog"
"sigs.k8s.io/controller-runtime/pkg/log"
)

// Config contains the server (the webhook) cert and key.
Expand All @@ -25,7 +25,7 @@ func (keyPair *tlsKeypairReloader) Reload() error {
if err != nil {
return err
}
glog.Infof("cetificate reloaded")
log.Log.Info("cetificate reloaded")
keyPair.certMutex.Lock()
defer keyPair.certMutex.Unlock()
keyPair.cert = &newCert
Expand Down
12 changes: 6 additions & 6 deletions pkg/webhook/mutate.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ import (
"encoding/json"
"strings"

"github.com/golang/glog"
v1 "k8s.io/api/admission/v1"
"sigs.k8s.io/controller-runtime/pkg/log"

constants "github.com/k8snetworkplumbingwg/sriov-network-operator/pkg/consts"
)
Expand All @@ -18,7 +18,7 @@ var (
)

func mutateSriovNetworkNodePolicy(cr map[string]interface{}) (*v1.AdmissionResponse, error) {
glog.V(2).Infof("mutateSriovNetworkNodePolicy(): set default value")
log.Log.V(2).Info("mutateSriovNetworkNodePolicy(): set default value")
reviewResponse := v1.AdmissionResponse{}
reviewResponse.Allowed = true

Expand All @@ -31,20 +31,20 @@ func mutateSriovNetworkNodePolicy(cr map[string]interface{}) (*v1.AdmissionRespo
patchs := []map[string]interface{}{}
spec := cr["spec"]
if _, ok := spec.(map[string]interface{})["priority"]; !ok {
glog.V(2).Infof("mutateSriovNetworkNodePolicy(): set default priority to lowest for %v", name)
log.Log.V(2).Info("mutateSriovNetworkNodePolicy(): set default priority to lowest for", "policy-name", name)
patchs = append(patchs, defaultPriorityPatch)
}
if _, ok := spec.(map[string]interface{})["deviceType"]; !ok {
glog.V(2).Infof("mutateSriovNetworkNodePolicy(): set default deviceType to netdevice for %v", name)
log.Log.V(2).Info("mutateSriovNetworkNodePolicy(): set default deviceType to netdevice for policy", "policy-name", name)
patchs = append(patchs, defaultDeviceTypePatch)
}
if _, ok := spec.(map[string]interface{})["isRdma"]; !ok {
glog.V(2).Infof("mutateSriovNetworkNodePolicy(): set default isRdma to false for %v", name)
log.Log.V(2).Info("mutateSriovNetworkNodePolicy(): set default isRdma to false for policy", "policy-name", name)
patchs = append(patchs, defaultIsRdmaPatch)
}
// Device with InfiniBand link type requires isRdma to be true
if str, ok := spec.(map[string]interface{})["linkType"].(string); ok && strings.EqualFold(str, constants.LinkTypeIB) {
glog.V(2).Infof("mutateSriovNetworkNodePolicy(): set isRdma to true for %v since ib link type is detected", name)
log.Log.V(2).Info("mutateSriovNetworkNodePolicy(): set isRdma to true for policy since ib link type is detected", "policy-name", name)
patchs = append(patchs, InfiniBandIsRdmaPatch)
}
var err error
Expand Down
17 changes: 9 additions & 8 deletions pkg/webhook/validate.go
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@ import (

Check failure on line 10 in pkg/webhook/validate.go

View workflow job for this annotation

GitHub Actions / Golangci-lint

File is not `goimports`-ed with -local github.com/k8snetworkplumbingwg/sriov-network-operator (goimports)
constants "github.com/k8snetworkplumbingwg/sriov-network-operator/pkg/consts"
"github.com/k8snetworkplumbingwg/sriov-network-operator/pkg/utils"
"sigs.k8s.io/controller-runtime/pkg/log"

"github.com/golang/glog"
v1 "k8s.io/api/admission/v1"
corev1 "k8s.io/api/core/v1"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
Expand All @@ -34,7 +34,7 @@ var (
)

func validateSriovOperatorConfig(cr *sriovnetworkv1.SriovOperatorConfig, operation v1.Operation) (bool, []string, error) {
glog.V(2).Infof("validateSriovOperatorConfig: %v", cr)
log.Log.V(2).Info("validateSriovOperatorConfig", "object", cr)
var warnings []string

if cr.GetName() != constants.DefaultConfigName {
Expand Down Expand Up @@ -94,7 +94,7 @@ func validateSriovOperatorConfigDisableDrain(cr *sriovnetworkv1.SriovOperatorCon
}

func validateSriovNetworkNodePolicy(cr *sriovnetworkv1.SriovNetworkNodePolicy, operation v1.Operation) (bool, []string, error) {
glog.V(2).Infof("validateSriovNetworkNodePolicy: %v", cr)
log.Log.V(2).Info("validateSriovNetworkNodePolicy", "object", cr)
var warnings []string

if cr.GetName() == constants.DefaultPolicyName && cr.GetNamespace() == os.Getenv("NAMESPACE") {
Expand Down Expand Up @@ -143,7 +143,7 @@ func staticValidateSriovNetworkNodePolicy(cr *sriovnetworkv1.SriovNetworkNodePol
devMode := false
if os.Getenv("DEV_MODE") == "TRUE" {
devMode = true
glog.V(0).Info("dev mode enabled - Admitting not supported NICs")
log.Log.V(0).Info("dev mode enabled - Admitting not supported NICs")
}

if !devMode {
Expand Down Expand Up @@ -255,7 +255,7 @@ func dynamicValidateSriovNetworkNodePolicy(cr *sriovnetworkv1.SriovNetworkNodePo
if !interfaceSelected {
for nodeName, messages := range nodeInterfaceErrorList {
for _, message := range messages {
glog.V(2).Infof("%s: %s", nodeName, message)
log.Log.V(2).Info("interface selection errors", "nodeName", nodeName, "message", message)
}
}
return false, fmt.Errorf("no supported NIC is selected by the nicSelector in CR %s", cr.GetName())
Expand Down Expand Up @@ -290,7 +290,8 @@ func validatePolicyForNodeStateAndPolicy(nsList *sriovnetworkv1.SriovNetworkNode
}

func validatePolicyForNodeState(policy *sriovnetworkv1.SriovNetworkNodePolicy, state *sriovnetworkv1.SriovNetworkNodeState, node *corev1.Node) ([]string, error) {
glog.V(2).Infof("validatePolicyForNodeState(): validate policy %s for node %s.", policy.GetName(), state.GetName())
log.Log.V(2).Info("validatePolicyForNodeState(): validate policy for node", "policy-name",
policy.GetName(), "node-name", state.GetName())
interfaceSelectedForNode := false
var noInterfacesSelectedLog []string
for _, iface := range state.Status.Interfaces {
Expand Down Expand Up @@ -339,8 +340,8 @@ func validatePolicyForNodeState(policy *sriovnetworkv1.SriovNetworkNodePolicy, s
}

func validatePolicyForNodePolicy(current *sriovnetworkv1.SriovNetworkNodePolicy, previous *sriovnetworkv1.SriovNetworkNodePolicy) error {
glog.V(2).Infof("validateConflictPolicy(): validate policy %s against policy %s",
current.GetName(), previous.GetName())
log.Log.V(2).Info("validateConflictPolicy(): validate policy against policy",
"source", current.GetName(), "target", previous.GetName())

if current.GetName() == previous.GetName() {
return nil
Expand Down
14 changes: 7 additions & 7 deletions pkg/webhook/webhook.go
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,9 @@ import (
"encoding/json"
"os"

"github.com/golang/glog"
v1 "k8s.io/api/admission/v1"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"sigs.k8s.io/controller-runtime/pkg/log"

sriovnetworkv1 "github.com/k8snetworkplumbingwg/sriov-network-operator/api/v1"
)
Expand All @@ -21,27 +21,27 @@ func RetriveSupportedNics() error {
}

func MutateCustomResource(ar v1.AdmissionReview) *v1.AdmissionResponse {
glog.V(2).Info("mutating custom resource")
log.Log.V(2).Info("mutating custom resource")

cr := map[string]interface{}{}

raw := ar.Request.Object.Raw
err := json.Unmarshal(raw, &cr)
if err != nil {
glog.Error(err)
log.Log.Error(err, "failed to unmarshal object")
return toV1AdmissionResponse(err)
}
var reviewResp *v1.AdmissionResponse
if reviewResp, err = mutateSriovNetworkNodePolicy(cr); err != nil {
glog.Error(err)
log.Log.Error(err, "failed to mutate object")
return toV1AdmissionResponse(err)
}

return reviewResp
}

func ValidateCustomResource(ar v1.AdmissionReview) *v1.AdmissionResponse {
glog.V(2).Info("validating custom resource")
log.Log.V(2).Info("validating custom resource")
var err error
var raw []byte

Expand All @@ -59,7 +59,7 @@ func ValidateCustomResource(ar v1.AdmissionReview) *v1.AdmissionResponse {

err = json.Unmarshal(raw, &policy)
if err != nil {
glog.Error(err)
log.Log.Error(err, "failed to unmarshal object")
return toV1AdmissionResponse(err)
}

Expand All @@ -73,7 +73,7 @@ func ValidateCustomResource(ar v1.AdmissionReview) *v1.AdmissionResponse {

err = json.Unmarshal(raw, &config)
if err != nil {
glog.Error(err)
log.Log.Error(err, "failed to unmarshal object")
return toV1AdmissionResponse(err)
}

Expand Down

0 comments on commit b7f5a90

Please sign in to comment.