summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--edge/pkg/metamanager/metaserver/kubernetes/scope/scope.go25
-rw-r--r--go.mod2
2 files changed, 26 insertions, 1 deletions
diff --git a/edge/pkg/metamanager/metaserver/kubernetes/scope/scope.go b/edge/pkg/metamanager/metaserver/kubernetes/scope/scope.go
index 579f4886c..4da87f299 100644
--- a/edge/pkg/metamanager/metaserver/kubernetes/scope/scope.go
+++ b/edge/pkg/metamanager/metaserver/kubernetes/scope/scope.go
@@ -6,14 +6,38 @@ import (
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/runtime"
"k8s.io/apimachinery/pkg/runtime/schema"
+ "k8s.io/apimachinery/pkg/util/managedfields"
"k8s.io/apiserver/pkg/endpoints/handlers"
"k8s.io/client-go/kubernetes/scheme"
+ "k8s.io/klog/v2"
+ "k8s.io/kube-openapi/pkg/validation/spec"
+ "sigs.k8s.io/structured-merge-diff/v4/fieldpath"
"github.com/kubeedge/kubeedge/edge/pkg/metamanager/metaserver/kubernetes/fakers"
"github.com/kubeedge/kubeedge/edge/pkg/metamanager/metaserver/kubernetes/serializer"
)
func NewRequestScope() *handlers.RequestScope {
+ fakeTypeConverter, err := managedfields.NewTypeConverter(make(map[string]*spec.Schema), false)
+ if err != nil {
+ klog.Errorf("Failed to create TypeConverter: %v\n", err)
+ return nil
+ }
+ fakeFieldManager, err := managedfields.NewDefaultFieldManager(
+ fakeTypeConverter,
+ nil,
+ fakers.NewFakeObjectDefaulter(),
+ nil,
+ schema.GroupVersionKind{},
+ schema.GroupVersion{},
+ "",
+ make(map[fieldpath.APIVersion]*fieldpath.Set),
+ )
+ if err != nil {
+ klog.Errorf("Failed to create FieldManager: %v\n", err)
+ return nil
+ }
+
requestScope := handlers.RequestScope{
Namer: handlers.ContextBasedNaming{
Namer: meta.NewAccessor(),
@@ -32,6 +56,7 @@ func NewRequestScope() *handlers.RequestScope {
EquivalentResourceMapper: runtime.NewEquivalentResourceRegistry(),
TableConvertor: nil,
+ FieldManager: fakeFieldManager,
Resource: schema.GroupVersionResource{},
Subresource: "",
diff --git a/go.mod b/go.mod
index a280be91c..7f5daa362 100644
--- a/go.mod
+++ b/go.mod
@@ -63,6 +63,7 @@ require (
golang.org/x/text v0.13.0
gopkg.in/square/go-jose.v2 v2.6.0
gopkg.in/yaml.v3 v3.0.1
+ sigs.k8s.io/structured-merge-diff/v4 v4.2.3
)
require (
@@ -272,7 +273,6 @@ require (
sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd // indirect
sigs.k8s.io/kustomize/api v0.13.2 // indirect
sigs.k8s.io/kustomize/kyaml v0.14.1 // indirect
- sigs.k8s.io/structured-merge-diff/v4 v4.2.3 // indirect
)
replace (