1
0
Fork 0
mirror of https://github.com/kyverno/kyverno.git synced 2025-03-31 03:45:17 +00:00

fix build error

This commit is contained in:
Shuting Zhao 2020-01-09 17:53:27 -08:00
parent 5a44ab3e16
commit 2eb0e49306

View file

@ -1,7 +1,9 @@
package generate package generate
import ( import (
"errors"
"fmt" "fmt"
"reflect"
"github.com/golang/glog" "github.com/golang/glog"
kyverno "github.com/nirmata/kyverno/pkg/api/kyverno/v1" kyverno "github.com/nirmata/kyverno/pkg/api/kyverno/v1"
@ -11,7 +13,7 @@ import (
"github.com/nirmata/kyverno/pkg/engine/validate" "github.com/nirmata/kyverno/pkg/engine/validate"
"github.com/nirmata/kyverno/pkg/engine/variables" "github.com/nirmata/kyverno/pkg/engine/variables"
"github.com/nirmata/kyverno/pkg/policyviolation" "github.com/nirmata/kyverno/pkg/policyviolation"
"k8s.io/apimachinery/pkg/api/errors" apierrors "k8s.io/apimachinery/pkg/api/errors"
"k8s.io/apimachinery/pkg/apis/meta/v1/unstructured" "k8s.io/apimachinery/pkg/apis/meta/v1/unstructured"
"k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/runtime"
) )
@ -240,7 +242,7 @@ func handleData(ruleName string, generateRule kyverno.Generation, client *dclien
// check if resource exists // check if resource exists
obj, err := client.GetResource(generateRule.Kind, generateRule.Namespace, generateRule.Name) obj, err := client.GetResource(generateRule.Kind, generateRule.Namespace, generateRule.Name)
glog.V(4).Info(err) glog.V(4).Info(err)
if errors.IsNotFound(err) { if apierrors.IsNotFound(err) {
glog.V(4).Info(string(state)) glog.V(4).Info(string(state))
// Resource does not exist // Resource does not exist
if state == "" { if state == "" {
@ -283,14 +285,14 @@ func handleClone(generateRule kyverno.Generation, client *dclient.Client, resour
// resource exists // resource exists
return nil, nil return nil, nil
} }
if !errors.IsNotFound(err) { if !apierrors.IsNotFound(err) {
//something wrong while fetching resource //something wrong while fetching resource
return nil, err return nil, err
} }
// get reference clone resource // get reference clone resource
obj, err := client.GetResource(generateRule.Kind, generateRule.Clone.Namespace, generateRule.Clone.Name) obj, err := client.GetResource(generateRule.Kind, generateRule.Clone.Namespace, generateRule.Clone.Name)
if errors.IsNotFound(err) { if apierrors.IsNotFound(err) {
return nil, NewNotFound(generateRule.Kind, generateRule.Clone.Namespace, generateRule.Clone.Name) return nil, NewNotFound(generateRule.Kind, generateRule.Clone.Namespace, generateRule.Clone.Name)
} }
if err != nil { if err != nil {
@ -303,9 +305,9 @@ func handleClone(generateRule kyverno.Generation, client *dclient.Client, resour
func checkResource(ctx context.EvalInterface, newResourceSpec interface{}, resource *unstructured.Unstructured) (bool, error) { func checkResource(ctx context.EvalInterface, newResourceSpec interface{}, resource *unstructured.Unstructured) (bool, error) {
// check if the resource spec if a subset of the resource // check if the resource spec if a subset of the resource
path, err := validate.ValidateResourceWithPattern(ctx, resource.Object, newResourceSpec) path, err := validate.ValidateResourceWithPattern(ctx, resource.Object, newResourceSpec)
if err != nil { if !reflect.DeepEqual(err, validate.ValidationError{}) {
glog.V(4).Infof("config not a subset of resource. failed at path %s: %v", path, err) glog.V(4).Infof("config not a subset of resource. failed at path %s: %v", path, err)
return false, err return false, errors.New(err.ErrorMsg)
} }
return true, nil return true, nil
} }