From 78ba7fa05c4360e217af3854c5ae5ba4e823312f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kevin=20Wiesm=C3=BCller?= Date: Sun, 17 Feb 2019 22:35:15 +0100 Subject: [PATCH 1/5] add more fields to be stripped from managedFields --- .../pkg/endpoints/handlers/fieldmanager/fieldmanager.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/fieldmanager.go b/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/fieldmanager.go index a890e932500..3f0c84c42a8 100644 --- a/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/fieldmanager.go +++ b/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/fieldmanager.go @@ -233,8 +233,12 @@ var stripSet = fieldpath.NewSet( fieldpath.MakePathOrDie("metadata", "name"), fieldpath.MakePathOrDie("metadata", "namespace"), fieldpath.MakePathOrDie("metadata", "creationTimestamp"), + fieldpath.MakePathOrDie("metadata", "deletionTimestamp"), fieldpath.MakePathOrDie("metadata", "selfLink"), fieldpath.MakePathOrDie("metadata", "uid"), + fieldpath.MakePathOrDie("metadata", "clusterName"), + fieldpath.MakePathOrDie("metadata", "generation"), + fieldpath.MakePathOrDie("metadata", "managedFields"), fieldpath.MakePathOrDie("metadata", "resourceVersion"), ) From 89f4f9d4bfe5dd14a11e94ff13b1efa676a2d59f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kevin=20Wiesm=C3=BCller?= Date: Sat, 23 Feb 2019 12:54:33 +0100 Subject: [PATCH 2/5] add tests for new stripped fields and cleanup test --- .../fieldmanager/fieldmanager_test.go | 24 +++++-------------- 1 file changed, 6 insertions(+), 18 deletions(-) diff --git a/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/fieldmanager_test.go b/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/fieldmanager_test.go index c4edbc2adae..b9b768c8551 100644 --- a/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/fieldmanager_test.go +++ b/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/fieldmanager_test.go @@ -19,11 +19,9 @@ package fieldmanager_test import ( "errors" "testing" - "time" corev1 "k8s.io/api/core/v1" "k8s.io/apimachinery/pkg/api/meta" - metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/runtime/schema" "k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager" @@ -71,14 +69,7 @@ func TestFieldManagerCreation(t *testing.T) { func TestApplyStripsFields(t *testing.T) { f := NewTestFieldManager(t) - obj := &corev1.Pod{ - ObjectMeta: metav1.ObjectMeta{ - Name: "a", - Namespace: "a", - CreationTimestamp: metav1.Time{Time: time.Time{}}, - SelfLink: "a", - }, - } + obj := &corev1.Pod{} newObj, err := f.Apply(obj, []byte(`{ "apiVersion": "v1", @@ -87,8 +78,12 @@ func TestApplyStripsFields(t *testing.T) { "name": "b", "namespace": "b", "creationTimestamp": "2016-05-19T09:59:00Z", + "deletionTimestamp": "2016-05-19T09:59:00Z", "selfLink": "b", "uid": "b", + "clusterName": "b", + "generation": 0, + "managedFields": [], "resourceVersion": "b" } }`), false) @@ -108,14 +103,7 @@ func TestApplyStripsFields(t *testing.T) { func TestApplyDoesNotStripLabels(t *testing.T) { f := NewTestFieldManager(t) - obj := &corev1.Pod{ - ObjectMeta: metav1.ObjectMeta{ - Name: "a", - Namespace: "a", - CreationTimestamp: metav1.Time{Time: time.Time{}}, - SelfLink: "a", - }, - } + obj := &corev1.Pod{} newObj, err := f.Apply(obj, []byte(`{ "apiVersion": "v1", From a7d414817fa39a0d1d60603cbc1150a22c7234fa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kevin=20Wiesm=C3=BCller?= Date: Mon, 25 Feb 2019 14:53:24 +0100 Subject: [PATCH 3/5] fix bazel --- .../k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/BUILD | 1 - 1 file changed, 1 deletion(-) diff --git a/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/BUILD b/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/BUILD index 6abb2845a93..1c2892a40e2 100644 --- a/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/BUILD +++ b/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/BUILD @@ -42,7 +42,6 @@ go_test( deps = [ "//staging/src/k8s.io/api/core/v1:go_default_library", "//staging/src/k8s.io/apimachinery/pkg/api/meta:go_default_library", - "//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library", "//staging/src/k8s.io/apimachinery/pkg/runtime:go_default_library", "//staging/src/k8s.io/apimachinery/pkg/runtime/schema:go_default_library", ], From d73dbfc8c1bdc443cf6bf2f70a7789b689815cf7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kevin=20Wiesm=C3=BCller?= Date: Tue, 26 Feb 2019 20:22:30 +0100 Subject: [PATCH 4/5] remove deletionTimestamp from strippedFields --- .../pkg/endpoints/handlers/fieldmanager/fieldmanager.go | 1 - .../pkg/endpoints/handlers/fieldmanager/fieldmanager_test.go | 1 - 2 files changed, 2 deletions(-) diff --git a/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/fieldmanager.go b/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/fieldmanager.go index 3f0c84c42a8..08c9e0eb594 100644 --- a/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/fieldmanager.go +++ b/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/fieldmanager.go @@ -233,7 +233,6 @@ var stripSet = fieldpath.NewSet( fieldpath.MakePathOrDie("metadata", "name"), fieldpath.MakePathOrDie("metadata", "namespace"), fieldpath.MakePathOrDie("metadata", "creationTimestamp"), - fieldpath.MakePathOrDie("metadata", "deletionTimestamp"), fieldpath.MakePathOrDie("metadata", "selfLink"), fieldpath.MakePathOrDie("metadata", "uid"), fieldpath.MakePathOrDie("metadata", "clusterName"), diff --git a/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/fieldmanager_test.go b/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/fieldmanager_test.go index b9b768c8551..cf6cb18db67 100644 --- a/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/fieldmanager_test.go +++ b/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/fieldmanager_test.go @@ -78,7 +78,6 @@ func TestApplyStripsFields(t *testing.T) { "name": "b", "namespace": "b", "creationTimestamp": "2016-05-19T09:59:00Z", - "deletionTimestamp": "2016-05-19T09:59:00Z", "selfLink": "b", "uid": "b", "clusterName": "b", From 8a6a2883f9a38e09ae941b62c14f4e68037b2d21 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kevin=20Wiesm=C3=BCller?= Date: Tue, 26 Feb 2019 20:22:54 +0100 Subject: [PATCH 5/5] test that managedFields get stripped recursively --- .../handlers/fieldmanager/fieldmanager_test.go | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/fieldmanager_test.go b/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/fieldmanager_test.go index cf6cb18db67..82aa6a84a32 100644 --- a/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/fieldmanager_test.go +++ b/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/fieldmanager_test.go @@ -82,7 +82,18 @@ func TestApplyStripsFields(t *testing.T) { "uid": "b", "clusterName": "b", "generation": 0, - "managedFields": [], + "managedFields": [{ + "manager": "apply", + "operation": "Apply", + "apiVersion": "v1", + "fields": { + "f:metadata": { + "f:labels": { + "f:test-label": {} + } + } + } + }], "resourceVersion": "b" } }`), false)