diff --git a/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/capmanagers_test.go b/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/capmanagers_test.go index 221dc9eae06..aed2d76f6e9 100644 --- a/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/capmanagers_test.go +++ b/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/capmanagers_test.go @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -package fieldmanager +package fieldmanager_test import ( "bytes" @@ -29,18 +29,19 @@ import ( "k8s.io/apimachinery/pkg/apis/meta/v1/unstructured" "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/runtime/schema" + "k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager" "sigs.k8s.io/structured-merge-diff/v4/fieldpath" ) type fakeManager struct{} -var _ Manager = &fakeManager{} +var _ fieldmanager.Manager = &fakeManager{} -func (*fakeManager) Update(_, newObj runtime.Object, managed Managed, _ string) (runtime.Object, Managed, error) { +func (*fakeManager) Update(_, newObj runtime.Object, managed fieldmanager.Managed, _ string) (runtime.Object, fieldmanager.Managed, error) { return newObj, managed, nil } -func (*fakeManager) Apply(_, _ runtime.Object, _ Managed, _ string, _ bool) (runtime.Object, Managed, error) { +func (*fakeManager) Apply(_, _ runtime.Object, _ fieldmanager.Managed, _ string, _ bool) (runtime.Object, fieldmanager.Managed, error) { panic("not implemented") return nil, nil, nil } @@ -48,8 +49,8 @@ func (*fakeManager) Apply(_, _ runtime.Object, _ Managed, _ string, _ bool) (run func TestCapManagersManagerMergesEntries(t *testing.T) { f := NewTestFieldManager(schema.FromAPIVersionAndKind("v1", "Pod"), "", - func(m Manager) Manager { - return NewCapManagersManager(m, 3) + func(m fieldmanager.Manager) fieldmanager.Manager { + return fieldmanager.NewCapManagersManager(m, 3) }) podWithLabels := func(labels ...string) runtime.Object { @@ -114,8 +115,8 @@ func TestCapManagersManagerMergesEntries(t *testing.T) { func TestCapUpdateManagers(t *testing.T) { f := NewTestFieldManager(schema.FromAPIVersionAndKind("v1", "Pod"), "", - func(m Manager) Manager { - return NewCapManagersManager(m, 3) + func(m fieldmanager.Manager) fieldmanager.Manager { + return fieldmanager.NewCapManagersManager(m, 3) }) set := func(fields ...string) *metav1.FieldsV1 { 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 a96e7ab1e01..8823bbfed0b 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 @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -package fieldmanager +package fieldmanager_test import ( "errors" @@ -36,6 +36,7 @@ import ( "k8s.io/apimachinery/pkg/runtime/schema" "k8s.io/apimachinery/pkg/runtime/serializer" yamlutil "k8s.io/apimachinery/pkg/util/yaml" + "k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager" "k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/internal" "k8s.io/kube-openapi/pkg/util/proto" prototesting "k8s.io/kube-openapi/pkg/util/proto/testing" @@ -89,7 +90,7 @@ func (sameVersionConverter) IsMissingVersionError(error) bool { } type TestFieldManager struct { - fieldManager *FieldManager + fieldManager *fieldmanager.FieldManager apiVersion string emptyObj runtime.Object liveObj runtime.Object @@ -99,12 +100,12 @@ func NewDefaultTestFieldManager(gvk schema.GroupVersionKind) TestFieldManager { return NewTestFieldManager(gvk, "", nil) } -func NewTestFieldManager(gvk schema.GroupVersionKind, subresource string, chainFieldManager func(Manager) Manager) TestFieldManager { +func NewTestFieldManager(gvk schema.GroupVersionKind, subresource string, chainFieldManager func(fieldmanager.Manager) fieldmanager.Manager) TestFieldManager { m := NewFakeOpenAPIModels() typeConverter := NewFakeTypeConverter(m) apiVersion := fieldpath.APIVersion(gvk.GroupVersion().String()) objectConverter := &fakeObjectConvertor{sameVersionConverter{}, apiVersion} - f, err := NewStructuredMergeManager( + f, err := fieldmanager.NewStructuredMergeManager( typeConverter, objectConverter, &fakeObjectDefaulter{}, @@ -118,14 +119,14 @@ func NewTestFieldManager(gvk schema.GroupVersionKind, subresource string, chainF live := &unstructured.Unstructured{} live.SetKind(gvk.Kind) live.SetAPIVersion(gvk.GroupVersion().String()) - f = NewLastAppliedUpdater( - NewLastAppliedManager( - NewProbabilisticSkipNonAppliedManager( - NewBuildManagerInfoManager( - NewManagedFieldsUpdater( - NewStripMetaManager(f), + f = fieldmanager.NewLastAppliedUpdater( + fieldmanager.NewLastAppliedManager( + fieldmanager.NewProbabilisticSkipNonAppliedManager( + fieldmanager.NewBuildManagerInfoManager( + fieldmanager.NewManagedFieldsUpdater( + fieldmanager.NewStripMetaManager(f), ), gvk.GroupVersion(), subresource, - ), &fakeObjectCreater{gvk: gvk}, gvk, DefaultTrackOnCreateProbability, + ), &fakeObjectCreater{gvk: gvk}, gvk, fieldmanager.DefaultTrackOnCreateProbability, ), typeConverter, objectConverter, gvk.GroupVersion(), ), ) @@ -133,15 +134,15 @@ func NewTestFieldManager(gvk schema.GroupVersionKind, subresource string, chainF f = chainFieldManager(f) } return TestFieldManager{ - fieldManager: NewFieldManager(f, subresource), + fieldManager: fieldmanager.NewFieldManager(f, subresource), apiVersion: gvk.GroupVersion().String(), emptyObj: live, liveObj: live.DeepCopyObject(), } } -func NewFakeTypeConverter(m proto.Models) TypeConverter { - tc, err := NewTypeConverter(m, false) +func NewFakeTypeConverter(m proto.Models) fieldmanager.TypeConverter { + tc, err := fieldmanager.NewTypeConverter(m, false) if err != nil { panic(fmt.Sprintf("Failed to build TypeConverter: %v", err)) } diff --git a/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/lastappliedmanager_test.go b/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/lastappliedmanager_test.go index a7efed2ea68..2ea3f4a6e52 100644 --- a/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/lastappliedmanager_test.go +++ b/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/lastappliedmanager_test.go @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -package fieldmanager +package fieldmanager_test import ( "fmt" diff --git a/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/lastappliedupdater_test.go b/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/lastappliedupdater_test.go index e2832ed06b0..63e18ae75cc 100644 --- a/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/lastappliedupdater_test.go +++ b/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/lastappliedupdater_test.go @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -package fieldmanager +package fieldmanager_test import ( "fmt" @@ -26,14 +26,15 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/apis/meta/v1/unstructured" "k8s.io/apimachinery/pkg/runtime/schema" + "k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager" "sigs.k8s.io/yaml" ) func TestLastAppliedUpdater(t *testing.T) { f := NewTestFieldManager(schema.FromAPIVersionAndKind("apps/v1", "Deployment"), "", - func(m Manager) Manager { - return NewLastAppliedUpdater(m) + func(m fieldmanager.Manager) fieldmanager.Manager { + return fieldmanager.NewLastAppliedUpdater(m) }) originalLastApplied := `nonempty` @@ -189,8 +190,8 @@ func TestLargeLastApplied(t *testing.T) { t.Run(test.name, func(t *testing.T) { f := NewTestFieldManager(schema.FromAPIVersionAndKind("v1", "ConfigMap"), "", - func(m Manager) Manager { - return NewLastAppliedUpdater(m) + func(m fieldmanager.Manager) fieldmanager.Manager { + return fieldmanager.NewLastAppliedUpdater(m) }) if err := f.Apply(test.oldObject, "kubectl", false); err != nil { diff --git a/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/managedfieldsupdater_test.go b/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/managedfieldsupdater_test.go index b8ff34d40cf..d5b5ad36afa 100644 --- a/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/managedfieldsupdater_test.go +++ b/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/managedfieldsupdater_test.go @@ -14,19 +14,21 @@ See the License for the specific language governing permissions and limitations under the License. */ -package fieldmanager +package fieldmanager_test import ( "fmt" - v1 "k8s.io/apimachinery/pkg/apis/meta/v1" "reflect" "testing" "time" + v1 "k8s.io/apimachinery/pkg/apis/meta/v1" + "k8s.io/apimachinery/pkg/api/meta" "k8s.io/apimachinery/pkg/apis/meta/v1/unstructured" "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/runtime/schema" + "k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager" "k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/internal" "sigs.k8s.io/yaml" ) @@ -425,11 +427,11 @@ func TestTakingOverManagedFieldsDuringApplyDoesNotModifyPreviousManagerTime(t *t type NoopManager struct{} -func (NoopManager) Apply(liveObj, appliedObj runtime.Object, managed Managed, fieldManager string, force bool) (runtime.Object, Managed, error) { +func (NoopManager) Apply(liveObj, appliedObj runtime.Object, managed fieldmanager.Managed, fieldManager string, force bool) (runtime.Object, fieldmanager.Managed, error) { return nil, managed, nil } -func (NoopManager) Update(liveObj, newObj runtime.Object, managed Managed, manager string) (runtime.Object, Managed, error) { +func (NoopManager) Update(liveObj, newObj runtime.Object, managed fieldmanager.Managed, manager string) (runtime.Object, fieldmanager.Managed, error) { return nil, nil, nil } @@ -495,12 +497,12 @@ func TestNilNewObjectReplacedWithDeepCopyExcludingManagedFields(t *testing.T) { } // Decode the managed fields in the live object, since it isn't allowed in the patch. - managed, err := DecodeManagedFields(accessor.GetManagedFields()) + managed, err := fieldmanager.DecodeManagedFields(accessor.GetManagedFields()) if err != nil { t.Fatalf("failed to decode managed fields: %v", err) } - updater := NewManagedFieldsUpdater(NoopManager{}) + updater := fieldmanager.NewManagedFieldsUpdater(NoopManager{}) newObject, _, err := updater.Apply(obj, obj.DeepCopyObject(), managed, "some_manager", false) if err != nil { diff --git a/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/skipnonapplied_test.go b/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/skipnonapplied_test.go index a001dd0c02e..02e3dd03dda 100644 --- a/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/skipnonapplied_test.go +++ b/staging/src/k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager/skipnonapplied_test.go @@ -14,7 +14,7 @@ See the License for the specific language governing permissions and limitations under the License. */ -package fieldmanager +package fieldmanager_test import ( "strings" @@ -25,6 +25,7 @@ import ( "k8s.io/apimachinery/pkg/apis/meta/v1/unstructured" "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/runtime/schema" + "k8s.io/apiserver/pkg/endpoints/handlers/fieldmanager" "sigs.k8s.io/yaml" ) @@ -42,8 +43,8 @@ func (f *fakeObjectCreater) New(_ schema.GroupVersionKind) (runtime.Object, erro } func TestNoUpdateBeforeFirstApply(t *testing.T) { - f := NewTestFieldManager(schema.FromAPIVersionAndKind("v1", "Pod"), "", func(m Manager) Manager { - return NewSkipNonAppliedManager( + f := NewTestFieldManager(schema.FromAPIVersionAndKind("v1", "Pod"), "", func(m fieldmanager.Manager) fieldmanager.Manager { + return fieldmanager.NewSkipNonAppliedManager( m, &fakeObjectCreater{gvk: schema.GroupVersionKind{Version: "v1", Kind: "Pod"}}, schema.GroupVersionKind{}, @@ -82,8 +83,8 @@ func TestNoUpdateBeforeFirstApply(t *testing.T) { } func TestUpdateBeforeFirstApply(t *testing.T) { - f := NewTestFieldManager(schema.FromAPIVersionAndKind("v1", "Pod"), "", func(m Manager) Manager { - return NewSkipNonAppliedManager( + f := NewTestFieldManager(schema.FromAPIVersionAndKind("v1", "Pod"), "", func(m fieldmanager.Manager) fieldmanager.Manager { + return fieldmanager.NewSkipNonAppliedManager( m, &fakeObjectCreater{gvk: schema.GroupVersionKind{Version: "v1", Kind: "Pod"}}, schema.GroupVersionKind{},