From 644eb700859004c644fe3ad152044510cf5898b8 Mon Sep 17 00:00:00 2001 From: Clayton Coleman Date: Thu, 23 Oct 2014 16:51:34 -0400 Subject: [PATCH] Refactor tests to split ObjectMeta from TypeMeta --- cmd/integration/integration.go | 27 +-- examples/examples_test.go | 4 +- pkg/api/context_test.go | 8 +- pkg/api/latest/latest_test.go | 20 ++- pkg/api/ref_test.go | 11 +- pkg/api/serialization_test.go | 37 +++- pkg/api/v1beta1/conversion_test.go | 4 +- pkg/api/validation/validation_test.go | 159 ++++++++++-------- pkg/apiserver/apiserver_test.go | 10 +- pkg/apiserver/operation_test.go | 6 +- pkg/client/cache/reflector_test.go | 20 +-- pkg/client/client_test.go | 138 ++++++++------- pkg/client/record/event_test.go | 2 +- pkg/client/request_test.go | 12 +- .../controller/minioncontroller_test.go | 10 +- pkg/controller/replication_controller_test.go | 26 ++- pkg/kubecfg/kubecfg_test.go | 8 +- pkg/kubecfg/parse_test.go | 27 +-- pkg/kubecfg/resource_printer_test.go | 4 +- pkg/kubectl/resource_printer_test.go | 2 +- pkg/kubelet/config/config_test.go | 6 +- pkg/kubelet/config/etcd_test.go | 16 +- pkg/kubelet/config/file_test.go | 4 +- pkg/kubelet/config/http_test.go | 6 +- pkg/kubelet/kubelet_test.go | 28 +-- pkg/kubelet/runonce_test.go | 2 +- pkg/kubelet/server_test.go | 6 +- pkg/master/pod_cache_test.go | 2 +- pkg/proxy/config/api_test.go | 12 +- pkg/proxy/config/config_test.go | 44 ++--- pkg/proxy/proxier_test.go | 48 +++--- pkg/proxy/roundrobin_test.go | 24 +-- pkg/registry/controller/rest_test.go | 40 ++--- pkg/registry/endpoint/rest_test.go | 12 +- pkg/registry/etcd/etcd_test.go | 138 ++++++++------- pkg/registry/event/registry_test.go | 8 +- pkg/registry/event/rest_test.go | 16 +- pkg/registry/generic/etcd/etcd_test.go | 18 +- pkg/registry/minion/healthy_registry_test.go | 2 +- pkg/registry/minion/rest_test.go | 6 +- pkg/registry/pod/bound_pod_factory_test.go | 10 +- pkg/registry/pod/rest_test.go | 36 ++-- pkg/registry/service/rest_test.go | 156 ++++++++--------- pkg/runtime/helper_test.go | 12 +- pkg/scheduler/generic_scheduler_test.go | 4 +- pkg/scheduler/priorities_test.go | 10 +- pkg/scheduler/spreading_test.go | 30 ++-- pkg/service/endpoints_controller_test.go | 20 +-- pkg/tools/etcd_tools_test.go | 63 +++---- pkg/tools/etcd_tools_watch_test.go | 24 +-- pkg/watch/json/decoder_test.go | 2 +- pkg/watch/json/encoder_test.go | 6 +- plugin/pkg/scheduler/factory/factory_test.go | 20 ++- plugin/pkg/scheduler/scheduler_test.go | 4 +- test/integration/etcd_tools_test.go | 2 +- 55 files changed, 739 insertions(+), 633 deletions(-) diff --git a/cmd/integration/integration.go b/cmd/integration/integration.go index d1709fb5eb..df5f4091b5 100644 --- a/cmd/integration/integration.go +++ b/cmd/integration/integration.go @@ -256,11 +256,16 @@ func runAtomicPutTest(c *client.Client) { var svc api.Service err := c.Post().Path("services").Body( &api.Service{ - TypeMeta: api.TypeMeta{Name: "atomicservice", APIVersion: latest.Version}, - Port: 12345, - Labels: map[string]string{ - "name": "atomicService", + TypeMeta: api.TypeMeta{ + APIVersion: latest.Version, }, + ObjectMeta: api.ObjectMeta{ + Name: "atomicservice", + Labels: map[string]string{ + "name": "atomicService", + }, + }, + Port: 12345, // This is here because validation requires it. Selector: map[string]string{ "foo": "bar", @@ -330,7 +335,12 @@ func runAtomicPutTest(c *client.Client) { func runServiceTest(client *client.Client) { ctx := api.NewDefaultContext() pod := api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{ + Name: "foo", + Labels: map[string]string{ + "name": "thisisalonglabel", + }, + }, DesiredState: api.PodState{ Manifest: api.ContainerManifest{ Version: "v1beta1", @@ -348,9 +358,6 @@ func runServiceTest(client *client.Client) { CurrentState: api.PodState{ PodIP: "1.2.3.4", }, - Labels: map[string]string{ - "name": "thisisalonglabel", - }, } _, err := client.CreatePod(ctx, &pod) if err != nil { @@ -360,7 +367,7 @@ func runServiceTest(client *client.Client) { glog.Fatalf("FAILED: pod never started running %v", err) } svc1 := api.Service{ - TypeMeta: api.TypeMeta{Name: "service1"}, + ObjectMeta: api.ObjectMeta{Name: "service1"}, Selector: map[string]string{ "name": "thisisalonglabel", }, @@ -375,7 +382,7 @@ func runServiceTest(client *client.Client) { } // A second service with the same port. svc2 := api.Service{ - TypeMeta: api.TypeMeta{Name: "service2"}, + ObjectMeta: api.ObjectMeta{Name: "service2"}, Selector: map[string]string{ "name": "thisisalonglabel", }, diff --git a/examples/examples_test.go b/examples/examples_test.go index cf6e090d2b..253643e537 100644 --- a/examples/examples_test.go +++ b/examples/examples_test.go @@ -41,14 +41,14 @@ func validateObject(obj runtime.Object) (errors []error) { errors = append(errors, validateObject(&t.Items[i])...) } case *api.Service: - api.ValidNamespace(ctx, &t.TypeMeta) + api.ValidNamespace(ctx, &t.ObjectMeta) errors = validation.ValidateService(t) case *api.ServiceList: for i := range t.Items { errors = append(errors, validateObject(&t.Items[i])...) } case *api.Pod: - api.ValidNamespace(ctx, &t.TypeMeta) + api.ValidNamespace(ctx, &t.ObjectMeta) errors = validation.ValidateManifest(&t.DesiredState.Manifest) case *api.PodList: for i := range t.Items { diff --git a/pkg/api/context_test.go b/pkg/api/context_test.go index 7baad8f910..a463ffe2f3 100644 --- a/pkg/api/context_test.go +++ b/pkg/api/context_test.go @@ -45,18 +45,18 @@ func TestValidNamespace(t *testing.T) { ctx := api.NewDefaultContext() namespace, _ := api.NamespaceFrom(ctx) resource := api.ReplicationController{} - if !api.ValidNamespace(ctx, &resource.TypeMeta) { + if !api.ValidNamespace(ctx, &resource.ObjectMeta) { t.Errorf("expected success") } if namespace != resource.Namespace { t.Errorf("expected resource to have the default namespace assigned during validation") } - resource = api.ReplicationController{TypeMeta: api.TypeMeta{Namespace: "other"}} - if api.ValidNamespace(ctx, &resource.TypeMeta) { + resource = api.ReplicationController{ObjectMeta: api.ObjectMeta{Namespace: "other"}} + if api.ValidNamespace(ctx, &resource.ObjectMeta) { t.Errorf("Expected error that resource and context errors do not match because resource has different namespace") } ctx = api.NewContext() - if api.ValidNamespace(ctx, &resource.TypeMeta) { + if api.ValidNamespace(ctx, &resource.ObjectMeta) { t.Errorf("Expected error that resource and context errors do not match since context has no namespace") } diff --git a/pkg/api/latest/latest_test.go b/pkg/api/latest/latest_test.go index 81b5964ef4..0739b20abd 100644 --- a/pkg/api/latest/latest_test.go +++ b/pkg/api/latest/latest_test.go @@ -37,6 +37,8 @@ var apiObjectFuzzer = fuzz.New().NilChance(.5).NumElements(1, 1).Funcs( // APIVersion and Kind must remain blank in memory. j.APIVersion = "" j.Kind = "" + }, + func(j *internal.ObjectMeta, c fuzz.Continue) { j.Name = c.RandString() // TODO: Fix JSON/YAML packages and/or write custom encoding // for uint64's. Somehow the LS *byte* of this is lost, but @@ -49,6 +51,13 @@ var apiObjectFuzzer = fuzz.New().NilChance(.5).NumElements(1, 1).Funcs( c.Fuzz(&nsec) j.CreationTimestamp = util.Unix(sec, nsec).Rfc3339Copy() }, + func(j *internal.ListMeta, c fuzz.Continue) { + // TODO: Fix JSON/YAML packages and/or write custom encoding + // for uint64's. Somehow the LS *byte* of this is lost, but + // only when all 8 bytes are set. + j.ResourceVersion = strconv.FormatUint(c.RandUint64()>>8, 10) + j.SelfLink = c.RandString() + }, func(j *internal.ObjectReference, c fuzz.Continue) { // We have to customize the randomization of TypeMetas because their // APIVersion and Kind must remain blank in memory. @@ -133,7 +142,7 @@ func TestInternalRoundTrip(t *testing.T) { } func TestResourceVersioner(t *testing.T) { - pod := internal.Pod{TypeMeta: internal.TypeMeta{ResourceVersion: "10"}} + pod := internal.Pod{ObjectMeta: internal.ObjectMeta{ResourceVersion: "10"}} version, err := ResourceVersioner.ResourceVersion(&pod) if err != nil { t.Fatalf("unexpected error: %v", err) @@ -141,6 +150,15 @@ func TestResourceVersioner(t *testing.T) { if version != "10" { t.Errorf("unexpected version %v", version) } + + podList := internal.PodList{ListMeta: internal.ListMeta{ResourceVersion: "10"}} + version, err = ResourceVersioner.ResourceVersion(&podList) + if err != nil { + t.Fatalf("unexpected error: %v", err) + } + if version != "10" { + t.Errorf("unexpected version %v", version) + } } func TestCodec(t *testing.T) { diff --git a/pkg/api/ref_test.go b/pkg/api/ref_test.go index fefb668c8a..428ff37d7a 100644 --- a/pkg/api/ref_test.go +++ b/pkg/api/ref_test.go @@ -35,7 +35,7 @@ func TestGetReference(t *testing.T) { }{ "pod": { obj: &Pod{ - TypeMeta: TypeMeta{ + ObjectMeta: ObjectMeta{ Name: "foo", UID: "bar", ResourceVersion: "42", @@ -52,9 +52,7 @@ func TestGetReference(t *testing.T) { }, "serviceList": { obj: &ServiceList{ - TypeMeta: TypeMeta{ - Name: "foo", - UID: "bar", + ListMeta: ListMeta{ ResourceVersion: "42", SelfLink: "/api/v1beta2/services", }, @@ -62,15 +60,12 @@ func TestGetReference(t *testing.T) { ref: &ObjectReference{ Kind: "ServiceList", APIVersion: "v1beta2", - Name: "foo", - UID: "bar", ResourceVersion: "42", }, }, "badSelfLink": { obj: &ServiceList{ - TypeMeta: TypeMeta{ - Name: "foo", + ListMeta: ListMeta{ ResourceVersion: "42", SelfLink: "v1beta2/services", }, diff --git a/pkg/api/serialization_test.go b/pkg/api/serialization_test.go index 731e680a0f..44765979be 100644 --- a/pkg/api/serialization_test.go +++ b/pkg/api/serialization_test.go @@ -47,12 +47,7 @@ var apiObjectFuzzer = fuzz.New().NilChance(.5).NumElements(1, 1).Funcs( // APIVersion and Kind must remain blank in memory. j.APIVersion = "" j.Kind = "" - }, - func(j *api.TypeMeta, c fuzz.Continue) { - // We have to customize the randomization of TypeMetas because their - // APIVersion and Kind must remain blank in memory. - j.APIVersion = "" - j.Kind = "" + j.Name = c.RandString() // TODO: Fix JSON/YAML packages and/or write custom encoding // for uint64's. Somehow the LS *byte* of this is lost, but @@ -65,6 +60,32 @@ var apiObjectFuzzer = fuzz.New().NilChance(.5).NumElements(1, 1).Funcs( c.Fuzz(&nsec) j.CreationTimestamp = util.Unix(sec, nsec).Rfc3339Copy() }, + func(j *api.TypeMeta, c fuzz.Continue) { + // We have to customize the randomization of TypeMetas because their + // APIVersion and Kind must remain blank in memory. + j.APIVersion = "" + j.Kind = "" + }, + func(j *api.ObjectMeta, c fuzz.Continue) { + j.Name = c.RandString() + // TODO: Fix JSON/YAML packages and/or write custom encoding + // for uint64's. Somehow the LS *byte* of this is lost, but + // only when all 8 bytes are set. + j.ResourceVersion = strconv.FormatUint(c.RandUint64()>>8, 10) + j.SelfLink = c.RandString() + + var sec, nsec int64 + c.Fuzz(&sec) + c.Fuzz(&nsec) + j.CreationTimestamp = util.Unix(sec, nsec).Rfc3339Copy() + }, + func(j *api.ListMeta, c fuzz.Continue) { + // TODO: Fix JSON/YAML packages and/or write custom encoding + // for uint64's. Somehow the LS *byte* of this is lost, but + // only when all 8 bytes are set. + j.ResourceVersion = strconv.FormatUint(c.RandUint64()>>8, 10) + j.SelfLink = c.RandString() + }, func(intstr *util.IntOrString, c fuzz.Continue) { // util.IntOrString will panic if its kind is set wrong. if c.RandBool() { @@ -173,7 +194,9 @@ func TestTypes(t *testing.T) { func TestEncode_Ptr(t *testing.T) { pod := &api.Pod{ - Labels: map[string]string{"name": "foo"}, + ObjectMeta: api.ObjectMeta{ + Labels: map[string]string{"name": "foo"}, + }, } obj := runtime.Object(pod) data, err := latest.Codec.Encode(obj) diff --git a/pkg/api/v1beta1/conversion_test.go b/pkg/api/v1beta1/conversion_test.go index beb9076558..5c9348207a 100644 --- a/pkg/api/v1beta1/conversion_test.go +++ b/pkg/api/v1beta1/conversion_test.go @@ -119,7 +119,7 @@ func TestMinionListConversionToNew(t *testing.T) { return v1beta1.Minion{TypeMeta: v1beta1.TypeMeta{ID: id}} } newMinion := func(id string) newer.Minion { - return newer.Minion{TypeMeta: newer.TypeMeta{Name: id}} + return newer.Minion{ObjectMeta: newer.ObjectMeta{Name: id}} } oldMinions := []v1beta1.Minion{ oldMinion("foo"), @@ -166,7 +166,7 @@ func TestMinionListConversionToOld(t *testing.T) { return v1beta1.Minion{TypeMeta: v1beta1.TypeMeta{ID: id}} } newMinion := func(id string) newer.Minion { - return newer.Minion{TypeMeta: newer.TypeMeta{Name: id}} + return newer.Minion{ObjectMeta: newer.ObjectMeta{Name: id}} } oldMinions := []v1beta1.Minion{ oldMinion("foo"), diff --git a/pkg/api/validation/validation_test.go b/pkg/api/validation/validation_test.go index b802463b09..75ea895abd 100644 --- a/pkg/api/validation/validation_test.go +++ b/pkg/api/validation/validation_test.go @@ -367,9 +367,11 @@ func TestValidateManifest(t *testing.T) { func TestValidatePod(t *testing.T) { errs := ValidatePod(&api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo", Namespace: api.NamespaceDefault}, - Labels: map[string]string{ - "foo": "bar", + ObjectMeta: api.ObjectMeta{ + Name: "foo", Namespace: api.NamespaceDefault, + Labels: map[string]string{ + "foo": "bar", + }, }, DesiredState: api.PodState{ Manifest: api.ContainerManifest{ @@ -385,9 +387,12 @@ func TestValidatePod(t *testing.T) { t.Errorf("Unexpected non-zero error list: %#v", errs) } errs = ValidatePod(&api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo", Namespace: api.NamespaceDefault}, - Labels: map[string]string{ - "foo": "bar", + ObjectMeta: api.ObjectMeta{ + Name: "foo", + Namespace: api.NamespaceDefault, + Labels: map[string]string{ + "foo": "bar", + }, }, DesiredState: api.PodState{ Manifest: api.ContainerManifest{Version: "v1beta1", ID: "abc"}, @@ -398,9 +403,11 @@ func TestValidatePod(t *testing.T) { } errs = ValidatePod(&api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo", Namespace: api.NamespaceDefault}, - Labels: map[string]string{ - "foo": "bar", + ObjectMeta: api.ObjectMeta{ + Name: "foo", Namespace: api.NamespaceDefault, + Labels: map[string]string{ + "foo": "bar", + }, }, DesiredState: api.PodState{ Manifest: api.ContainerManifest{ @@ -426,25 +433,29 @@ func TestValidatePodUpdate(t *testing.T) { {api.Pod{}, api.Pod{}, true, "nothing"}, { api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, }, api.Pod{ - TypeMeta: api.TypeMeta{Name: "bar"}, + ObjectMeta: api.ObjectMeta{Name: "bar"}, }, false, "ids", }, { api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo"}, - Labels: map[string]string{ - "foo": "bar", + ObjectMeta: api.ObjectMeta{ + Name: "foo", + Labels: map[string]string{ + "foo": "bar", + }, }, }, api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo"}, - Labels: map[string]string{ - "bar": "foo", + ObjectMeta: api.ObjectMeta{ + Name: "foo", + Labels: map[string]string{ + "bar": "foo", + }, }, }, true, @@ -452,7 +463,9 @@ func TestValidatePodUpdate(t *testing.T) { }, { api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{ + Name: "foo", + }, DesiredState: api.PodState{ Manifest: api.ContainerManifest{ Containers: []api.Container{ @@ -464,7 +477,7 @@ func TestValidatePodUpdate(t *testing.T) { }, }, api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, DesiredState: api.PodState{ Manifest: api.ContainerManifest{ Containers: []api.Container{ @@ -483,7 +496,7 @@ func TestValidatePodUpdate(t *testing.T) { }, { api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, DesiredState: api.PodState{ Manifest: api.ContainerManifest{ Containers: []api.Container{ @@ -495,7 +508,7 @@ func TestValidatePodUpdate(t *testing.T) { }, }, api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, DesiredState: api.PodState{ Manifest: api.ContainerManifest{ Containers: []api.Container{ @@ -511,7 +524,7 @@ func TestValidatePodUpdate(t *testing.T) { }, { api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, DesiredState: api.PodState{ Manifest: api.ContainerManifest{ Containers: []api.Container{ @@ -524,7 +537,7 @@ func TestValidatePodUpdate(t *testing.T) { }, }, api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, DesiredState: api.PodState{ Manifest: api.ContainerManifest{ Containers: []api.Container{ @@ -541,7 +554,7 @@ func TestValidatePodUpdate(t *testing.T) { }, { api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, DesiredState: api.PodState{ Manifest: api.ContainerManifest{ Containers: []api.Container{ @@ -556,7 +569,7 @@ func TestValidatePodUpdate(t *testing.T) { }, }, api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, DesiredState: api.PodState{ Manifest: api.ContainerManifest{ Containers: []api.Container{ @@ -598,9 +611,9 @@ func TestValidateService(t *testing.T) { { name: "missing id", svc: api.Service{ - TypeMeta: api.TypeMeta{Namespace: api.NamespaceDefault}, - Port: 8675, - Selector: map[string]string{"foo": "bar"}, + ObjectMeta: api.ObjectMeta{Namespace: api.NamespaceDefault}, + Port: 8675, + Selector: map[string]string{"foo": "bar"}, }, // Should fail because the ID is missing. numErrs: 1, @@ -608,9 +621,9 @@ func TestValidateService(t *testing.T) { { name: "missing namespace", svc: api.Service{ - TypeMeta: api.TypeMeta{Name: "foo"}, - Port: 8675, - Selector: map[string]string{"foo": "bar"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, + Port: 8675, + Selector: map[string]string{"foo": "bar"}, }, // Should fail because the Namespace is missing. numErrs: 1, @@ -618,9 +631,9 @@ func TestValidateService(t *testing.T) { { name: "invalid id", svc: api.Service{ - TypeMeta: api.TypeMeta{Name: "123abc", Namespace: api.NamespaceDefault}, - Port: 8675, - Selector: map[string]string{"foo": "bar"}, + ObjectMeta: api.ObjectMeta{Name: "123abc", Namespace: api.NamespaceDefault}, + Port: 8675, + Selector: map[string]string{"foo": "bar"}, }, // Should fail because the ID is invalid. numErrs: 1, @@ -628,8 +641,8 @@ func TestValidateService(t *testing.T) { { name: "missing port", svc: api.Service{ - TypeMeta: api.TypeMeta{Name: "abc123", Namespace: api.NamespaceDefault}, - Selector: map[string]string{"foo": "bar"}, + ObjectMeta: api.ObjectMeta{Name: "abc123", Namespace: api.NamespaceDefault}, + Selector: map[string]string{"foo": "bar"}, }, // Should fail because the port number is missing/invalid. numErrs: 1, @@ -637,9 +650,9 @@ func TestValidateService(t *testing.T) { { name: "invalid port", svc: api.Service{ - TypeMeta: api.TypeMeta{Name: "abc123", Namespace: api.NamespaceDefault}, - Port: 65536, - Selector: map[string]string{"foo": "bar"}, + ObjectMeta: api.ObjectMeta{Name: "abc123", Namespace: api.NamespaceDefault}, + Port: 65536, + Selector: map[string]string{"foo": "bar"}, }, // Should fail because the port number is invalid. numErrs: 1, @@ -647,10 +660,10 @@ func TestValidateService(t *testing.T) { { name: "invalid protocol", svc: api.Service{ - TypeMeta: api.TypeMeta{Name: "abc123", Namespace: api.NamespaceDefault}, - Port: 8675, - Protocol: "INVALID", - Selector: map[string]string{"foo": "bar"}, + ObjectMeta: api.ObjectMeta{Name: "abc123", Namespace: api.NamespaceDefault}, + Port: 8675, + Protocol: "INVALID", + Selector: map[string]string{"foo": "bar"}, }, // Should fail because the protocol is invalid. numErrs: 1, @@ -658,8 +671,8 @@ func TestValidateService(t *testing.T) { { name: "missing selector", svc: api.Service{ - TypeMeta: api.TypeMeta{Name: "foo", Namespace: api.NamespaceDefault}, - Port: 8675, + ObjectMeta: api.ObjectMeta{Name: "foo", Namespace: api.NamespaceDefault}, + Port: 8675, }, // Should fail because the selector is missing. numErrs: 1, @@ -667,29 +680,29 @@ func TestValidateService(t *testing.T) { { name: "valid 1", svc: api.Service{ - TypeMeta: api.TypeMeta{Name: "abc123", Namespace: api.NamespaceDefault}, - Port: 1, - Protocol: "TCP", - Selector: map[string]string{"foo": "bar"}, + ObjectMeta: api.ObjectMeta{Name: "abc123", Namespace: api.NamespaceDefault}, + Port: 1, + Protocol: "TCP", + Selector: map[string]string{"foo": "bar"}, }, numErrs: 0, }, { name: "valid 2", svc: api.Service{ - TypeMeta: api.TypeMeta{Name: "abc123", Namespace: api.NamespaceDefault}, - Port: 65535, - Protocol: "UDP", - Selector: map[string]string{"foo": "bar"}, + ObjectMeta: api.ObjectMeta{Name: "abc123", Namespace: api.NamespaceDefault}, + Port: 65535, + Protocol: "UDP", + Selector: map[string]string{"foo": "bar"}, }, numErrs: 0, }, { name: "valid 3", svc: api.Service{ - TypeMeta: api.TypeMeta{Name: "abc123", Namespace: api.NamespaceDefault}, - Port: 80, - Selector: map[string]string{"foo": "bar"}, + ObjectMeta: api.ObjectMeta{Name: "abc123", Namespace: api.NamespaceDefault}, + Port: 80, + Selector: map[string]string{"foo": "bar"}, }, numErrs: 0, }, @@ -703,9 +716,9 @@ func TestValidateService(t *testing.T) { } svc := api.Service{ - Port: 6502, - TypeMeta: api.TypeMeta{Name: "foo", Namespace: api.NamespaceDefault}, - Selector: map[string]string{"foo": "bar"}, + Port: 6502, + ObjectMeta: api.ObjectMeta{Name: "foo", Namespace: api.NamespaceDefault}, + Selector: map[string]string{"foo": "bar"}, } errs := ValidateService(&svc) if len(errs) != 0 { @@ -736,14 +749,14 @@ func TestValidateReplicationController(t *testing.T) { } successCases := []api.ReplicationController{ { - TypeMeta: api.TypeMeta{Name: "abc", Namespace: api.NamespaceDefault}, + ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault}, DesiredState: api.ReplicationControllerState{ ReplicaSelector: validSelector, PodTemplate: validPodTemplate, }, }, { - TypeMeta: api.TypeMeta{Name: "abc-123", Namespace: api.NamespaceDefault}, + ObjectMeta: api.ObjectMeta{Name: "abc-123", Namespace: api.NamespaceDefault}, DesiredState: api.ReplicationControllerState{ ReplicaSelector: validSelector, PodTemplate: validPodTemplate, @@ -758,47 +771,47 @@ func TestValidateReplicationController(t *testing.T) { errorCases := map[string]api.ReplicationController{ "zero-length ID": { - TypeMeta: api.TypeMeta{Name: "", Namespace: api.NamespaceDefault}, + ObjectMeta: api.ObjectMeta{Name: "", Namespace: api.NamespaceDefault}, DesiredState: api.ReplicationControllerState{ ReplicaSelector: validSelector, PodTemplate: validPodTemplate, }, }, "missing-namespace": { - TypeMeta: api.TypeMeta{Name: "abc-123"}, + ObjectMeta: api.ObjectMeta{Name: "abc-123"}, DesiredState: api.ReplicationControllerState{ ReplicaSelector: validSelector, PodTemplate: validPodTemplate, }, }, "empty selector": { - TypeMeta: api.TypeMeta{Name: "abc", Namespace: api.NamespaceDefault}, + ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault}, DesiredState: api.ReplicationControllerState{ PodTemplate: validPodTemplate, }, }, "selector_doesnt_match": { - TypeMeta: api.TypeMeta{Name: "abc", Namespace: api.NamespaceDefault}, + ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault}, DesiredState: api.ReplicationControllerState{ ReplicaSelector: map[string]string{"foo": "bar"}, PodTemplate: validPodTemplate, }, }, "invalid manifest": { - TypeMeta: api.TypeMeta{Name: "abc", Namespace: api.NamespaceDefault}, + ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault}, DesiredState: api.ReplicationControllerState{ ReplicaSelector: validSelector, }, }, "read-write presistent disk": { - TypeMeta: api.TypeMeta{Name: "abc"}, + ObjectMeta: api.ObjectMeta{Name: "abc"}, DesiredState: api.ReplicationControllerState{ ReplicaSelector: validSelector, PodTemplate: invalidVolumePodTemplate, }, }, "negative_replicas": { - TypeMeta: api.TypeMeta{Name: "abc", Namespace: api.NamespaceDefault}, + ObjectMeta: api.ObjectMeta{Name: "abc", Namespace: api.NamespaceDefault}, DesiredState: api.ReplicationControllerState{ Replicas: -1, ReplicaSelector: validSelector, @@ -827,13 +840,13 @@ func TestValidateReplicationController(t *testing.T) { func TestValidateBoundPodNoName(t *testing.T) { errorCases := map[string]api.BoundPod{ // manifest is tested in api/validation_test.go, ensure it is invoked - "empty version": {TypeMeta: api.TypeMeta{Name: "test"}, Spec: api.PodSpec{Containers: []api.Container{{Name: ""}}}}, + "empty version": {ObjectMeta: api.ObjectMeta{Name: "test"}, Spec: api.PodSpec{Containers: []api.Container{{Name: ""}}}}, // Name - "zero-length name": {TypeMeta: api.TypeMeta{Name: ""}}, - "name > 255 characters": {TypeMeta: api.TypeMeta{Name: strings.Repeat("a", 256)}}, - "name not a DNS subdomain": {TypeMeta: api.TypeMeta{Name: "a.b.c."}}, - "name with underscore": {TypeMeta: api.TypeMeta{Name: "a_b_c"}}, + "zero-length name": {ObjectMeta: api.ObjectMeta{Name: ""}}, + "name > 255 characters": {ObjectMeta: api.ObjectMeta{Name: strings.Repeat("a", 256)}}, + "name not a DNS subdomain": {ObjectMeta: api.ObjectMeta{Name: "a.b.c."}}, + "name with underscore": {ObjectMeta: api.ObjectMeta{Name: "a_b_c"}}, } for k, v := range errorCases { if errs := ValidateBoundPod(&v); len(errs) == 0 { diff --git a/pkg/apiserver/apiserver_test.go b/pkg/apiserver/apiserver_test.go index fddd2a1c8f..487c906b2d 100644 --- a/pkg/apiserver/apiserver_test.go +++ b/pkg/apiserver/apiserver_test.go @@ -53,14 +53,16 @@ func init() { } type Simple struct { - api.TypeMeta `yaml:",inline" json:",inline"` - Other string `yaml:"other,omitempty" json:"other,omitempty"` + api.TypeMeta `yaml:",inline" json:",inline"` + api.ObjectMeta `yaml:"metadata,inline" json:"metadata,inline"` + Other string `yaml:"other,omitempty" json:"other,omitempty"` } func (*Simple) IsAnAPIObject() {} type SimpleList struct { api.TypeMeta `yaml:",inline" json:",inline"` + api.ListMeta `yaml:"metadata,inline" json:"metadata,inline"` Items []Simple `yaml:"items,omitempty" json:"items,omitempty"` } @@ -108,7 +110,7 @@ func (storage *SimpleRESTStorage) Delete(ctx api.Context, id string) (<-chan run } return MakeAsync(func() (runtime.Object, error) { if storage.injectedFunction != nil { - return storage.injectedFunction(&Simple{TypeMeta: api.TypeMeta{Name: id}}) + return storage.injectedFunction(&Simple{ObjectMeta: api.ObjectMeta{Name: id}}) } return &api.Status{Status: api.StatusSuccess}, nil }), nil @@ -310,6 +312,8 @@ func TestNonEmptyList(t *testing.T) { if resp.StatusCode != http.StatusOK { t.Errorf("Unexpected status: %d, Expected: %d, %#v", resp.StatusCode, http.StatusOK, resp) + body, _ := ioutil.ReadAll(resp.Body) + t.Logf("Data: %s", string(body)) } var listOut SimpleList diff --git a/pkg/apiserver/operation_test.go b/pkg/apiserver/operation_test.go index da144dbccc..d0bcc7d3a6 100644 --- a/pkg/apiserver/operation_test.go +++ b/pkg/apiserver/operation_test.go @@ -43,7 +43,7 @@ func TestOperation(t *testing.T) { time.Sleep(time.Millisecond) go func() { time.Sleep(500 * time.Millisecond) - c <- &Simple{TypeMeta: api.TypeMeta{Name: "All done"}} + c <- &Simple{ObjectMeta: api.ObjectMeta{Name: "All done"}} }() if op.expired(time.Now().Add(-time.Minute)) { @@ -119,7 +119,7 @@ func TestOperationsList(t *testing.T) { client := http.Client{} simple := &Simple{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, } data, err := codec.Encode(simple) if err != nil { @@ -175,7 +175,7 @@ func TestOpGet(t *testing.T) { client := http.Client{} simple := &Simple{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, } data, err := codec.Encode(simple) t.Log(string(data)) diff --git a/pkg/client/cache/reflector_test.go b/pkg/client/cache/reflector_test.go index 4b21057fb3..39118a5034 100644 --- a/pkg/client/cache/reflector_test.go +++ b/pkg/client/cache/reflector_test.go @@ -54,13 +54,13 @@ func TestReflector_watchHandler(t *testing.T) { s := NewStore() g := NewReflector(&testLW{}, &api.Pod{}, s) fw := watch.NewFake() - s.Add("foo", &api.Pod{TypeMeta: api.TypeMeta{Name: "foo"}}) - s.Add("bar", &api.Pod{TypeMeta: api.TypeMeta{Name: "bar"}}) + s.Add("foo", &api.Pod{ObjectMeta: api.ObjectMeta{Name: "foo"}}) + s.Add("bar", &api.Pod{ObjectMeta: api.ObjectMeta{Name: "bar"}}) go func() { - fw.Add(&api.Service{TypeMeta: api.TypeMeta{Name: "rejected"}}) - fw.Delete(&api.Pod{TypeMeta: api.TypeMeta{Name: "foo"}}) - fw.Modify(&api.Pod{TypeMeta: api.TypeMeta{Name: "bar", ResourceVersion: "55"}}) - fw.Add(&api.Pod{TypeMeta: api.TypeMeta{Name: "baz", ResourceVersion: "32"}}) + fw.Add(&api.Service{ObjectMeta: api.ObjectMeta{Name: "rejected"}}) + fw.Delete(&api.Pod{ObjectMeta: api.ObjectMeta{Name: "foo"}}) + fw.Modify(&api.Pod{ObjectMeta: api.ObjectMeta{Name: "bar", ResourceVersion: "55"}}) + fw.Add(&api.Pod{ObjectMeta: api.ObjectMeta{Name: "baz", ResourceVersion: "32"}}) fw.Stop() }() var resumeRV string @@ -118,7 +118,7 @@ func TestReflector_listAndWatch(t *testing.T) { return fw, nil }, ListFunc: func() (runtime.Object, error) { - return &api.PodList{TypeMeta: api.TypeMeta{ResourceVersion: "1"}}, nil + return &api.PodList{ListMeta: api.ListMeta{ResourceVersion: "1"}}, nil }, } s := NewFIFO() @@ -132,7 +132,7 @@ func TestReflector_listAndWatch(t *testing.T) { fw = <-createdFakes } sendingRV := strconv.FormatUint(uint64(i+2), 10) - fw.Add(&api.Pod{TypeMeta: api.TypeMeta{Name: id, ResourceVersion: sendingRV}}) + fw.Add(&api.Pod{ObjectMeta: api.ObjectMeta{Name: id, ResourceVersion: sendingRV}}) if sendingRV == "3" { // Inject a failure. fw.Stop() @@ -158,10 +158,10 @@ func TestReflector_listAndWatch(t *testing.T) { func TestReflector_listAndWatchWithErrors(t *testing.T) { mkPod := func(id string, rv string) *api.Pod { - return &api.Pod{TypeMeta: api.TypeMeta{Name: id, ResourceVersion: rv}} + return &api.Pod{ObjectMeta: api.ObjectMeta{Name: id, ResourceVersion: rv}} } mkList := func(rv string, pods ...*api.Pod) *api.PodList { - list := &api.PodList{TypeMeta: api.TypeMeta{ResourceVersion: rv}} + list := &api.PodList{ListMeta: api.ListMeta{ResourceVersion: rv}} for _, pod := range pods { list.Items = append(list.Items, *pod) } diff --git a/pkg/client/client_test.go b/pkg/client/client_test.go index 62f74e265b..ba91061d88 100644 --- a/pkg/client/client_test.go +++ b/pkg/client/client_test.go @@ -166,9 +166,11 @@ func TestListPods(t *testing.T) { CurrentState: api.PodState{ Status: "Foobar", }, - Labels: map[string]string{ - "foo": "bar", - "name": "baz", + ObjectMeta: api.ObjectMeta{ + Labels: map[string]string{ + "foo": "bar", + "name": "baz", + }, }, }, }, @@ -197,9 +199,11 @@ func TestListPodsLabels(t *testing.T) { CurrentState: api.PodState{ Status: "Foobar", }, - Labels: map[string]string{ - "foo": "bar", - "name": "baz", + ObjectMeta: api.ObjectMeta{ + Labels: map[string]string{ + "foo": "bar", + "name": "baz", + }, }, }, }, @@ -223,9 +227,11 @@ func TestGetPod(t *testing.T) { CurrentState: api.PodState{ Status: "Foobar", }, - Labels: map[string]string{ - "foo": "bar", - "name": "baz", + ObjectMeta: api.ObjectMeta{ + Labels: map[string]string{ + "foo": "bar", + "name": "baz", + }, }, }, }, @@ -248,9 +254,11 @@ func TestCreatePod(t *testing.T) { CurrentState: api.PodState{ Status: "Foobar", }, - Labels: map[string]string{ - "foo": "bar", - "name": "baz", + ObjectMeta: api.ObjectMeta{ + Labels: map[string]string{ + "foo": "bar", + "name": "baz", + }, }, } c := &testClient{ @@ -266,14 +274,17 @@ func TestCreatePod(t *testing.T) { func TestUpdatePod(t *testing.T) { requestPod := &api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo", ResourceVersion: "1"}, + ObjectMeta: api.ObjectMeta{ + Name: "foo", + ResourceVersion: "1", + Labels: map[string]string{ + "foo": "bar", + "name": "baz", + }, + }, CurrentState: api.PodState{ Status: "Foobar", }, - Labels: map[string]string{ - "foo": "bar", - "name": "baz", - }, } c := &testClient{ Request: testRequest{Method: "PUT", Path: "/pods/foo"}, @@ -290,14 +301,16 @@ func TestListControllers(t *testing.T) { Body: &api.ReplicationControllerList{ Items: []api.ReplicationController{ { - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{ + Name: "foo", + Labels: map[string]string{ + "foo": "bar", + "name": "baz", + }, + }, DesiredState: api.ReplicationControllerState{ Replicas: 2, }, - Labels: map[string]string{ - "foo": "bar", - "name": "baz", - }, }, }, }, @@ -314,14 +327,16 @@ func TestGetController(t *testing.T) { Response: Response{ StatusCode: 200, Body: &api.ReplicationController{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{ + Name: "foo", + Labels: map[string]string{ + "foo": "bar", + "name": "baz", + }, + }, DesiredState: api.ReplicationControllerState{ Replicas: 2, }, - Labels: map[string]string{ - "foo": "bar", - "name": "baz", - }, }, }, } @@ -331,21 +346,23 @@ func TestGetController(t *testing.T) { func TestUpdateController(t *testing.T) { requestController := &api.ReplicationController{ - TypeMeta: api.TypeMeta{Name: "foo", ResourceVersion: "1"}, + ObjectMeta: api.ObjectMeta{Name: "foo", ResourceVersion: "1"}, } c := &testClient{ Request: testRequest{Method: "PUT", Path: "/replicationControllers/foo"}, Response: Response{ StatusCode: 200, Body: &api.ReplicationController{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{ + Name: "foo", + Labels: map[string]string{ + "foo": "bar", + "name": "baz", + }, + }, DesiredState: api.ReplicationControllerState{ Replicas: 2, }, - Labels: map[string]string{ - "foo": "bar", - "name": "baz", - }, }, }, } @@ -364,21 +381,23 @@ func TestDeleteController(t *testing.T) { func TestCreateController(t *testing.T) { requestController := &api.ReplicationController{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, } c := &testClient{ Request: testRequest{Method: "POST", Path: "/replicationControllers", Body: requestController}, Response: Response{ StatusCode: 200, Body: &api.ReplicationController{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{ + Name: "foo", + Labels: map[string]string{ + "foo": "bar", + "name": "baz", + }, + }, DesiredState: api.ReplicationControllerState{ Replicas: 2, }, - Labels: map[string]string{ - "foo": "bar", - "name": "baz", - }, }, }, } @@ -402,10 +421,12 @@ func TestListServices(t *testing.T) { Body: &api.ServiceList{ Items: []api.Service{ { - TypeMeta: api.TypeMeta{Name: "name"}, - Labels: map[string]string{ - "foo": "bar", - "name": "baz", + ObjectMeta: api.ObjectMeta{ + Name: "name", + Labels: map[string]string{ + "foo": "bar", + "name": "baz", + }, }, Selector: map[string]string{ "one": "two", @@ -416,6 +437,7 @@ func TestListServices(t *testing.T) { }, } receivedServiceList, err := c.Setup().ListServices(api.NewDefaultContext(), labels.Everything()) + t.Logf("received services: %v %#v", err, receivedServiceList) c.Validate(t, receivedServiceList, err) } @@ -426,10 +448,12 @@ func TestListServicesLabels(t *testing.T) { Body: &api.ServiceList{ Items: []api.Service{ { - TypeMeta: api.TypeMeta{Name: "name"}, - Labels: map[string]string{ - "foo": "bar", - "name": "baz", + ObjectMeta: api.ObjectMeta{ + Name: "name", + Labels: map[string]string{ + "foo": "bar", + "name": "baz", + }, }, Selector: map[string]string{ "one": "two", @@ -449,7 +473,7 @@ func TestListServicesLabels(t *testing.T) { func TestGetService(t *testing.T) { c := &testClient{ Request: testRequest{Method: "GET", Path: "/services/1"}, - Response: Response{StatusCode: 200, Body: &api.Service{TypeMeta: api.TypeMeta{Name: "service-1"}}}, + Response: Response{StatusCode: 200, Body: &api.Service{ObjectMeta: api.ObjectMeta{Name: "service-1"}}}, } response, err := c.Setup().GetService(api.NewDefaultContext(), "1") c.Validate(t, response, err) @@ -457,15 +481,15 @@ func TestGetService(t *testing.T) { func TestCreateService(t *testing.T) { c := &testClient{ - Request: testRequest{Method: "POST", Path: "/services", Body: &api.Service{TypeMeta: api.TypeMeta{Name: "service-1"}}}, - Response: Response{StatusCode: 200, Body: &api.Service{TypeMeta: api.TypeMeta{Name: "service-1"}}}, + Request: testRequest{Method: "POST", Path: "/services", Body: &api.Service{ObjectMeta: api.ObjectMeta{Name: "service-1"}}}, + Response: Response{StatusCode: 200, Body: &api.Service{ObjectMeta: api.ObjectMeta{Name: "service-1"}}}, } - response, err := c.Setup().CreateService(api.NewDefaultContext(), &api.Service{TypeMeta: api.TypeMeta{Name: "service-1"}}) + response, err := c.Setup().CreateService(api.NewDefaultContext(), &api.Service{ObjectMeta: api.ObjectMeta{Name: "service-1"}}) c.Validate(t, response, err) } func TestUpdateService(t *testing.T) { - svc := &api.Service{TypeMeta: api.TypeMeta{Name: "service-1", ResourceVersion: "1"}} + svc := &api.Service{ObjectMeta: api.ObjectMeta{Name: "service-1", ResourceVersion: "1"}} c := &testClient{ Request: testRequest{Method: "PUT", Path: "/services/service-1", Body: svc}, Response: Response{StatusCode: 200, Body: svc}, @@ -490,8 +514,8 @@ func TestListEndpooints(t *testing.T) { Body: &api.EndpointsList{ Items: []api.Endpoints{ { - TypeMeta: api.TypeMeta{Name: "endpoint-1"}, - Endpoints: []string{"10.245.1.2:8080", "10.245.1.3:8080"}, + ObjectMeta: api.ObjectMeta{Name: "endpoint-1"}, + Endpoints: []string{"10.245.1.2:8080", "10.245.1.3:8080"}, }, }, }, @@ -504,7 +528,7 @@ func TestListEndpooints(t *testing.T) { func TestGetEndpoints(t *testing.T) { c := &testClient{ Request: testRequest{Method: "GET", Path: "/endpoints/endpoint-1"}, - Response: Response{StatusCode: 200, Body: &api.Endpoints{TypeMeta: api.TypeMeta{Name: "endpoint-1"}}}, + Response: Response{StatusCode: 200, Body: &api.Endpoints{ObjectMeta: api.ObjectMeta{Name: "endpoint-1"}}}, } response, err := c.Setup().GetEndpoints(api.NewDefaultContext(), "endpoint-1") c.Validate(t, response, err) @@ -540,7 +564,7 @@ func TestGetServerVersion(t *testing.T) { func TestListMinions(t *testing.T) { c := &testClient{ Request: testRequest{Method: "GET", Path: "/minions"}, - Response: Response{StatusCode: 200, Body: &api.MinionList{TypeMeta: api.TypeMeta{Name: "minion-1"}}}, + Response: Response{StatusCode: 200, Body: &api.MinionList{ListMeta: api.ListMeta{ResourceVersion: "1"}}}, } response, err := c.Setup().ListMinions() c.Validate(t, response, err) @@ -548,7 +572,7 @@ func TestListMinions(t *testing.T) { func TestCreateMinion(t *testing.T) { requestMinion := &api.Minion{ - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "minion-1", }, HostIP: "123.321.456.654", diff --git a/pkg/client/record/event_test.go b/pkg/client/record/event_test.go index d515d28d0b..945c45254c 100644 --- a/pkg/client/record/event_test.go +++ b/pkg/client/record/event_test.go @@ -54,7 +54,7 @@ func TestEventf(t *testing.T) { }{ { obj: &api.Pod{ - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ SelfLink: "/api/v1beta1/pods/foo", Name: "foo", UID: "bar", diff --git a/pkg/client/request_test.go b/pkg/client/request_test.go index 40e8c5156c..d61da5561a 100644 --- a/pkg/client/request_test.go +++ b/pkg/client/request_test.go @@ -72,7 +72,7 @@ func TestDoRequestNewWay(t *testing.T) { } func TestDoRequestNewWayReader(t *testing.T) { - reqObj := &api.Pod{TypeMeta: api.TypeMeta{Name: "foo"}} + reqObj := &api.Pod{ObjectMeta: api.ObjectMeta{Name: "foo"}} reqBodyExpected, _ := v1beta1.Codec.Encode(reqObj) expectedObj := &api.Service{Port: 12345} expectedBody, _ := v1beta1.Codec.Encode(expectedObj) @@ -108,7 +108,7 @@ func TestDoRequestNewWayReader(t *testing.T) { } func TestDoRequestNewWayObj(t *testing.T) { - reqObj := &api.Pod{TypeMeta: api.TypeMeta{Name: "foo"}} + reqObj := &api.Pod{ObjectMeta: api.ObjectMeta{Name: "foo"}} reqBodyExpected, _ := v1beta2.Codec.Encode(reqObj) expectedObj := &api.Service{Port: 12345} expectedBody, _ := v1beta2.Codec.Encode(expectedObj) @@ -143,7 +143,7 @@ func TestDoRequestNewWayObj(t *testing.T) { } func TestDoRequestNewWayFile(t *testing.T) { - reqObj := &api.Pod{TypeMeta: api.TypeMeta{Name: "foo"}} + reqObj := &api.Pod{ObjectMeta: api.ObjectMeta{Name: "foo"}} reqBodyExpected, err := v1beta1.Codec.Encode(reqObj) if err != nil { t.Errorf("unexpected error: %v", err) @@ -412,9 +412,9 @@ func TestWatch(t *testing.T) { t watch.EventType obj runtime.Object }{ - {watch.Added, &api.Pod{TypeMeta: api.TypeMeta{Name: "first"}}}, - {watch.Modified, &api.Pod{TypeMeta: api.TypeMeta{Name: "second"}}}, - {watch.Deleted, &api.Pod{TypeMeta: api.TypeMeta{Name: "last"}}}, + {watch.Added, &api.Pod{ObjectMeta: api.ObjectMeta{Name: "first"}}}, + {watch.Modified, &api.Pod{ObjectMeta: api.ObjectMeta{Name: "second"}}}, + {watch.Deleted, &api.Pod{ObjectMeta: api.ObjectMeta{Name: "last"}}}, } auth := &Config{Username: "user", Password: "pass"} diff --git a/pkg/cloudprovider/controller/minioncontroller_test.go b/pkg/cloudprovider/controller/minioncontroller_test.go index d43f2948cf..ef65cfb9f3 100644 --- a/pkg/cloudprovider/controller/minioncontroller_test.go +++ b/pkg/cloudprovider/controller/minioncontroller_test.go @@ -45,8 +45,8 @@ func NewTestEtcdRegistry(client tools.EtcdClient) *etcdregistry.Registry { func TestSyncCreateMinion(t *testing.T) { ctx := api.NewContext() fakeClient := tools.NewFakeEtcdClient(t) - m1 := runtime.EncodeOrDie(latest.Codec, &api.Minion{TypeMeta: api.TypeMeta{Name: "m1"}}) - m2 := runtime.EncodeOrDie(latest.Codec, &api.Minion{TypeMeta: api.TypeMeta{Name: "m2"}}) + m1 := runtime.EncodeOrDie(latest.Codec, &api.Minion{ObjectMeta: api.ObjectMeta{Name: "m1"}}) + m2 := runtime.EncodeOrDie(latest.Codec, &api.Minion{ObjectMeta: api.ObjectMeta{Name: "m2"}}) fakeClient.Set("/registry/minions/m1", m1, 0) fakeClient.Set("/registry/minions/m2", m2, 0) fakeClient.ExpectNotFoundGet("/registry/minions/m3") @@ -88,9 +88,9 @@ func TestSyncCreateMinion(t *testing.T) { func TestSyncDeleteMinion(t *testing.T) { ctx := api.NewContext() fakeClient := tools.NewFakeEtcdClient(t) - m1 := runtime.EncodeOrDie(latest.Codec, &api.Minion{TypeMeta: api.TypeMeta{Name: "m1"}}) - m2 := runtime.EncodeOrDie(latest.Codec, &api.Minion{TypeMeta: api.TypeMeta{Name: "m2"}}) - m3 := runtime.EncodeOrDie(latest.Codec, &api.Minion{TypeMeta: api.TypeMeta{Name: "m3"}}) + m1 := runtime.EncodeOrDie(latest.Codec, &api.Minion{ObjectMeta: api.ObjectMeta{Name: "m1"}}) + m2 := runtime.EncodeOrDie(latest.Codec, &api.Minion{ObjectMeta: api.ObjectMeta{Name: "m2"}}) + m3 := runtime.EncodeOrDie(latest.Codec, &api.Minion{ObjectMeta: api.ObjectMeta{Name: "m3"}}) fakeClient.Set("/registry/minions/m1", m1, 0) fakeClient.Set("/registry/minions/m2", m2, 0) fakeClient.Set("/registry/minions/m3", m3, 0) diff --git a/pkg/controller/replication_controller_test.go b/pkg/controller/replication_controller_test.go index 48672bf7ec..a5b840d6bb 100644 --- a/pkg/controller/replication_controller_test.go +++ b/pkg/controller/replication_controller_test.go @@ -17,7 +17,6 @@ limitations under the License. package controller import ( - "encoding/json" "fmt" "net/http" "net/http/httptest" @@ -89,7 +88,7 @@ func newPodList(count int) *api.PodList { pods := []api.Pod{} for i := 0; i < count; i++ { pods = append(pods, api.Pod{ - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: fmt.Sprintf("pod%d", i), }, }) @@ -183,8 +182,8 @@ func TestCreateReplica(t *testing.T) { } controllerSpec := api.ReplicationController{ - TypeMeta: api.TypeMeta{ - Kind: "ReplicationController", + ObjectMeta: api.ObjectMeta{ + Name: "test", }, DesiredState: api.ReplicationControllerState{ PodTemplate: api.PodTemplate{ @@ -198,8 +197,9 @@ func TestCreateReplica(t *testing.T) { }, }, Labels: map[string]string{ - "name": "foo", - "type": "production", + "name": "foo", + "type": "production", + "replicationController": "test", }, }, }, @@ -208,21 +208,19 @@ func TestCreateReplica(t *testing.T) { podControl.createReplica(ctx, controllerSpec) expectedPod := api.Pod{ - TypeMeta: api.TypeMeta{ - Kind: "Pod", - APIVersion: testapi.Version(), + ObjectMeta: api.ObjectMeta{ + Labels: controllerSpec.DesiredState.PodTemplate.Labels, }, - Labels: controllerSpec.DesiredState.PodTemplate.Labels, DesiredState: controllerSpec.DesiredState.PodTemplate.DesiredState, } fakeHandler.ValidateRequest(t, makeURL("/pods?namespace=default"), "POST", nil) - actualPod := api.Pod{} - if err := json.Unmarshal([]byte(fakeHandler.RequestBody), &actualPod); err != nil { + actualPod, err := client.Codec.Decode([]byte(fakeHandler.RequestBody)) + if err != nil { t.Errorf("Unexpected error: %#v", err) } - if !reflect.DeepEqual(expectedPod, actualPod) { + if !reflect.DeepEqual(&expectedPod, actualPod) { t.Logf("Body: %s", fakeHandler.RequestBody) - t.Errorf("Unexpected mismatch. Expected\n %#v,\n Got:\n %#v", expectedPod, actualPod) + t.Errorf("Unexpected mismatch. Expected\n %#v,\n Got:\n %#v", &expectedPod, actualPod) } } diff --git a/pkg/kubecfg/kubecfg_test.go b/pkg/kubecfg/kubecfg_test.go index 1ffee430b8..aaa2833ea8 100644 --- a/pkg/kubecfg/kubecfg_test.go +++ b/pkg/kubecfg/kubecfg_test.go @@ -38,8 +38,8 @@ func TestUpdateWithPods(t *testing.T) { fakeClient := client.Fake{ Pods: api.PodList{ Items: []api.Pod{ - {TypeMeta: api.TypeMeta{Name: "pod-1"}}, - {TypeMeta: api.TypeMeta{Name: "pod-2"}}, + {ObjectMeta: api.ObjectMeta{Name: "pod-1"}}, + {ObjectMeta: api.ObjectMeta{Name: "pod-2"}}, }, }, } @@ -69,8 +69,8 @@ func TestUpdateWithNewImage(t *testing.T) { fakeClient := client.Fake{ Pods: api.PodList{ Items: []api.Pod{ - {TypeMeta: api.TypeMeta{Name: "pod-1"}}, - {TypeMeta: api.TypeMeta{Name: "pod-2"}}, + {ObjectMeta: api.ObjectMeta{Name: "pod-1"}}, + {ObjectMeta: api.ObjectMeta{Name: "pod-2"}}, }, }, Ctrl: api.ReplicationController{ diff --git a/pkg/kubecfg/parse_test.go b/pkg/kubecfg/parse_test.go index 43c27e67c8..f630d2a3a3 100644 --- a/pkg/kubecfg/parse_test.go +++ b/pkg/kubecfg/parse_test.go @@ -69,7 +69,8 @@ var testParser = NewParser(map[string]runtime.Object{ func TestParsePod(t *testing.T) { DoParseTest(t, "pods", &api.Pod{ - TypeMeta: api.TypeMeta{APIVersion: "v1beta1", Name: "test pod", Kind: "Pod"}, + TypeMeta: api.TypeMeta{APIVersion: "v1beta1", Kind: "Pod"}, + ObjectMeta: api.ObjectMeta{Name: "test pod"}, DesiredState: api.PodState{ Manifest: api.ContainerManifest{ ID: "My manifest", @@ -86,11 +87,14 @@ func TestParsePod(t *testing.T) { func TestParseService(t *testing.T) { DoParseTest(t, "services", &api.Service{ - TypeMeta: api.TypeMeta{APIVersion: "v1beta1", Name: "my service", Kind: "Service"}, - Port: 8080, - Labels: map[string]string{ - "area": "staging", + TypeMeta: api.TypeMeta{APIVersion: "v1beta1", Kind: "Service"}, + ObjectMeta: api.ObjectMeta{ + Name: "my service", + Labels: map[string]string{ + "area": "staging", + }, }, + Port: 8080, Selector: map[string]string{ "area": "staging", }, @@ -99,7 +103,8 @@ func TestParseService(t *testing.T) { func TestParseController(t *testing.T) { DoParseTest(t, "replicationControllers", &api.ReplicationController{ - TypeMeta: api.TypeMeta{APIVersion: "v1beta1", Name: "my controller", Kind: "ReplicationController"}, + TypeMeta: api.TypeMeta{APIVersion: "v1beta1", Kind: "ReplicationController"}, + ObjectMeta: api.ObjectMeta{Name: "my controller"}, DesiredState: api.ReplicationControllerState{ Replicas: 9001, PodTemplate: api.PodTemplate{ @@ -120,8 +125,9 @@ func TestParseController(t *testing.T) { } type TestParseType struct { - api.TypeMeta `json:",inline" yaml:",inline"` - Data string `json:"data" yaml:"data"` + api.TypeMeta `json:",inline" yaml:",inline"` + api.ObjectMeta `json:"metadata" yaml:"metadata"` + Data string `json:"data" yaml:"data"` } func (*TestParseType) IsAnAPIObject() {} @@ -134,7 +140,8 @@ func TestParseCustomType(t *testing.T) { "custom": &TestParseType{}, }) DoParseTest(t, "custom", &TestParseType{ - TypeMeta: api.TypeMeta{APIVersion: "", Name: "my custom object", Kind: "TestParseType"}, - Data: "test data", + TypeMeta: api.TypeMeta{APIVersion: "", Kind: "TestParseType"}, + ObjectMeta: api.ObjectMeta{Name: "my custom object"}, + Data: "test data", }, v1beta1.Codec, parser) } diff --git a/pkg/kubecfg/resource_printer_test.go b/pkg/kubecfg/resource_printer_test.go index 4057874bb3..2e05228af8 100644 --- a/pkg/kubecfg/resource_printer_test.go +++ b/pkg/kubecfg/resource_printer_test.go @@ -68,7 +68,7 @@ func TestYAMLPrinterPrint(t *testing.T) { } obj := &api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, } buf.Reset() printer.PrintObj(obj, buf) @@ -92,7 +92,7 @@ func TestIdentityPrinter(t *testing.T) { } obj := &api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, } buff.Reset() printer.PrintObj(obj, buff) diff --git a/pkg/kubectl/resource_printer_test.go b/pkg/kubectl/resource_printer_test.go index 284d56f446..7585009002 100644 --- a/pkg/kubectl/resource_printer_test.go +++ b/pkg/kubectl/resource_printer_test.go @@ -69,7 +69,7 @@ func testPrinter(t *testing.T, printer ResourcePrinter, unmarshalFunc func(data } obj := &api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, } buf.Reset() printer.PrintObj(obj, buf) diff --git a/pkg/kubelet/config/config_test.go b/pkg/kubelet/config/config_test.go index 48c9501d62..e1f2ab9409 100644 --- a/pkg/kubelet/config/config_test.go +++ b/pkg/kubelet/config/config_test.go @@ -50,7 +50,7 @@ func (s sortedPods) Less(i, j int) bool { func CreateValidPod(name, namespace, source string) api.BoundPod { return api.BoundPod{ - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: name, Namespace: namespace, Annotations: map[string]string{kubelet.ConfigSourceAnnotationKey: source}, @@ -158,7 +158,7 @@ func TestInvalidPodFiltered(t *testing.T) { expectPodUpdate(t, ch, CreatePodUpdate(kubelet.ADD, CreateValidPod("foo", "new", "test"))) // add an invalid update - podUpdate = CreatePodUpdate(kubelet.UPDATE, api.BoundPod{TypeMeta: api.TypeMeta{Name: "foo"}}) + podUpdate = CreatePodUpdate(kubelet.UPDATE, api.BoundPod{ObjectMeta: api.ObjectMeta{Name: "foo"}}) channel <- podUpdate expectNoPodUpdate(t, ch) } @@ -217,7 +217,7 @@ func TestNewPodAddedUpdatedRemoved(t *testing.T) { channel <- podUpdate expectPodUpdate(t, ch, CreatePodUpdate(kubelet.UPDATE, pod)) - podUpdate = CreatePodUpdate(kubelet.REMOVE, api.BoundPod{TypeMeta: api.TypeMeta{Name: "foo", Namespace: "new"}}) + podUpdate = CreatePodUpdate(kubelet.REMOVE, api.BoundPod{ObjectMeta: api.ObjectMeta{Name: "foo", Namespace: "new"}}) channel <- podUpdate expectPodUpdate(t, ch, CreatePodUpdate(kubelet.REMOVE, pod)) } diff --git a/pkg/kubelet/config/etcd_test.go b/pkg/kubelet/config/etcd_test.go index 3cb6d5a0cc..047e71dbfe 100644 --- a/pkg/kubelet/config/etcd_test.go +++ b/pkg/kubelet/config/etcd_test.go @@ -44,14 +44,14 @@ func TestEventToPods(t *testing.T) { input: watch.Event{ Object: &api.BoundPods{ Items: []api.BoundPod{ - {TypeMeta: api.TypeMeta{Name: "foo"}}, - {TypeMeta: api.TypeMeta{Name: "bar"}}, + {ObjectMeta: api.ObjectMeta{Name: "foo"}}, + {ObjectMeta: api.ObjectMeta{Name: "bar"}}, }, }, }, pods: []api.BoundPod{ - {TypeMeta: api.TypeMeta{Name: "foo", Namespace: "default"}, Spec: api.PodSpec{}}, - {TypeMeta: api.TypeMeta{Name: "bar", Namespace: "default"}, Spec: api.PodSpec{}}, + {ObjectMeta: api.ObjectMeta{Name: "foo", Namespace: "default"}, Spec: api.PodSpec{}}, + {ObjectMeta: api.ObjectMeta{Name: "bar", Namespace: "default"}, Spec: api.PodSpec{}}, }, fail: false, }, @@ -59,14 +59,14 @@ func TestEventToPods(t *testing.T) { input: watch.Event{ Object: &api.BoundPods{ Items: []api.BoundPod{ - {TypeMeta: api.TypeMeta{Name: "1"}}, - {TypeMeta: api.TypeMeta{Name: "2", Namespace: "foo"}}, + {ObjectMeta: api.ObjectMeta{Name: "1"}}, + {ObjectMeta: api.ObjectMeta{Name: "2", Namespace: "foo"}}, }, }, }, pods: []api.BoundPod{ - {TypeMeta: api.TypeMeta{Name: "1", Namespace: "default"}, Spec: api.PodSpec{}}, - {TypeMeta: api.TypeMeta{Name: "2", Namespace: "foo"}, Spec: api.PodSpec{}}, + {ObjectMeta: api.ObjectMeta{Name: "1", Namespace: "default"}, Spec: api.PodSpec{}}, + {ObjectMeta: api.ObjectMeta{Name: "2", Namespace: "foo"}, Spec: api.PodSpec{}}, }, fail: false, }, diff --git a/pkg/kubelet/config/file_test.go b/pkg/kubelet/config/file_test.go index 77b27dec22..f34073a69e 100644 --- a/pkg/kubelet/config/file_test.go +++ b/pkg/kubelet/config/file_test.go @@ -52,7 +52,7 @@ func ExampleManifestAndPod(id string) (api.ContainerManifest, api.BoundPod) { }, } expectedPod := api.BoundPod{ - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: id, UID: "uid", Namespace: "default", @@ -118,7 +118,7 @@ func TestReadFromFile(t *testing.T) { case got := <-ch: update := got.(kubelet.PodUpdate) expected := CreatePodUpdate(kubelet.SET, api.BoundPod{ - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: simpleSubdomainSafeHash(file.Name()), UID: simpleSubdomainSafeHash(file.Name()), Namespace: "default", diff --git a/pkg/kubelet/config/http_test.go b/pkg/kubelet/config/http_test.go index 76cf2b2768..3817f1bcd7 100644 --- a/pkg/kubelet/config/http_test.go +++ b/pkg/kubelet/config/http_test.go @@ -124,7 +124,7 @@ func TestExtractFromHTTP(t *testing.T) { manifests: api.ContainerManifest{Version: "v1beta1", ID: "foo"}, expected: CreatePodUpdate(kubelet.SET, api.BoundPod{ - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "foo", Namespace: "default", }, @@ -141,14 +141,14 @@ func TestExtractFromHTTP(t *testing.T) { }, expected: CreatePodUpdate(kubelet.SET, api.BoundPod{ - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "1", Namespace: "default", }, Spec: api.PodSpec{Containers: []api.Container{{Name: "1", Image: "foo"}}}, }, api.BoundPod{ - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "bar", Namespace: "default", }, diff --git a/pkg/kubelet/kubelet_test.go b/pkg/kubelet/kubelet_test.go index 0ca6174dfa..246b13765f 100644 --- a/pkg/kubelet/kubelet_test.go +++ b/pkg/kubelet/kubelet_test.go @@ -167,7 +167,7 @@ func TestSyncPodsDoesNothing(t *testing.T) { } err := kubelet.SyncPods([]api.BoundPod{ { - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "foo", Namespace: "new", Annotations: map[string]string{ConfigSourceAnnotationKey: "test"}, @@ -213,7 +213,7 @@ func TestSyncPodsCreatesNetAndContainer(t *testing.T) { fakeDocker.ContainerList = []docker.APIContainers{} err := kubelet.SyncPods([]api.BoundPod{ { - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "foo", Namespace: "new", Annotations: map[string]string{ConfigSourceAnnotationKey: "test"}, @@ -261,7 +261,7 @@ func TestSyncPodsCreatesNetAndContainerPullsImage(t *testing.T) { fakeDocker.ContainerList = []docker.APIContainers{} err := kubelet.SyncPods([]api.BoundPod{ { - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "foo", Namespace: "new", Annotations: map[string]string{ConfigSourceAnnotationKey: "test"}, @@ -306,7 +306,7 @@ func TestSyncPodsWithNetCreatesContainer(t *testing.T) { } err := kubelet.SyncPods([]api.BoundPod{ { - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "foo", Namespace: "new", Annotations: map[string]string{ConfigSourceAnnotationKey: "test"}, @@ -347,7 +347,7 @@ func TestSyncPodsWithNetCreatesContainerCallsHandler(t *testing.T) { } err := kubelet.SyncPods([]api.BoundPod{ { - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "foo", Namespace: "new", Annotations: map[string]string{ConfigSourceAnnotationKey: "test"}, @@ -400,7 +400,7 @@ func TestSyncPodsDeletesWithNoNetContainer(t *testing.T) { } err := kubelet.SyncPods([]api.BoundPod{ { - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "foo", Namespace: "new", Annotations: map[string]string{ConfigSourceAnnotationKey: "test"}, @@ -495,7 +495,7 @@ func TestSyncPodDeletesDuplicate(t *testing.T) { }, } err := kubelet.syncPod(&api.BoundPod{ - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "bar", Namespace: "new", Annotations: map[string]string{ConfigSourceAnnotationKey: "test"}, @@ -544,7 +544,7 @@ func TestSyncPodBadHash(t *testing.T) { }, } err := kubelet.syncPod(&api.BoundPod{ - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "foo", Namespace: "new", Annotations: map[string]string{ConfigSourceAnnotationKey: "test"}, @@ -588,7 +588,7 @@ func TestSyncPodUnhealthy(t *testing.T) { }, } err := kubelet.syncPod(&api.BoundPod{ - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "foo", Namespace: "new", Annotations: map[string]string{ConfigSourceAnnotationKey: "test"}, @@ -648,7 +648,7 @@ func TestMakeEnvVariables(t *testing.T) { func TestMountExternalVolumes(t *testing.T) { kubelet, _, _ := newTestKubelet(t) pod := api.BoundPod{ - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "foo", Namespace: "test", }, @@ -703,7 +703,7 @@ func TestMakeVolumesAndBinds(t *testing.T) { } pod := api.BoundPod{ - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "pod", Namespace: "test", }, @@ -991,7 +991,7 @@ func TestRunInContainerNoSuchPod(t *testing.T) { podNamespace := "etcd" containerName := "containerFoo" output, err := kubelet.RunInContainer( - GetPodFullName(&api.BoundPod{TypeMeta: api.TypeMeta{Name: podName, Namespace: podNamespace}}), + GetPodFullName(&api.BoundPod{ObjectMeta: api.ObjectMeta{Name: podName, Namespace: podNamespace}}), "", containerName, []string{"ls"}) @@ -1023,7 +1023,7 @@ func TestRunInContainer(t *testing.T) { cmd := []string{"ls"} _, err := kubelet.RunInContainer( GetPodFullName(&api.BoundPod{ - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: podName, Namespace: podNamespace, Annotations: map[string]string{ConfigSourceAnnotationKey: "test"}, @@ -1165,7 +1165,7 @@ func TestSyncPodEventHandlerFails(t *testing.T) { }, } err := kubelet.syncPod(&api.BoundPod{ - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "foo", Namespace: "new", Annotations: map[string]string{ConfigSourceAnnotationKey: "test"}, diff --git a/pkg/kubelet/runonce_test.go b/pkg/kubelet/runonce_test.go index 287c0be1d8..37d58265ca 100644 --- a/pkg/kubelet/runonce_test.go +++ b/pkg/kubelet/runonce_test.go @@ -108,7 +108,7 @@ func TestRunOnce(t *testing.T) { kb.dockerPuller = &dockertools.FakeDockerPuller{} results, err := kb.runOnce([]api.BoundPod{ { - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "foo", Namespace: "new", Annotations: map[string]string{ConfigSourceAnnotationKey: "test"}, diff --git a/pkg/kubelet/server_test.go b/pkg/kubelet/server_test.go index d8d31194e5..396170828f 100644 --- a/pkg/kubelet/server_test.go +++ b/pkg/kubelet/server_test.go @@ -132,7 +132,7 @@ func TestContainer(t *testing.T) { } expectedPods := []api.BoundPod{ { - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "test_manifest", UID: "value", }, @@ -207,7 +207,7 @@ func TestContainers(t *testing.T) { } expectedPods := []api.BoundPod{ { - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "1", }, Spec: api.PodSpec{ @@ -227,7 +227,7 @@ func TestContainers(t *testing.T) { }, }, { - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "2", }, Spec: api.PodSpec{ diff --git a/pkg/master/pod_cache_test.go b/pkg/master/pod_cache_test.go index ac3b096fb3..82170b7c12 100644 --- a/pkg/master/pod_cache_test.go +++ b/pkg/master/pod_cache_test.go @@ -124,7 +124,7 @@ func TestPodGetPodInfoGetter(t *testing.T) { func TestPodUpdateAllContainers(t *testing.T) { pod := api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo", Namespace: api.NamespaceDefault}, + ObjectMeta: api.ObjectMeta{Name: "foo", Namespace: api.NamespaceDefault}, CurrentState: api.PodState{ Host: "machine", }, diff --git a/pkg/proxy/config/api_test.go b/pkg/proxy/config/api_test.go index bba7dbc4da..fbb3ad487b 100644 --- a/pkg/proxy/config/api_test.go +++ b/pkg/proxy/config/api_test.go @@ -27,7 +27,7 @@ import ( ) func TestServices(t *testing.T) { - service := api.Service{TypeMeta: api.TypeMeta{Name: "bar", ResourceVersion: "2"}} + service := api.Service{ObjectMeta: api.ObjectMeta{Name: "bar", ResourceVersion: "2"}} fakeWatch := watch.NewFake() fakeClient := &client.Fake{Watch: fakeWatch} @@ -72,13 +72,13 @@ func TestServices(t *testing.T) { } func TestServicesFromZero(t *testing.T) { - service := api.Service{TypeMeta: api.TypeMeta{Name: "bar", ResourceVersion: "2"}} + service := api.Service{ObjectMeta: api.ObjectMeta{Name: "bar", ResourceVersion: "2"}} fakeWatch := watch.NewFake() fakeWatch.Stop() fakeClient := &client.Fake{Watch: fakeWatch} fakeClient.ServiceList = api.ServiceList{ - TypeMeta: api.TypeMeta{ResourceVersion: "2"}, + ListMeta: api.ListMeta{ResourceVersion: "2"}, Items: []api.Service{ service, }, @@ -152,7 +152,7 @@ func TestServicesFromZeroError(t *testing.T) { } func TestEndpoints(t *testing.T) { - endpoint := api.Endpoints{TypeMeta: api.TypeMeta{Name: "bar", ResourceVersion: "2"}, Endpoints: []string{"127.0.0.1:9000"}} + endpoint := api.Endpoints{ObjectMeta: api.ObjectMeta{Name: "bar", ResourceVersion: "2"}, Endpoints: []string{"127.0.0.1:9000"}} fakeWatch := watch.NewFake() fakeClient := &client.Fake{Watch: fakeWatch} @@ -197,13 +197,13 @@ func TestEndpoints(t *testing.T) { } func TestEndpointsFromZero(t *testing.T) { - endpoint := api.Endpoints{TypeMeta: api.TypeMeta{Name: "bar", ResourceVersion: "2"}, Endpoints: []string{"127.0.0.1:9000"}} + endpoint := api.Endpoints{ObjectMeta: api.ObjectMeta{Name: "bar", ResourceVersion: "2"}, Endpoints: []string{"127.0.0.1:9000"}} fakeWatch := watch.NewFake() fakeWatch.Stop() fakeClient := &client.Fake{Watch: fakeWatch} fakeClient.EndpointsList = api.EndpointsList{ - TypeMeta: api.TypeMeta{ResourceVersion: "2"}, + ListMeta: api.ListMeta{ResourceVersion: "2"}, Items: []api.Endpoints{ endpoint, }, diff --git a/pkg/proxy/config/config_test.go b/pkg/proxy/config/config_test.go index 95d0bebb1c..67222f2b9c 100644 --- a/pkg/proxy/config/config_test.go +++ b/pkg/proxy/config/config_test.go @@ -136,7 +136,7 @@ func TestNewServiceAddedAndNotified(t *testing.T) { handler := NewServiceHandlerMock() handler.Wait(1) config.RegisterHandler(handler) - serviceUpdate := CreateServiceUpdate(ADD, api.Service{TypeMeta: api.TypeMeta{Name: "foo"}, Port: 10}) + serviceUpdate := CreateServiceUpdate(ADD, api.Service{ObjectMeta: api.ObjectMeta{Name: "foo"}, Port: 10}) channel <- serviceUpdate handler.ValidateServices(t, serviceUpdate.Services) @@ -147,24 +147,24 @@ func TestServiceAddedRemovedSetAndNotified(t *testing.T) { channel := config.Channel("one") handler := NewServiceHandlerMock() config.RegisterHandler(handler) - serviceUpdate := CreateServiceUpdate(ADD, api.Service{TypeMeta: api.TypeMeta{Name: "foo"}, Port: 10}) + serviceUpdate := CreateServiceUpdate(ADD, api.Service{ObjectMeta: api.ObjectMeta{Name: "foo"}, Port: 10}) handler.Wait(1) channel <- serviceUpdate handler.ValidateServices(t, serviceUpdate.Services) - serviceUpdate2 := CreateServiceUpdate(ADD, api.Service{TypeMeta: api.TypeMeta{Name: "bar"}, Port: 20}) + serviceUpdate2 := CreateServiceUpdate(ADD, api.Service{ObjectMeta: api.ObjectMeta{Name: "bar"}, Port: 20}) handler.Wait(1) channel <- serviceUpdate2 services := []api.Service{serviceUpdate2.Services[0], serviceUpdate.Services[0]} handler.ValidateServices(t, services) - serviceUpdate3 := CreateServiceUpdate(REMOVE, api.Service{TypeMeta: api.TypeMeta{Name: "foo"}}) + serviceUpdate3 := CreateServiceUpdate(REMOVE, api.Service{ObjectMeta: api.ObjectMeta{Name: "foo"}}) handler.Wait(1) channel <- serviceUpdate3 services = []api.Service{serviceUpdate2.Services[0]} handler.ValidateServices(t, services) - serviceUpdate4 := CreateServiceUpdate(SET, api.Service{TypeMeta: api.TypeMeta{Name: "foobar"}, Port: 99}) + serviceUpdate4 := CreateServiceUpdate(SET, api.Service{ObjectMeta: api.ObjectMeta{Name: "foobar"}, Port: 99}) handler.Wait(1) channel <- serviceUpdate4 services = []api.Service{serviceUpdate4.Services[0]} @@ -180,8 +180,8 @@ func TestNewMultipleSourcesServicesAddedAndNotified(t *testing.T) { } handler := NewServiceHandlerMock() config.RegisterHandler(handler) - serviceUpdate1 := CreateServiceUpdate(ADD, api.Service{TypeMeta: api.TypeMeta{Name: "foo"}, Port: 10}) - serviceUpdate2 := CreateServiceUpdate(ADD, api.Service{TypeMeta: api.TypeMeta{Name: "bar"}, Port: 20}) + serviceUpdate1 := CreateServiceUpdate(ADD, api.Service{ObjectMeta: api.ObjectMeta{Name: "foo"}, Port: 10}) + serviceUpdate2 := CreateServiceUpdate(ADD, api.Service{ObjectMeta: api.ObjectMeta{Name: "bar"}, Port: 20}) handler.Wait(2) channelOne <- serviceUpdate1 channelTwo <- serviceUpdate2 @@ -197,8 +197,8 @@ func TestNewMultipleSourcesServicesMultipleHandlersAddedAndNotified(t *testing.T handler2 := NewServiceHandlerMock() config.RegisterHandler(handler) config.RegisterHandler(handler2) - serviceUpdate1 := CreateServiceUpdate(ADD, api.Service{TypeMeta: api.TypeMeta{Name: "foo"}, Port: 10}) - serviceUpdate2 := CreateServiceUpdate(ADD, api.Service{TypeMeta: api.TypeMeta{Name: "bar"}, Port: 20}) + serviceUpdate1 := CreateServiceUpdate(ADD, api.Service{ObjectMeta: api.ObjectMeta{Name: "foo"}, Port: 10}) + serviceUpdate2 := CreateServiceUpdate(ADD, api.Service{ObjectMeta: api.ObjectMeta{Name: "bar"}, Port: 20}) handler.Wait(2) handler2.Wait(2) channelOne <- serviceUpdate1 @@ -217,12 +217,12 @@ func TestNewMultipleSourcesEndpointsMultipleHandlersAddedAndNotified(t *testing. config.RegisterHandler(handler) config.RegisterHandler(handler2) endpointsUpdate1 := CreateEndpointsUpdate(ADD, api.Endpoints{ - TypeMeta: api.TypeMeta{Name: "foo"}, - Endpoints: []string{"endpoint1", "endpoint2"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, + Endpoints: []string{"endpoint1", "endpoint2"}, }) endpointsUpdate2 := CreateEndpointsUpdate(ADD, api.Endpoints{ - TypeMeta: api.TypeMeta{Name: "bar"}, - Endpoints: []string{"endpoint3", "endpoint4"}, + ObjectMeta: api.ObjectMeta{Name: "bar"}, + Endpoints: []string{"endpoint3", "endpoint4"}, }) handler.Wait(2) handler2.Wait(2) @@ -243,12 +243,12 @@ func TestNewMultipleSourcesEndpointsMultipleHandlersAddRemoveSetAndNotified(t *t config.RegisterHandler(handler) config.RegisterHandler(handler2) endpointsUpdate1 := CreateEndpointsUpdate(ADD, api.Endpoints{ - TypeMeta: api.TypeMeta{Name: "foo"}, - Endpoints: []string{"endpoint1", "endpoint2"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, + Endpoints: []string{"endpoint1", "endpoint2"}, }) endpointsUpdate2 := CreateEndpointsUpdate(ADD, api.Endpoints{ - TypeMeta: api.TypeMeta{Name: "bar"}, - Endpoints: []string{"endpoint3", "endpoint4"}, + ObjectMeta: api.ObjectMeta{Name: "bar"}, + Endpoints: []string{"endpoint3", "endpoint4"}, }) handler.Wait(2) handler2.Wait(2) @@ -261,8 +261,8 @@ func TestNewMultipleSourcesEndpointsMultipleHandlersAddRemoveSetAndNotified(t *t // Add one more endpointsUpdate3 := CreateEndpointsUpdate(ADD, api.Endpoints{ - TypeMeta: api.TypeMeta{Name: "foobar"}, - Endpoints: []string{"endpoint5", "endpoint6"}, + ObjectMeta: api.ObjectMeta{Name: "foobar"}, + Endpoints: []string{"endpoint5", "endpoint6"}, }) handler.Wait(1) handler2.Wait(1) @@ -273,8 +273,8 @@ func TestNewMultipleSourcesEndpointsMultipleHandlersAddRemoveSetAndNotified(t *t // Update the "foo" service with new endpoints endpointsUpdate1 = CreateEndpointsUpdate(ADD, api.Endpoints{ - TypeMeta: api.TypeMeta{Name: "foo"}, - Endpoints: []string{"endpoint77"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, + Endpoints: []string{"endpoint77"}, }) handler.Wait(1) handler2.Wait(1) @@ -284,7 +284,7 @@ func TestNewMultipleSourcesEndpointsMultipleHandlersAddRemoveSetAndNotified(t *t handler2.ValidateEndpoints(t, endpoints) // Remove "bar" service - endpointsUpdate2 = CreateEndpointsUpdate(REMOVE, api.Endpoints{TypeMeta: api.TypeMeta{Name: "bar"}}) + endpointsUpdate2 = CreateEndpointsUpdate(REMOVE, api.Endpoints{ObjectMeta: api.ObjectMeta{Name: "bar"}}) handler.Wait(1) handler2.Wait(1) channelTwo <- endpointsUpdate2 diff --git a/pkg/proxy/proxier_test.go b/pkg/proxy/proxier_test.go index 1684b50f85..196a4d5e71 100644 --- a/pkg/proxy/proxier_test.go +++ b/pkg/proxy/proxier_test.go @@ -163,8 +163,8 @@ func TestTCPProxy(t *testing.T) { lb := NewLoadBalancerRR() lb.OnUpdate([]api.Endpoints{ { - TypeMeta: api.TypeMeta{Name: "echo"}, - Endpoints: []string{net.JoinHostPort("127.0.0.1", tcpServerPort)}, + ObjectMeta: api.ObjectMeta{Name: "echo"}, + Endpoints: []string{net.JoinHostPort("127.0.0.1", tcpServerPort)}, }, }) @@ -181,8 +181,8 @@ func TestUDPProxy(t *testing.T) { lb := NewLoadBalancerRR() lb.OnUpdate([]api.Endpoints{ { - TypeMeta: api.TypeMeta{Name: "echo"}, - Endpoints: []string{net.JoinHostPort("127.0.0.1", udpServerPort)}, + ObjectMeta: api.ObjectMeta{Name: "echo"}, + Endpoints: []string{net.JoinHostPort("127.0.0.1", udpServerPort)}, }, }) @@ -208,8 +208,8 @@ func TestTCPProxyStop(t *testing.T) { lb := NewLoadBalancerRR() lb.OnUpdate([]api.Endpoints{ { - TypeMeta: api.TypeMeta{Name: "echo"}, - Endpoints: []string{net.JoinHostPort("127.0.0.1", tcpServerPort)}, + ObjectMeta: api.ObjectMeta{Name: "echo"}, + Endpoints: []string{net.JoinHostPort("127.0.0.1", tcpServerPort)}, }, }) @@ -236,8 +236,8 @@ func TestUDPProxyStop(t *testing.T) { lb := NewLoadBalancerRR() lb.OnUpdate([]api.Endpoints{ { - TypeMeta: api.TypeMeta{Name: "echo"}, - Endpoints: []string{net.JoinHostPort("127.0.0.1", udpServerPort)}, + ObjectMeta: api.ObjectMeta{Name: "echo"}, + Endpoints: []string{net.JoinHostPort("127.0.0.1", udpServerPort)}, }, }) @@ -264,8 +264,8 @@ func TestTCPProxyUpdateDelete(t *testing.T) { lb := NewLoadBalancerRR() lb.OnUpdate([]api.Endpoints{ { - TypeMeta: api.TypeMeta{Name: "echo"}, - Endpoints: []string{net.JoinHostPort("127.0.0.1", tcpServerPort)}, + ObjectMeta: api.ObjectMeta{Name: "echo"}, + Endpoints: []string{net.JoinHostPort("127.0.0.1", tcpServerPort)}, }, }) @@ -291,8 +291,8 @@ func TestUDPProxyUpdateDelete(t *testing.T) { lb := NewLoadBalancerRR() lb.OnUpdate([]api.Endpoints{ { - TypeMeta: api.TypeMeta{Name: "echo"}, - Endpoints: []string{net.JoinHostPort("127.0.0.1", udpServerPort)}, + ObjectMeta: api.ObjectMeta{Name: "echo"}, + Endpoints: []string{net.JoinHostPort("127.0.0.1", udpServerPort)}, }, }) @@ -318,8 +318,8 @@ func TestTCPProxyUpdateDeleteUpdate(t *testing.T) { lb := NewLoadBalancerRR() lb.OnUpdate([]api.Endpoints{ { - TypeMeta: api.TypeMeta{Name: "echo"}, - Endpoints: []string{net.JoinHostPort("127.0.0.1", tcpServerPort)}, + ObjectMeta: api.ObjectMeta{Name: "echo"}, + Endpoints: []string{net.JoinHostPort("127.0.0.1", tcpServerPort)}, }, }) @@ -340,7 +340,7 @@ func TestTCPProxyUpdateDeleteUpdate(t *testing.T) { t.Fatalf(err.Error()) } p.OnUpdate([]api.Service{ - {TypeMeta: api.TypeMeta{Name: "echo"}, Port: svcInfo.proxyPort, ProxyPort: svcInfo.proxyPort, Protocol: "TCP"}, + {ObjectMeta: api.ObjectMeta{Name: "echo"}, Port: svcInfo.proxyPort, ProxyPort: svcInfo.proxyPort, Protocol: "TCP"}, }) testEchoTCP(t, "127.0.0.1", svcInfo.proxyPort) } @@ -349,8 +349,8 @@ func TestUDPProxyUpdateDeleteUpdate(t *testing.T) { lb := NewLoadBalancerRR() lb.OnUpdate([]api.Endpoints{ { - TypeMeta: api.TypeMeta{Name: "echo"}, - Endpoints: []string{net.JoinHostPort("127.0.0.1", udpServerPort)}, + ObjectMeta: api.ObjectMeta{Name: "echo"}, + Endpoints: []string{net.JoinHostPort("127.0.0.1", udpServerPort)}, }, }) @@ -371,7 +371,7 @@ func TestUDPProxyUpdateDeleteUpdate(t *testing.T) { t.Fatalf(err.Error()) } p.OnUpdate([]api.Service{ - {TypeMeta: api.TypeMeta{Name: "echo"}, Port: svcInfo.proxyPort, ProxyPort: svcInfo.proxyPort, Protocol: "UDP"}, + {ObjectMeta: api.ObjectMeta{Name: "echo"}, Port: svcInfo.proxyPort, ProxyPort: svcInfo.proxyPort, Protocol: "UDP"}, }) testEchoUDP(t, "127.0.0.1", svcInfo.proxyPort) } @@ -380,8 +380,8 @@ func TestTCPProxyUpdatePort(t *testing.T) { lb := NewLoadBalancerRR() lb.OnUpdate([]api.Endpoints{ { - TypeMeta: api.TypeMeta{Name: "echo"}, - Endpoints: []string{net.JoinHostPort("127.0.0.1", tcpServerPort)}, + ObjectMeta: api.ObjectMeta{Name: "echo"}, + Endpoints: []string{net.JoinHostPort("127.0.0.1", tcpServerPort)}, }, }) @@ -406,7 +406,7 @@ func TestTCPProxyUpdatePort(t *testing.T) { t.Errorf("expected difference, got %d %d", newPort, svcInfo.proxyPort) } p.OnUpdate([]api.Service{ - {TypeMeta: api.TypeMeta{Name: "echo"}, Port: newPort, ProxyPort: newPort, Protocol: "TCP"}, + {ObjectMeta: api.ObjectMeta{Name: "echo"}, Port: newPort, ProxyPort: newPort, Protocol: "TCP"}, }) if err := waitForClosedPortTCP(p, svcInfo.proxyPort); err != nil { t.Fatalf(err.Error()) @@ -425,8 +425,8 @@ func TestUDPProxyUpdatePort(t *testing.T) { lb := NewLoadBalancerRR() lb.OnUpdate([]api.Endpoints{ { - TypeMeta: api.TypeMeta{Name: "echo"}, - Endpoints: []string{net.JoinHostPort("127.0.0.1", udpServerPort)}, + ObjectMeta: api.ObjectMeta{Name: "echo"}, + Endpoints: []string{net.JoinHostPort("127.0.0.1", udpServerPort)}, }, }) @@ -451,7 +451,7 @@ func TestUDPProxyUpdatePort(t *testing.T) { t.Errorf("expected difference, got %d %d", newPort, svcInfo.proxyPort) } p.OnUpdate([]api.Service{ - {TypeMeta: api.TypeMeta{Name: "echo"}, Port: newPort, ProxyPort: newPort, Protocol: "UDP"}, + {ObjectMeta: api.ObjectMeta{Name: "echo"}, Port: newPort, ProxyPort: newPort, Protocol: "UDP"}, }) if err := waitForClosedPortUDP(p, svcInfo.proxyPort); err != nil { t.Fatalf(err.Error()) diff --git a/pkg/proxy/roundrobin_test.go b/pkg/proxy/roundrobin_test.go index 08cf789573..4fa68f980d 100644 --- a/pkg/proxy/roundrobin_test.go +++ b/pkg/proxy/roundrobin_test.go @@ -86,8 +86,8 @@ func TestLoadBalanceWorksWithSingleEndpoint(t *testing.T) { } endpoints := make([]api.Endpoints, 1) endpoints[0] = api.Endpoints{ - TypeMeta: api.TypeMeta{Name: "foo"}, - Endpoints: []string{"endpoint1:40"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, + Endpoints: []string{"endpoint1:40"}, } loadBalancer.OnUpdate(endpoints) expectEndpoint(t, loadBalancer, "foo", "endpoint1:40") @@ -104,8 +104,8 @@ func TestLoadBalanceWorksWithMultipleEndpoints(t *testing.T) { } endpoints := make([]api.Endpoints, 1) endpoints[0] = api.Endpoints{ - TypeMeta: api.TypeMeta{Name: "foo"}, - Endpoints: []string{"endpoint:1", "endpoint:2", "endpoint:3"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, + Endpoints: []string{"endpoint:1", "endpoint:2", "endpoint:3"}, } loadBalancer.OnUpdate(endpoints) expectEndpoint(t, loadBalancer, "foo", "endpoint:1") @@ -122,8 +122,8 @@ func TestLoadBalanceWorksWithMultipleEndpointsAndUpdates(t *testing.T) { } endpoints := make([]api.Endpoints, 1) endpoints[0] = api.Endpoints{ - TypeMeta: api.TypeMeta{Name: "foo"}, - Endpoints: []string{"endpoint:1", "endpoint:2", "endpoint:3"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, + Endpoints: []string{"endpoint:1", "endpoint:2", "endpoint:3"}, } loadBalancer.OnUpdate(endpoints) expectEndpoint(t, loadBalancer, "foo", "endpoint:1") @@ -133,7 +133,7 @@ func TestLoadBalanceWorksWithMultipleEndpointsAndUpdates(t *testing.T) { expectEndpoint(t, loadBalancer, "foo", "endpoint:2") // Then update the configuration with one fewer endpoints, make sure // we start in the beginning again - endpoints[0] = api.Endpoints{TypeMeta: api.TypeMeta{Name: "foo"}, + endpoints[0] = api.Endpoints{ObjectMeta: api.ObjectMeta{Name: "foo"}, Endpoints: []string{"endpoint:8", "endpoint:9"}, } loadBalancer.OnUpdate(endpoints) @@ -142,7 +142,7 @@ func TestLoadBalanceWorksWithMultipleEndpointsAndUpdates(t *testing.T) { expectEndpoint(t, loadBalancer, "foo", "endpoint:8") expectEndpoint(t, loadBalancer, "foo", "endpoint:9") // Clear endpoints - endpoints[0] = api.Endpoints{TypeMeta: api.TypeMeta{Name: "foo"}, Endpoints: []string{}} + endpoints[0] = api.Endpoints{ObjectMeta: api.ObjectMeta{Name: "foo"}, Endpoints: []string{}} loadBalancer.OnUpdate(endpoints) endpoint, err = loadBalancer.NextEndpoint("foo", nil) @@ -159,12 +159,12 @@ func TestLoadBalanceWorksWithServiceRemoval(t *testing.T) { } endpoints := make([]api.Endpoints, 2) endpoints[0] = api.Endpoints{ - TypeMeta: api.TypeMeta{Name: "foo"}, - Endpoints: []string{"endpoint:1", "endpoint:2", "endpoint:3"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, + Endpoints: []string{"endpoint:1", "endpoint:2", "endpoint:3"}, } endpoints[1] = api.Endpoints{ - TypeMeta: api.TypeMeta{Name: "bar"}, - Endpoints: []string{"endpoint:4", "endpoint:5"}, + ObjectMeta: api.ObjectMeta{Name: "bar"}, + Endpoints: []string{"endpoint:4", "endpoint:5"}, } loadBalancer.OnUpdate(endpoints) expectEndpoint(t, loadBalancer, "foo", "endpoint:1") diff --git a/pkg/registry/controller/rest_test.go b/pkg/registry/controller/rest_test.go index 02d84e15be..28e8e832be 100644 --- a/pkg/registry/controller/rest_test.go +++ b/pkg/registry/controller/rest_test.go @@ -51,7 +51,7 @@ func TestListControllersError(t *testing.T) { } func TestListEmptyControllerList(t *testing.T) { - mockRegistry := registrytest.ControllerRegistry{nil, &api.ReplicationControllerList{TypeMeta: api.TypeMeta{ResourceVersion: "1"}}} + mockRegistry := registrytest.ControllerRegistry{nil, &api.ReplicationControllerList{ListMeta: api.ListMeta{ResourceVersion: "1"}}} storage := REST{ registry: &mockRegistry, } @@ -74,12 +74,12 @@ func TestListControllerList(t *testing.T) { Controllers: &api.ReplicationControllerList{ Items: []api.ReplicationController{ { - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "foo", }, }, { - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "bar", }, }, @@ -113,7 +113,7 @@ func TestControllerDecode(t *testing.T) { registry: &mockRegistry, } controller := &api.ReplicationController{ - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "foo", }, } @@ -134,8 +134,11 @@ func TestControllerDecode(t *testing.T) { func TestControllerParsing(t *testing.T) { expectedController := api.ReplicationController{ - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "nginxController", + Labels: map[string]string{ + "name": "nginx", + }, }, DesiredState: api.ReplicationControllerState{ Replicas: 2, @@ -163,9 +166,6 @@ func TestControllerParsing(t *testing.T) { }, }, }, - Labels: map[string]string{ - "name": "nginx", - }, } file, err := ioutil.TempFile("", "controller") fileName := file.Name() @@ -225,8 +225,10 @@ func TestCreateController(t *testing.T) { Pods: &api.PodList{ Items: []api.Pod{ { - TypeMeta: api.TypeMeta{Name: "foo"}, - Labels: map[string]string{"a": "b"}, + ObjectMeta: api.ObjectMeta{ + Name: "foo", + Labels: map[string]string{"a": "b"}, + }, }, }, }, @@ -237,7 +239,7 @@ func TestCreateController(t *testing.T) { pollPeriod: time.Millisecond * 1, } controller := &api.ReplicationController{ - TypeMeta: api.TypeMeta{Name: "test"}, + ObjectMeta: api.ObjectMeta{Name: "test"}, DesiredState: api.ReplicationControllerState{ Replicas: 2, ReplicaSelector: map[string]string{"a": "b"}, @@ -270,13 +272,13 @@ func TestControllerStorageValidatesCreate(t *testing.T) { } failureCases := map[string]api.ReplicationController{ "empty ID": { - TypeMeta: api.TypeMeta{Name: ""}, + ObjectMeta: api.ObjectMeta{Name: ""}, DesiredState: api.ReplicationControllerState{ ReplicaSelector: map[string]string{"bar": "baz"}, }, }, "empty selector": { - TypeMeta: api.TypeMeta{Name: "abc"}, + ObjectMeta: api.ObjectMeta{Name: "abc"}, DesiredState: api.ReplicationControllerState{}, }, } @@ -301,13 +303,13 @@ func TestControllerStorageValidatesUpdate(t *testing.T) { } failureCases := map[string]api.ReplicationController{ "empty ID": { - TypeMeta: api.TypeMeta{Name: ""}, + ObjectMeta: api.ObjectMeta{Name: ""}, DesiredState: api.ReplicationControllerState{ ReplicaSelector: map[string]string{"bar": "baz"}, }, }, "empty selector": { - TypeMeta: api.TypeMeta{Name: "abc"}, + ObjectMeta: api.ObjectMeta{Name: "abc"}, DesiredState: api.ReplicationControllerState{}, }, } @@ -338,8 +340,8 @@ func TestFillCurrentState(t *testing.T) { fakeLister := fakePodLister{ l: api.PodList{ Items: []api.Pod{ - {TypeMeta: api.TypeMeta{Name: "foo"}}, - {TypeMeta: api.TypeMeta{Name: "bar"}}, + {ObjectMeta: api.ObjectMeta{Name: "foo"}}, + {ObjectMeta: api.ObjectMeta{Name: "bar"}}, }, }, } @@ -368,7 +370,7 @@ func TestFillCurrentState(t *testing.T) { func TestCreateControllerWithConflictingNamespace(t *testing.T) { storage := REST{} controller := &api.ReplicationController{ - TypeMeta: api.TypeMeta{Name: "test", Namespace: "not-default"}, + ObjectMeta: api.ObjectMeta{Name: "test", Namespace: "not-default"}, } ctx := api.NewDefaultContext() @@ -386,7 +388,7 @@ func TestCreateControllerWithConflictingNamespace(t *testing.T) { func TestUpdateControllerWithConflictingNamespace(t *testing.T) { storage := REST{} controller := &api.ReplicationController{ - TypeMeta: api.TypeMeta{Name: "test", Namespace: "not-default"}, + ObjectMeta: api.ObjectMeta{Name: "test", Namespace: "not-default"}, } ctx := api.NewDefaultContext() diff --git a/pkg/registry/endpoint/rest_test.go b/pkg/registry/endpoint/rest_test.go index aaa0284bd1..79803c1ce2 100644 --- a/pkg/registry/endpoint/rest_test.go +++ b/pkg/registry/endpoint/rest_test.go @@ -29,8 +29,8 @@ import ( func TestGetEndpoints(t *testing.T) { registry := ®istrytest.ServiceRegistry{ Endpoints: api.Endpoints{ - TypeMeta: api.TypeMeta{Name: "foo"}, - Endpoints: []string{"127.0.0.1:9000"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, + Endpoints: []string{"127.0.0.1:9000"}, }, } storage := NewREST(registry) @@ -59,7 +59,7 @@ func TestGetEndpointsMissingService(t *testing.T) { // returns empty endpoints registry.Err = nil registry.Service = &api.Service{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, } obj, err := storage.Get(ctx, "foo") if err != nil { @@ -74,10 +74,10 @@ func TestEndpointsRegistryList(t *testing.T) { registry := registrytest.NewServiceRegistry() storage := NewREST(registry) registry.EndpointsList = api.EndpointsList{ - TypeMeta: api.TypeMeta{ResourceVersion: "1"}, + ListMeta: api.ListMeta{ResourceVersion: "1"}, Items: []api.Endpoints{ - {TypeMeta: api.TypeMeta{Name: "foo"}}, - {TypeMeta: api.TypeMeta{Name: "bar"}}, + {ObjectMeta: api.ObjectMeta{Name: "foo"}}, + {ObjectMeta: api.ObjectMeta{Name: "bar"}}, }, } ctx := api.NewContext() diff --git a/pkg/registry/etcd/etcd_test.go b/pkg/registry/etcd/etcd_test.go index bef2a77f36..03cef5152e 100644 --- a/pkg/registry/etcd/etcd_test.go +++ b/pkg/registry/etcd/etcd_test.go @@ -87,8 +87,8 @@ func TestEtcdGetPodDifferentNamespace(t *testing.T) { key1, _ := makePodKey(ctx1, "foo") key2, _ := makePodKey(ctx2, "foo") - fakeClient.Set(key1, runtime.EncodeOrDie(latest.Codec, &api.Pod{TypeMeta: api.TypeMeta{Namespace: "default", Name: "foo"}}), 0) - fakeClient.Set(key2, runtime.EncodeOrDie(latest.Codec, &api.Pod{TypeMeta: api.TypeMeta{Namespace: "other", Name: "foo"}}), 0) + fakeClient.Set(key1, runtime.EncodeOrDie(latest.Codec, &api.Pod{ObjectMeta: api.ObjectMeta{Namespace: "default", Name: "foo"}}), 0) + fakeClient.Set(key2, runtime.EncodeOrDie(latest.Codec, &api.Pod{ObjectMeta: api.ObjectMeta{Namespace: "other", Name: "foo"}}), 0) registry := NewTestEtcdRegistry(fakeClient) @@ -120,7 +120,7 @@ func TestEtcdGetPod(t *testing.T) { ctx := api.NewDefaultContext() fakeClient := tools.NewFakeEtcdClient(t) key, _ := makePodKey(ctx, "foo") - fakeClient.Set(key, runtime.EncodeOrDie(latest.Codec, &api.Pod{TypeMeta: api.TypeMeta{Name: "foo"}}), 0) + fakeClient.Set(key, runtime.EncodeOrDie(latest.Codec, &api.Pod{ObjectMeta: api.ObjectMeta{Name: "foo"}}), 0) registry := NewTestEtcdRegistry(fakeClient) pod, err := registry.GetPod(ctx, "foo") if err != nil { @@ -163,7 +163,7 @@ func TestEtcdCreatePod(t *testing.T) { fakeClient.Set("/registry/nodes/machine/boundpods", runtime.EncodeOrDie(latest.Codec, &api.BoundPods{}), 0) registry := NewTestEtcdRegistry(fakeClient) err := registry.CreatePod(ctx, &api.Pod{ - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "foo", }, DesiredState: api.PodState{ @@ -181,7 +181,7 @@ func TestEtcdCreatePod(t *testing.T) { } // Suddenly, a wild scheduler appears: - err = registry.ApplyBinding(ctx, &api.Binding{PodID: "foo", Host: "machine", TypeMeta: api.TypeMeta{Namespace: api.NamespaceDefault}}) + err = registry.ApplyBinding(ctx, &api.Binding{PodID: "foo", Host: "machine", ObjectMeta: api.ObjectMeta{Namespace: api.NamespaceDefault}}) if err != nil { t.Fatalf("unexpected error: %v", err) } @@ -216,7 +216,7 @@ func TestEtcdCreatePodFailsWithoutNamespace(t *testing.T) { fakeClient.TestIndex = true registry := NewTestEtcdRegistry(fakeClient) err := registry.CreatePod(api.NewContext(), &api.Pod{ - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "foo", }, DesiredState: api.PodState{ @@ -242,14 +242,14 @@ func TestEtcdCreatePodAlreadyExisting(t *testing.T) { fakeClient.Data[key] = tools.EtcdResponseWithError{ R: &etcd.Response{ Node: &etcd.Node{ - Value: runtime.EncodeOrDie(latest.Codec, &api.Pod{TypeMeta: api.TypeMeta{Name: "foo"}}), + Value: runtime.EncodeOrDie(latest.Codec, &api.Pod{ObjectMeta: api.ObjectMeta{Name: "foo"}}), }, }, E: nil, } registry := NewTestEtcdRegistry(fakeClient) err := registry.CreatePod(ctx, &api.Pod{ - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "foo", }, }) @@ -277,7 +277,7 @@ func TestEtcdCreatePodWithContainersError(t *testing.T) { } registry := NewTestEtcdRegistry(fakeClient) err := registry.CreatePod(ctx, &api.Pod{ - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "foo", }, }) @@ -319,7 +319,7 @@ func TestEtcdCreatePodWithContainersNotFound(t *testing.T) { } registry := NewTestEtcdRegistry(fakeClient) err := registry.CreatePod(ctx, &api.Pod{ - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "foo", }, DesiredState: api.PodState{ @@ -381,12 +381,12 @@ func TestEtcdCreatePodWithExistingContainers(t *testing.T) { } fakeClient.Set("/registry/nodes/machine/boundpods", runtime.EncodeOrDie(latest.Codec, &api.BoundPods{ Items: []api.BoundPod{ - {TypeMeta: api.TypeMeta{Name: "bar"}}, + {ObjectMeta: api.ObjectMeta{Name: "bar"}}, }, }), 0) registry := NewTestEtcdRegistry(fakeClient) err := registry.CreatePod(ctx, &api.Pod{ - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "foo", }, DesiredState: api.PodState{ @@ -448,9 +448,12 @@ func TestEtcdUpdatePodNotFound(t *testing.T) { registry := NewTestEtcdRegistry(fakeClient) podIn := api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo", ResourceVersion: "1"}, - Labels: map[string]string{ - "foo": "bar", + ObjectMeta: api.ObjectMeta{ + Name: "foo", + ResourceVersion: "1", + Labels: map[string]string{ + "foo": "bar", + }, }, } err := registry.UpdatePod(ctx, &podIn) @@ -466,14 +469,17 @@ func TestEtcdUpdatePodNotScheduled(t *testing.T) { key, _ := makePodKey(ctx, "foo") fakeClient.Set(key, runtime.EncodeOrDie(latest.Codec, &api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, }), 1) registry := NewTestEtcdRegistry(fakeClient) podIn := api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo", ResourceVersion: "1"}, - Labels: map[string]string{ - "foo": "bar", + ObjectMeta: api.ObjectMeta{ + Name: "foo", + ResourceVersion: "1", + Labels: map[string]string{ + "foo": "bar", + }, }, } err := registry.UpdatePod(ctx, &podIn) @@ -498,7 +504,7 @@ func TestEtcdUpdatePodScheduled(t *testing.T) { key, _ := makePodKey(ctx, "foo") fakeClient.Set(key, runtime.EncodeOrDie(latest.Codec, &api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, DesiredState: api.PodState{ Host: "machine", Manifest: api.ContainerManifest{ @@ -536,7 +542,13 @@ func TestEtcdUpdatePodScheduled(t *testing.T) { registry := NewTestEtcdRegistry(fakeClient) podIn := api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo", ResourceVersion: "1"}, + ObjectMeta: api.ObjectMeta{ + Name: "foo", + ResourceVersion: "1", + Labels: map[string]string{ + "foo": "bar", + }, + }, DesiredState: api.PodState{ Manifest: api.ContainerManifest{ ID: "foo", @@ -547,9 +559,6 @@ func TestEtcdUpdatePodScheduled(t *testing.T) { }, }, }, - Labels: map[string]string{ - "foo": "bar", - }, } err := registry.UpdatePod(ctx, &podIn) if err != nil { @@ -584,12 +593,12 @@ func TestEtcdDeletePod(t *testing.T) { key, _ := makePodKey(ctx, "foo") fakeClient.Set(key, runtime.EncodeOrDie(latest.Codec, &api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, DesiredState: api.PodState{Host: "machine"}, }), 0) fakeClient.Set("/registry/nodes/machine/boundpods", runtime.EncodeOrDie(latest.Codec, &api.BoundPods{ Items: []api.BoundPod{ - {TypeMeta: api.TypeMeta{Name: "foo"}}, + {ObjectMeta: api.ObjectMeta{Name: "foo"}}, }, }), 0) registry := NewTestEtcdRegistry(fakeClient) @@ -620,13 +629,13 @@ func TestEtcdDeletePodMultipleContainers(t *testing.T) { fakeClient.TestIndex = true key, _ := makePodKey(ctx, "foo") fakeClient.Set(key, runtime.EncodeOrDie(latest.Codec, &api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, DesiredState: api.PodState{Host: "machine"}, }), 0) fakeClient.Set("/registry/nodes/machine/boundpods", runtime.EncodeOrDie(latest.Codec, &api.BoundPods{ Items: []api.BoundPod{ - {TypeMeta: api.TypeMeta{Name: "foo"}}, - {TypeMeta: api.TypeMeta{Name: "bar"}}, + {ObjectMeta: api.ObjectMeta{Name: "foo"}}, + {ObjectMeta: api.ObjectMeta{Name: "bar"}}, }, }), 0) registry := NewTestEtcdRegistry(fakeClient) @@ -706,13 +715,13 @@ func TestEtcdListPods(t *testing.T) { Nodes: []*etcd.Node{ { Value: runtime.EncodeOrDie(latest.Codec, &api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, DesiredState: api.PodState{Host: "machine"}, }), }, { Value: runtime.EncodeOrDie(latest.Codec, &api.Pod{ - TypeMeta: api.TypeMeta{Name: "bar"}, + ObjectMeta: api.ObjectMeta{Name: "bar"}, DesiredState: api.PodState{Host: "machine"}, }), }, @@ -783,10 +792,10 @@ func TestEtcdListControllers(t *testing.T) { Node: &etcd.Node{ Nodes: []*etcd.Node{ { - Value: runtime.EncodeOrDie(latest.Codec, &api.ReplicationController{TypeMeta: api.TypeMeta{Name: "foo"}}), + Value: runtime.EncodeOrDie(latest.Codec, &api.ReplicationController{ObjectMeta: api.ObjectMeta{Name: "foo"}}), }, { - Value: runtime.EncodeOrDie(latest.Codec, &api.ReplicationController{TypeMeta: api.TypeMeta{Name: "bar"}}), + Value: runtime.EncodeOrDie(latest.Codec, &api.ReplicationController{ObjectMeta: api.ObjectMeta{Name: "bar"}}), }, }, }, @@ -814,8 +823,8 @@ func TestEtcdGetControllerDifferentNamespace(t *testing.T) { key1, _ := makeControllerKey(ctx1, "foo") key2, _ := makeControllerKey(ctx2, "foo") - fakeClient.Set(key1, runtime.EncodeOrDie(latest.Codec, &api.ReplicationController{TypeMeta: api.TypeMeta{Namespace: "default", Name: "foo"}}), 0) - fakeClient.Set(key2, runtime.EncodeOrDie(latest.Codec, &api.ReplicationController{TypeMeta: api.TypeMeta{Namespace: "other", Name: "foo"}}), 0) + fakeClient.Set(key1, runtime.EncodeOrDie(latest.Codec, &api.ReplicationController{ObjectMeta: api.ObjectMeta{Namespace: "default", Name: "foo"}}), 0) + fakeClient.Set(key2, runtime.EncodeOrDie(latest.Codec, &api.ReplicationController{ObjectMeta: api.ObjectMeta{Namespace: "other", Name: "foo"}}), 0) registry := NewTestEtcdRegistry(fakeClient) @@ -847,7 +856,7 @@ func TestEtcdGetController(t *testing.T) { ctx := api.NewDefaultContext() fakeClient := tools.NewFakeEtcdClient(t) key, _ := makeControllerKey(ctx, "foo") - fakeClient.Set(key, runtime.EncodeOrDie(latest.Codec, &api.ReplicationController{TypeMeta: api.TypeMeta{Name: "foo"}}), 0) + fakeClient.Set(key, runtime.EncodeOrDie(latest.Codec, &api.ReplicationController{ObjectMeta: api.ObjectMeta{Name: "foo"}}), 0) registry := NewTestEtcdRegistry(fakeClient) ctrl, err := registry.GetController(ctx, "foo") if err != nil { @@ -903,7 +912,7 @@ func TestEtcdCreateController(t *testing.T) { registry := NewTestEtcdRegistry(fakeClient) key, _ := makeControllerKey(ctx, "foo") err := registry.CreateController(ctx, &api.ReplicationController{ - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "foo", }, }) @@ -929,11 +938,11 @@ func TestEtcdCreateControllerAlreadyExisting(t *testing.T) { ctx := api.NewDefaultContext() fakeClient := tools.NewFakeEtcdClient(t) key, _ := makeControllerKey(ctx, "foo") - fakeClient.Set(key, runtime.EncodeOrDie(latest.Codec, &api.ReplicationController{TypeMeta: api.TypeMeta{Name: "foo"}}), 0) + fakeClient.Set(key, runtime.EncodeOrDie(latest.Codec, &api.ReplicationController{ObjectMeta: api.ObjectMeta{Name: "foo"}}), 0) registry := NewTestEtcdRegistry(fakeClient) err := registry.CreateController(ctx, &api.ReplicationController{ - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "foo", }, }) @@ -947,10 +956,10 @@ func TestEtcdUpdateController(t *testing.T) { fakeClient := tools.NewFakeEtcdClient(t) fakeClient.TestIndex = true key, _ := makeControllerKey(ctx, "foo") - resp, _ := fakeClient.Set(key, runtime.EncodeOrDie(latest.Codec, &api.ReplicationController{TypeMeta: api.TypeMeta{Name: "foo"}}), 0) + resp, _ := fakeClient.Set(key, runtime.EncodeOrDie(latest.Codec, &api.ReplicationController{ObjectMeta: api.ObjectMeta{Name: "foo"}}), 0) registry := NewTestEtcdRegistry(fakeClient) err := registry.UpdateController(ctx, &api.ReplicationController{ - TypeMeta: api.TypeMeta{Name: "foo", ResourceVersion: strconv.FormatUint(resp.Node.ModifiedIndex, 10)}, + ObjectMeta: api.ObjectMeta{Name: "foo", ResourceVersion: strconv.FormatUint(resp.Node.ModifiedIndex, 10)}, DesiredState: api.ReplicationControllerState{ Replicas: 2, }, @@ -974,10 +983,10 @@ func TestEtcdListServices(t *testing.T) { Node: &etcd.Node{ Nodes: []*etcd.Node{ { - Value: runtime.EncodeOrDie(latest.Codec, &api.Service{TypeMeta: api.TypeMeta{Name: "foo"}}), + Value: runtime.EncodeOrDie(latest.Codec, &api.Service{ObjectMeta: api.ObjectMeta{Name: "foo"}}), }, { - Value: runtime.EncodeOrDie(latest.Codec, &api.Service{TypeMeta: api.TypeMeta{Name: "bar"}}), + Value: runtime.EncodeOrDie(latest.Codec, &api.Service{ObjectMeta: api.ObjectMeta{Name: "bar"}}), }, }, }, @@ -1000,7 +1009,7 @@ func TestEtcdCreateService(t *testing.T) { fakeClient := tools.NewFakeEtcdClient(t) registry := NewTestEtcdRegistry(fakeClient) err := registry.CreateService(ctx, &api.Service{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, }) if err != nil { t.Errorf("unexpected error: %v", err) @@ -1027,10 +1036,10 @@ func TestEtcdCreateServiceAlreadyExisting(t *testing.T) { ctx := api.NewDefaultContext() fakeClient := tools.NewFakeEtcdClient(t) key, _ := makeServiceKey(ctx, "foo") - fakeClient.Set(key, runtime.EncodeOrDie(latest.Codec, &api.Service{TypeMeta: api.TypeMeta{Name: "foo"}}), 0) + fakeClient.Set(key, runtime.EncodeOrDie(latest.Codec, &api.Service{ObjectMeta: api.ObjectMeta{Name: "foo"}}), 0) registry := NewTestEtcdRegistry(fakeClient) err := registry.CreateService(ctx, &api.Service{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, }) if !errors.IsAlreadyExists(err) { t.Errorf("expected already exists err, got %#v", err) @@ -1047,8 +1056,8 @@ func TestEtcdGetServiceDifferentNamespace(t *testing.T) { key1, _ := makeServiceKey(ctx1, "foo") key2, _ := makeServiceKey(ctx2, "foo") - fakeClient.Set(key1, runtime.EncodeOrDie(latest.Codec, &api.Service{TypeMeta: api.TypeMeta{Namespace: "default", Name: "foo"}}), 0) - fakeClient.Set(key2, runtime.EncodeOrDie(latest.Codec, &api.Service{TypeMeta: api.TypeMeta{Namespace: "other", Name: "foo"}}), 0) + fakeClient.Set(key1, runtime.EncodeOrDie(latest.Codec, &api.Service{ObjectMeta: api.ObjectMeta{Namespace: "default", Name: "foo"}}), 0) + fakeClient.Set(key2, runtime.EncodeOrDie(latest.Codec, &api.Service{ObjectMeta: api.ObjectMeta{Namespace: "other", Name: "foo"}}), 0) registry := NewTestEtcdRegistry(fakeClient) @@ -1080,7 +1089,7 @@ func TestEtcdGetService(t *testing.T) { ctx := api.NewDefaultContext() fakeClient := tools.NewFakeEtcdClient(t) key, _ := makeServiceKey(ctx, "foo") - fakeClient.Set(key, runtime.EncodeOrDie(latest.Codec, &api.Service{TypeMeta: api.TypeMeta{Name: "foo"}}), 0) + fakeClient.Set(key, runtime.EncodeOrDie(latest.Codec, &api.Service{ObjectMeta: api.ObjectMeta{Name: "foo"}}), 0) registry := NewTestEtcdRegistry(fakeClient) service, err := registry.GetService(ctx, "foo") if err != nil { @@ -1136,12 +1145,15 @@ func TestEtcdUpdateService(t *testing.T) { fakeClient := tools.NewFakeEtcdClient(t) fakeClient.TestIndex = true key, _ := makeServiceKey(ctx, "foo") - resp, _ := fakeClient.Set(key, runtime.EncodeOrDie(latest.Codec, &api.Service{TypeMeta: api.TypeMeta{Name: "foo"}}), 0) + resp, _ := fakeClient.Set(key, runtime.EncodeOrDie(latest.Codec, &api.Service{ObjectMeta: api.ObjectMeta{Name: "foo"}}), 0) registry := NewTestEtcdRegistry(fakeClient) testService := api.Service{ - TypeMeta: api.TypeMeta{Name: "foo", ResourceVersion: strconv.FormatUint(resp.Node.ModifiedIndex, 10)}, - Labels: map[string]string{ - "baz": "bar", + ObjectMeta: api.ObjectMeta{ + Name: "foo", + ResourceVersion: strconv.FormatUint(resp.Node.ModifiedIndex, 10), + Labels: map[string]string{ + "baz": "bar", + }, }, Selector: map[string]string{ "baz": "bar", @@ -1174,10 +1186,10 @@ func TestEtcdListEndpoints(t *testing.T) { Node: &etcd.Node{ Nodes: []*etcd.Node{ { - Value: runtime.EncodeOrDie(latest.Codec, &api.Endpoints{TypeMeta: api.TypeMeta{Name: "foo"}, Endpoints: []string{"127.0.0.1:8345"}}), + Value: runtime.EncodeOrDie(latest.Codec, &api.Endpoints{ObjectMeta: api.ObjectMeta{Name: "foo"}, Endpoints: []string{"127.0.0.1:8345"}}), }, { - Value: runtime.EncodeOrDie(latest.Codec, &api.Endpoints{TypeMeta: api.TypeMeta{Name: "bar"}}), + Value: runtime.EncodeOrDie(latest.Codec, &api.Endpoints{ObjectMeta: api.ObjectMeta{Name: "bar"}}), }, }, }, @@ -1200,8 +1212,8 @@ func TestEtcdGetEndpoints(t *testing.T) { fakeClient := tools.NewFakeEtcdClient(t) registry := NewTestEtcdRegistry(fakeClient) endpoints := &api.Endpoints{ - TypeMeta: api.TypeMeta{Name: "foo"}, - Endpoints: []string{"127.0.0.1:34855"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, + Endpoints: []string{"127.0.0.1:34855"}, } key, _ := makeServiceEndpointsKey(ctx, "foo") @@ -1223,8 +1235,8 @@ func TestEtcdUpdateEndpoints(t *testing.T) { fakeClient.TestIndex = true registry := NewTestEtcdRegistry(fakeClient) endpoints := api.Endpoints{ - TypeMeta: api.TypeMeta{Name: "foo"}, - Endpoints: []string{"baz", "bar"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, + Endpoints: []string{"baz", "bar"}, } key, _ := makeServiceEndpointsKey(ctx, "foo") @@ -1392,12 +1404,12 @@ func TestEtcdListMinions(t *testing.T) { Nodes: []*etcd.Node{ { Value: runtime.EncodeOrDie(latest.Codec, &api.Minion{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, }), }, { Value: runtime.EncodeOrDie(latest.Codec, &api.Minion{ - TypeMeta: api.TypeMeta{Name: "bar"}, + ObjectMeta: api.ObjectMeta{Name: "bar"}, }), }, }, @@ -1421,7 +1433,7 @@ func TestEtcdCreateMinion(t *testing.T) { fakeClient := tools.NewFakeEtcdClient(t) registry := NewTestEtcdRegistry(fakeClient) err := registry.CreateMinion(ctx, &api.Minion{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, }) if err != nil { t.Errorf("unexpected error: %v", err) @@ -1446,7 +1458,7 @@ func TestEtcdCreateMinion(t *testing.T) { func TestEtcdGetMinion(t *testing.T) { ctx := api.NewContext() fakeClient := tools.NewFakeEtcdClient(t) - fakeClient.Set("/registry/minions/foo", runtime.EncodeOrDie(latest.Codec, &api.Minion{TypeMeta: api.TypeMeta{Name: "foo"}}), 0) + fakeClient.Set("/registry/minions/foo", runtime.EncodeOrDie(latest.Codec, &api.Minion{ObjectMeta: api.ObjectMeta{Name: "foo"}}), 0) registry := NewTestEtcdRegistry(fakeClient) minion, err := registry.GetMinion(ctx, "foo") if err != nil { diff --git a/pkg/registry/event/registry_test.go b/pkg/registry/event/registry_test.go index cc163f4164..f9ce4dc648 100644 --- a/pkg/registry/event/registry_test.go +++ b/pkg/registry/event/registry_test.go @@ -42,12 +42,12 @@ func NewTestEventEtcdRegistry(t *testing.T) (*tools.FakeEtcdClient, generic.Regi func TestEventCreate(t *testing.T) { eventA := &api.Event{ - TypeMeta: api.TypeMeta{Name: "foo"}, - Reason: "forTesting", + ObjectMeta: api.ObjectMeta{Name: "foo"}, + Reason: "forTesting", } eventB := &api.Event{ - TypeMeta: api.TypeMeta{Name: "foo"}, - Reason: "forTesting", + ObjectMeta: api.ObjectMeta{Name: "foo"}, + Reason: "forTesting", } nodeWithEventA := tools.EtcdResponseWithError{ diff --git a/pkg/registry/event/rest_test.go b/pkg/registry/event/rest_test.go index e41519630e..518d82921c 100644 --- a/pkg/registry/event/rest_test.go +++ b/pkg/registry/event/rest_test.go @@ -40,8 +40,8 @@ func NewTestREST() (testRegistry, *REST) { func TestRESTCreate(t *testing.T) { _, rest := NewTestREST() eventA := &api.Event{ - TypeMeta: api.TypeMeta{Name: "foo"}, - Reason: "forTesting", + ObjectMeta: api.ObjectMeta{Name: "foo"}, + Reason: "forTesting", } c, err := rest.Create(api.NewContext(), eventA) if err != nil { @@ -55,8 +55,8 @@ func TestRESTCreate(t *testing.T) { func TestRESTDelete(t *testing.T) { _, rest := NewTestREST() eventA := &api.Event{ - TypeMeta: api.TypeMeta{Name: "foo"}, - Reason: "forTesting", + ObjectMeta: api.ObjectMeta{Name: "foo"}, + Reason: "forTesting", } c, err := rest.Create(api.NewContext(), eventA) if err != nil { @@ -75,8 +75,8 @@ func TestRESTDelete(t *testing.T) { func TestRESTGet(t *testing.T) { _, rest := NewTestREST() eventA := &api.Event{ - TypeMeta: api.TypeMeta{Name: "foo"}, - Reason: "forTesting", + ObjectMeta: api.ObjectMeta{Name: "foo"}, + Reason: "forTesting", } c, err := rest.Create(api.NewContext(), eventA) if err != nil { @@ -131,8 +131,8 @@ func TestRESTgetAttrs(t *testing.T) { func TestRESTUpdate(t *testing.T) { _, rest := NewTestREST() eventA := &api.Event{ - TypeMeta: api.TypeMeta{Name: "foo"}, - Reason: "forTesting", + ObjectMeta: api.ObjectMeta{Name: "foo"}, + Reason: "forTesting", } c, err := rest.Create(api.NewContext(), eventA) if err != nil { diff --git a/pkg/registry/generic/etcd/etcd_test.go b/pkg/registry/generic/etcd/etcd_test.go index 172317d75d..b1aac52302 100644 --- a/pkg/registry/generic/etcd/etcd_test.go +++ b/pkg/registry/generic/etcd/etcd_test.go @@ -72,11 +72,11 @@ func (EverythingMatcher) Matches(obj runtime.Object) (bool, error) { func TestEtcdList(t *testing.T) { podA := &api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, DesiredState: api.PodState{Host: "machine"}, } podB := &api.Pod{ - TypeMeta: api.TypeMeta{Name: "bar"}, + ObjectMeta: api.ObjectMeta{Name: "bar"}, DesiredState: api.PodState{Host: "machine"}, } @@ -154,11 +154,11 @@ func TestEtcdList(t *testing.T) { func TestEtcdCreate(t *testing.T) { podA := &api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, DesiredState: api.PodState{Host: "machine"}, } podB := &api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, DesiredState: api.PodState{Host: "machine2"}, } @@ -217,11 +217,11 @@ func TestEtcdCreate(t *testing.T) { func TestEtcdUpdate(t *testing.T) { podA := &api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, DesiredState: api.PodState{Host: "machine"}, } podB := &api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo", ResourceVersion: "1"}, + ObjectMeta: api.ObjectMeta{Name: "foo", ResourceVersion: "1"}, DesiredState: api.PodState{Host: "machine2"}, } @@ -292,7 +292,7 @@ func TestEtcdUpdate(t *testing.T) { func TestEtcdGet(t *testing.T) { podA := &api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo", ResourceVersion: "1"}, + ObjectMeta: api.ObjectMeta{Name: "foo", ResourceVersion: "1"}, DesiredState: api.PodState{Host: "machine"}, } @@ -348,7 +348,7 @@ func TestEtcdGet(t *testing.T) { func TestEtcdDelete(t *testing.T) { podA := &api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo", ResourceVersion: "1"}, + ObjectMeta: api.ObjectMeta{Name: "foo", ResourceVersion: "1"}, DesiredState: api.PodState{Host: "machine"}, } @@ -404,7 +404,7 @@ func TestEtcdDelete(t *testing.T) { func TestEtcdWatch(t *testing.T) { podA := &api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo", ResourceVersion: "1"}, + ObjectMeta: api.ObjectMeta{Name: "foo", ResourceVersion: "1"}, DesiredState: api.PodState{Host: "machine"}, } respWithPodA := &etcd.Response{ diff --git a/pkg/registry/minion/healthy_registry_test.go b/pkg/registry/minion/healthy_registry_test.go index b3c5fd6b02..2412f36fec 100644 --- a/pkg/registry/minion/healthy_registry_test.go +++ b/pkg/registry/minion/healthy_registry_test.go @@ -46,7 +46,7 @@ func TestBasicDelegation(t *testing.T) { t.Errorf("Expected %v, Got %v", mockMinionRegistry.Minions, list) } err = healthy.CreateMinion(ctx, &api.Minion{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, }) if err != nil { t.Errorf("unexpected error: %v", err) diff --git a/pkg/registry/minion/rest_test.go b/pkg/registry/minion/rest_test.go index e9aa123612..122cf909a2 100644 --- a/pkg/registry/minion/rest_test.go +++ b/pkg/registry/minion/rest_test.go @@ -37,7 +37,7 @@ func TestMinionREST(t *testing.T) { t.Errorf("has unexpected object") } - c, err := ms.Create(ctx, &api.Minion{TypeMeta: api.TypeMeta{Name: "baz"}}) + c, err := ms.Create(ctx, &api.Minion{ObjectMeta: api.ObjectMeta{Name: "baz"}}) if err != nil { t.Errorf("insert failed") } @@ -72,9 +72,9 @@ func TestMinionREST(t *testing.T) { } expect := []api.Minion{ { - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, }, { - TypeMeta: api.TypeMeta{Name: "baz"}, + ObjectMeta: api.ObjectMeta{Name: "baz"}, }, } nodeList := list.(*api.MinionList) diff --git a/pkg/registry/pod/bound_pod_factory_test.go b/pkg/registry/pod/bound_pod_factory_test.go index ed20b2fea7..7cc94c4e21 100644 --- a/pkg/registry/pod/bound_pod_factory_test.go +++ b/pkg/registry/pod/bound_pod_factory_test.go @@ -32,7 +32,7 @@ func TestMakeBoundPodNoServices(t *testing.T) { } pod, err := factory.MakeBoundPod("machine", &api.Pod{ - TypeMeta: api.TypeMeta{Name: "foobar"}, + ObjectMeta: api.ObjectMeta{Name: "foobar"}, DesiredState: api.PodState{ Manifest: api.ContainerManifest{ Containers: []api.Container{ @@ -61,8 +61,8 @@ func TestMakeBoundPodServices(t *testing.T) { List: api.ServiceList{ Items: []api.Service{ { - TypeMeta: api.TypeMeta{Name: "test"}, - Port: 8080, + ObjectMeta: api.ObjectMeta{Name: "test"}, + Port: 8080, ContainerPort: util.IntOrString{ Kind: util.IntstrInt, IntVal: 900, @@ -137,8 +137,8 @@ func TestMakeBoundPodServicesExistingEnvVar(t *testing.T) { List: api.ServiceList{ Items: []api.Service{ { - TypeMeta: api.TypeMeta{Name: "test"}, - Port: 8080, + ObjectMeta: api.ObjectMeta{Name: "test"}, + Port: 8080, ContainerPort: util.IntOrString{ Kind: util.IntstrInt, IntVal: 900, diff --git a/pkg/registry/pod/rest_test.go b/pkg/registry/pod/rest_test.go index 2dfa6a7b9b..69123be328 100644 --- a/pkg/registry/pod/rest_test.go +++ b/pkg/registry/pod/rest_test.go @@ -144,7 +144,7 @@ func TestListPodsError(t *testing.T) { } func TestListEmptyPodList(t *testing.T) { - podRegistry := registrytest.NewPodRegistry(&api.PodList{TypeMeta: api.TypeMeta{ResourceVersion: "1"}}) + podRegistry := registrytest.NewPodRegistry(&api.PodList{ListMeta: api.ListMeta{ResourceVersion: "1"}}) storage := REST{ registry: podRegistry, } @@ -175,12 +175,12 @@ func TestListPodList(t *testing.T) { podRegistry.Pods = &api.PodList{ Items: []api.Pod{ { - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "foo", }, }, { - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "bar", }, }, @@ -214,18 +214,20 @@ func TestListPodListSelection(t *testing.T) { podRegistry.Pods = &api.PodList{ Items: []api.Pod{ { - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, }, { - TypeMeta: api.TypeMeta{Name: "bar"}, + ObjectMeta: api.ObjectMeta{Name: "bar"}, DesiredState: api.PodState{Host: "barhost"}, }, { - TypeMeta: api.TypeMeta{Name: "baz"}, + ObjectMeta: api.ObjectMeta{Name: "baz"}, DesiredState: api.PodState{Status: "bazstatus"}, }, { - TypeMeta: api.TypeMeta{Name: "qux"}, - Labels: map[string]string{"label": "qux"}, + ObjectMeta: api.ObjectMeta{ + Name: "qux", + Labels: map[string]string{"label": "qux"}, + }, }, { - TypeMeta: api.TypeMeta{Name: "zot"}, + ObjectMeta: api.ObjectMeta{Name: "zot"}, }, }, } @@ -298,7 +300,7 @@ func TestPodDecode(t *testing.T) { registry: podRegistry, } expected := &api.Pod{ - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "foo", }, } @@ -319,7 +321,7 @@ func TestPodDecode(t *testing.T) { func TestGetPod(t *testing.T) { podRegistry := registrytest.NewPodRegistry(nil) - podRegistry.Pod = &api.Pod{TypeMeta: api.TypeMeta{Name: "foo"}} + podRegistry.Pod = &api.Pod{ObjectMeta: api.ObjectMeta{Name: "foo"}} storage := REST{ registry: podRegistry, ipCache: ipCache{}, @@ -340,7 +342,7 @@ func TestGetPod(t *testing.T) { func TestGetPodCloud(t *testing.T) { fakeCloud := &fake_cloud.FakeCloud{} podRegistry := registrytest.NewPodRegistry(nil) - podRegistry.Pod = &api.Pod{TypeMeta: api.TypeMeta{Name: "foo"}, CurrentState: api.PodState{Host: "machine"}} + podRegistry.Pod = &api.Pod{ObjectMeta: api.ObjectMeta{Name: "foo"}, CurrentState: api.PodState{Host: "machine"}} clock := &fakeClock{t: time.Now()} @@ -386,7 +388,7 @@ func TestMakePodStatus(t *testing.T) { Minions: api.MinionList{ Items: []api.Minion{ { - TypeMeta: api.TypeMeta{Name: "machine"}, + ObjectMeta: api.ObjectMeta{Name: "machine"}, }, }, }, @@ -561,7 +563,7 @@ func TestPodStorageValidatesUpdate(t *testing.T) { func TestCreatePod(t *testing.T) { podRegistry := registrytest.NewPodRegistry(nil) podRegistry.Pod = &api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, CurrentState: api.PodState{ Host: "machine", }, @@ -576,7 +578,7 @@ func TestCreatePod(t *testing.T) { }, } pod := &api.Pod{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, DesiredState: desiredState, } ctx := api.NewDefaultContext() @@ -656,7 +658,7 @@ func TestFillPodInfoNoData(t *testing.T) { func TestCreatePodWithConflictingNamespace(t *testing.T) { storage := REST{} pod := &api.Pod{ - TypeMeta: api.TypeMeta{Name: "test", Namespace: "not-default"}, + ObjectMeta: api.ObjectMeta{Name: "test", Namespace: "not-default"}, } ctx := api.NewDefaultContext() @@ -674,7 +676,7 @@ func TestCreatePodWithConflictingNamespace(t *testing.T) { func TestUpdatePodWithConflictingNamespace(t *testing.T) { storage := REST{} pod := &api.Pod{ - TypeMeta: api.TypeMeta{Name: "test", Namespace: "not-default"}, + ObjectMeta: api.ObjectMeta{Name: "test", Namespace: "not-default"}, } ctx := api.NewDefaultContext() diff --git a/pkg/registry/service/rest_test.go b/pkg/registry/service/rest_test.go index ad8659587b..5f0a3fae82 100644 --- a/pkg/registry/service/rest_test.go +++ b/pkg/registry/service/rest_test.go @@ -45,9 +45,9 @@ func TestServiceRegistryCreate(t *testing.T) { machines := []string{"foo", "bar", "baz"} storage := NewREST(registry, fakeCloud, registrytest.NewMinionRegistry(machines, api.NodeResources{}), makeIPNet(t)) svc := &api.Service{ - Port: 6502, - TypeMeta: api.TypeMeta{Name: "foo"}, - Selector: map[string]string{"bar": "baz"}, + Port: 6502, + ObjectMeta: api.ObjectMeta{Name: "foo"}, + Selector: map[string]string{"bar": "baz"}, } ctx := api.NewDefaultContext() c, _ := storage.Create(ctx, svc) @@ -82,13 +82,13 @@ func TestServiceStorageValidatesCreate(t *testing.T) { storage := NewREST(registry, nil, nil, makeIPNet(t)) failureCases := map[string]api.Service{ "empty ID": { - Port: 6502, - TypeMeta: api.TypeMeta{Name: ""}, - Selector: map[string]string{"bar": "baz"}, + Port: 6502, + ObjectMeta: api.ObjectMeta{Name: ""}, + Selector: map[string]string{"bar": "baz"}, }, "empty selector": { - TypeMeta: api.TypeMeta{Name: "foo"}, - Selector: map[string]string{}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, + Selector: map[string]string{}, }, } ctx := api.NewDefaultContext() @@ -108,15 +108,15 @@ func TestServiceRegistryUpdate(t *testing.T) { ctx := api.NewDefaultContext() registry := registrytest.NewServiceRegistry() registry.CreateService(ctx, &api.Service{ - Port: 6502, - TypeMeta: api.TypeMeta{Name: "foo"}, - Selector: map[string]string{"bar": "baz1"}, + Port: 6502, + ObjectMeta: api.ObjectMeta{Name: "foo"}, + Selector: map[string]string{"bar": "baz1"}, }) storage := NewREST(registry, nil, nil, makeIPNet(t)) c, err := storage.Update(ctx, &api.Service{ - Port: 6502, - TypeMeta: api.TypeMeta{Name: "foo"}, - Selector: map[string]string{"bar": "baz2"}, + Port: 6502, + ObjectMeta: api.ObjectMeta{Name: "foo"}, + Selector: map[string]string{"bar": "baz2"}, }) if c == nil { t.Errorf("Expected non-nil channel") @@ -138,21 +138,21 @@ func TestServiceStorageValidatesUpdate(t *testing.T) { ctx := api.NewDefaultContext() registry := registrytest.NewServiceRegistry() registry.CreateService(ctx, &api.Service{ - Port: 6502, - TypeMeta: api.TypeMeta{Name: "foo"}, - Selector: map[string]string{"bar": "baz"}, + Port: 6502, + ObjectMeta: api.ObjectMeta{Name: "foo"}, + Selector: map[string]string{"bar": "baz"}, }) storage := NewREST(registry, nil, nil, makeIPNet(t)) failureCases := map[string]api.Service{ "empty ID": { - Port: 6502, - TypeMeta: api.TypeMeta{Name: ""}, - Selector: map[string]string{"bar": "baz"}, + Port: 6502, + ObjectMeta: api.ObjectMeta{Name: ""}, + Selector: map[string]string{"bar": "baz"}, }, "empty selector": { - Port: 6502, - TypeMeta: api.TypeMeta{Name: "foo"}, - Selector: map[string]string{}, + Port: 6502, + ObjectMeta: api.ObjectMeta{Name: "foo"}, + Selector: map[string]string{}, }, } for _, failureCase := range failureCases { @@ -174,7 +174,7 @@ func TestServiceRegistryExternalService(t *testing.T) { storage := NewREST(registry, fakeCloud, registrytest.NewMinionRegistry(machines, api.NodeResources{}), makeIPNet(t)) svc := &api.Service{ Port: 6502, - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, Selector: map[string]string{"bar": "baz"}, CreateExternalLoadBalancer: true, } @@ -201,7 +201,7 @@ func TestServiceRegistryExternalServiceError(t *testing.T) { storage := NewREST(registry, fakeCloud, registrytest.NewMinionRegistry(machines, api.NodeResources{}), makeIPNet(t)) svc := &api.Service{ Port: 6502, - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, Selector: map[string]string{"bar": "baz"}, CreateExternalLoadBalancer: true, } @@ -223,8 +223,8 @@ func TestServiceRegistryDelete(t *testing.T) { machines := []string{"foo", "bar", "baz"} storage := NewREST(registry, fakeCloud, registrytest.NewMinionRegistry(machines, api.NodeResources{}), makeIPNet(t)) svc := &api.Service{ - TypeMeta: api.TypeMeta{Name: "foo"}, - Selector: map[string]string{"bar": "baz"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, + Selector: map[string]string{"bar": "baz"}, } registry.CreateService(ctx, svc) c, _ := storage.Delete(ctx, svc.Name) @@ -244,7 +244,7 @@ func TestServiceRegistryDeleteExternal(t *testing.T) { machines := []string{"foo", "bar", "baz"} storage := NewREST(registry, fakeCloud, registrytest.NewMinionRegistry(machines, api.NodeResources{}), makeIPNet(t)) svc := &api.Service{ - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, Selector: map[string]string{"bar": "baz"}, CreateExternalLoadBalancer: true, } @@ -265,25 +265,25 @@ func TestServiceRegistryMakeLinkVariables(t *testing.T) { registry.List = api.ServiceList{ Items: []api.Service{ { - TypeMeta: api.TypeMeta{Name: "foo-bar"}, - Selector: map[string]string{"bar": "baz"}, - Port: 8080, - Protocol: "TCP", - PortalIP: "1.2.3.4", + ObjectMeta: api.ObjectMeta{Name: "foo-bar"}, + Selector: map[string]string{"bar": "baz"}, + Port: 8080, + Protocol: "TCP", + PortalIP: "1.2.3.4", }, { - TypeMeta: api.TypeMeta{Name: "abc-123"}, - Selector: map[string]string{"bar": "baz"}, - Port: 8081, - Protocol: "UDP", - PortalIP: "5.6.7.8", + ObjectMeta: api.ObjectMeta{Name: "abc-123"}, + Selector: map[string]string{"bar": "baz"}, + Port: 8081, + Protocol: "UDP", + PortalIP: "5.6.7.8", }, { - TypeMeta: api.TypeMeta{Name: "q-u-u-x"}, - Selector: map[string]string{"bar": "baz"}, - Port: 8082, - Protocol: "", - PortalIP: "9.8.7.6", + ObjectMeta: api.ObjectMeta{Name: "q-u-u-x"}, + Selector: map[string]string{"bar": "baz"}, + Port: 8082, + Protocol: "", + PortalIP: "9.8.7.6", }, }, } @@ -333,8 +333,8 @@ func TestServiceRegistryGet(t *testing.T) { machines := []string{"foo", "bar", "baz"} storage := NewREST(registry, fakeCloud, registrytest.NewMinionRegistry(machines, api.NodeResources{}), makeIPNet(t)) registry.CreateService(ctx, &api.Service{ - TypeMeta: api.TypeMeta{Name: "foo"}, - Selector: map[string]string{"bar": "baz"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, + Selector: map[string]string{"bar": "baz"}, }) storage.Get(ctx, "foo") if len(fakeCloud.Calls) != 0 { @@ -353,8 +353,8 @@ func TestServiceRegistryResourceLocation(t *testing.T) { machines := []string{"foo", "bar", "baz"} storage := NewREST(registry, fakeCloud, registrytest.NewMinionRegistry(machines, api.NodeResources{}), makeIPNet(t)) registry.CreateService(ctx, &api.Service{ - TypeMeta: api.TypeMeta{Name: "foo"}, - Selector: map[string]string{"bar": "baz"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, + Selector: map[string]string{"bar": "baz"}, }) redirector := apiserver.Redirector(storage) location, err := redirector.ResourceLocation(ctx, "foo") @@ -382,12 +382,12 @@ func TestServiceRegistryList(t *testing.T) { machines := []string{"foo", "bar", "baz"} storage := NewREST(registry, fakeCloud, registrytest.NewMinionRegistry(machines, api.NodeResources{}), makeIPNet(t)) registry.CreateService(ctx, &api.Service{ - TypeMeta: api.TypeMeta{Name: "foo"}, - Selector: map[string]string{"bar": "baz"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, + Selector: map[string]string{"bar": "baz"}, }) registry.CreateService(ctx, &api.Service{ - TypeMeta: api.TypeMeta{Name: "foo2"}, - Selector: map[string]string{"bar2": "baz2"}, + ObjectMeta: api.ObjectMeta{Name: "foo2"}, + Selector: map[string]string{"bar2": "baz2"}, }) registry.List.ResourceVersion = "1" s, _ := storage.List(ctx, labels.Everything(), labels.Everything()) @@ -416,9 +416,9 @@ func TestServiceRegistryIPAllocation(t *testing.T) { rest := NewREST(registry, fakeCloud, registrytest.NewMinionRegistry(machines, api.NodeResources{}), makeIPNet(t)) svc1 := &api.Service{ - Port: 6502, - TypeMeta: api.TypeMeta{Name: "foo"}, - Selector: map[string]string{"bar": "baz"}, + Port: 6502, + ObjectMeta: api.ObjectMeta{Name: "foo"}, + Selector: map[string]string{"bar": "baz"}, } ctx := api.NewDefaultContext() c1, _ := rest.Create(ctx, svc1) @@ -432,9 +432,9 @@ func TestServiceRegistryIPAllocation(t *testing.T) { } svc2 := &api.Service{ - Port: 6502, - TypeMeta: api.TypeMeta{Name: "bar"}, - Selector: map[string]string{"bar": "baz"}, + Port: 6502, + ObjectMeta: api.ObjectMeta{Name: "bar"}, + Selector: map[string]string{"bar": "baz"}, } ctx = api.NewDefaultContext() c2, _ := rest.Create(ctx, svc2) @@ -455,9 +455,9 @@ func TestServiceRegistryIPReallocation(t *testing.T) { rest := NewREST(registry, fakeCloud, registrytest.NewMinionRegistry(machines, api.NodeResources{}), makeIPNet(t)) svc1 := &api.Service{ - Port: 6502, - TypeMeta: api.TypeMeta{Name: "foo"}, - Selector: map[string]string{"bar": "baz"}, + Port: 6502, + ObjectMeta: api.ObjectMeta{Name: "foo"}, + Selector: map[string]string{"bar": "baz"}, } ctx := api.NewDefaultContext() c1, _ := rest.Create(ctx, svc1) @@ -474,9 +474,9 @@ func TestServiceRegistryIPReallocation(t *testing.T) { <-c svc2 := &api.Service{ - Port: 6502, - TypeMeta: api.TypeMeta{Name: "bar"}, - Selector: map[string]string{"bar": "baz"}, + Port: 6502, + ObjectMeta: api.ObjectMeta{Name: "bar"}, + Selector: map[string]string{"bar": "baz"}, } ctx = api.NewDefaultContext() c2, _ := rest.Create(ctx, svc2) @@ -497,9 +497,9 @@ func TestServiceRegistryIPUpdate(t *testing.T) { rest := NewREST(registry, fakeCloud, registrytest.NewMinionRegistry(machines, api.NodeResources{}), makeIPNet(t)) svc := &api.Service{ - Port: 6502, - TypeMeta: api.TypeMeta{Name: "foo"}, - Selector: map[string]string{"bar": "baz"}, + Port: 6502, + ObjectMeta: api.ObjectMeta{Name: "foo"}, + Selector: map[string]string{"bar": "baz"}, } ctx := api.NewDefaultContext() c, _ := rest.Create(ctx, svc) @@ -543,7 +543,7 @@ func TestServiceRegistryIPExternalLoadBalancer(t *testing.T) { svc := &api.Service{ Port: 6502, - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, Selector: map[string]string{"bar": "baz"}, CreateExternalLoadBalancer: true, } @@ -569,17 +569,17 @@ func TestServiceRegistryIPReloadFromStorage(t *testing.T) { rest1 := NewREST(registry, fakeCloud, registrytest.NewMinionRegistry(machines, api.NodeResources{}), makeIPNet(t)) svc := &api.Service{ - Port: 6502, - TypeMeta: api.TypeMeta{Name: "foo"}, - Selector: map[string]string{"bar": "baz"}, + Port: 6502, + ObjectMeta: api.ObjectMeta{Name: "foo"}, + Selector: map[string]string{"bar": "baz"}, } ctx := api.NewDefaultContext() c, _ := rest1.Create(ctx, svc) <-c svc = &api.Service{ - Port: 6502, - TypeMeta: api.TypeMeta{Name: "foo"}, - Selector: map[string]string{"bar": "baz"}, + Port: 6502, + ObjectMeta: api.ObjectMeta{Name: "foo"}, + Selector: map[string]string{"bar": "baz"}, } c, _ = rest1.Create(ctx, svc) <-c @@ -588,9 +588,9 @@ func TestServiceRegistryIPReloadFromStorage(t *testing.T) { rest2 := NewREST(registry, fakeCloud, registrytest.NewMinionRegistry(machines, api.NodeResources{}), makeIPNet(t)) svc = &api.Service{ - Port: 6502, - TypeMeta: api.TypeMeta{Name: "foo"}, - Selector: map[string]string{"bar": "baz"}, + Port: 6502, + ObjectMeta: api.ObjectMeta{Name: "foo"}, + Selector: map[string]string{"bar": "baz"}, } c, _ = rest2.Create(ctx, svc) created_svc := <-c @@ -603,7 +603,7 @@ func TestServiceRegistryIPReloadFromStorage(t *testing.T) { func TestCreateServiceWithConflictingNamespace(t *testing.T) { storage := REST{} service := &api.Service{ - TypeMeta: api.TypeMeta{Name: "test", Namespace: "not-default"}, + ObjectMeta: api.ObjectMeta{Name: "test", Namespace: "not-default"}, } ctx := api.NewDefaultContext() @@ -621,7 +621,7 @@ func TestCreateServiceWithConflictingNamespace(t *testing.T) { func TestUpdateServiceWithConflictingNamespace(t *testing.T) { storage := REST{} service := &api.Service{ - TypeMeta: api.TypeMeta{Name: "test", Namespace: "not-default"}, + ObjectMeta: api.ObjectMeta{Name: "test", Namespace: "not-default"}, } ctx := api.NewDefaultContext() diff --git a/pkg/runtime/helper_test.go b/pkg/runtime/helper_test.go index 0ccf44176b..f0af9e11d1 100644 --- a/pkg/runtime/helper_test.go +++ b/pkg/runtime/helper_test.go @@ -29,9 +29,9 @@ import ( func TestExtractList(t *testing.T) { pl := &api.PodList{ Items: []api.Pod{ - {TypeMeta: api.TypeMeta{Name: "1"}}, - {TypeMeta: api.TypeMeta{Name: "2"}}, - {TypeMeta: api.TypeMeta{Name: "3"}}, + {ObjectMeta: api.ObjectMeta{Name: "1"}}, + {ObjectMeta: api.ObjectMeta{Name: "2"}}, + {ObjectMeta: api.ObjectMeta{Name: "3"}}, }, } list, err := runtime.ExtractList(pl) @@ -51,9 +51,9 @@ func TestExtractList(t *testing.T) { func TestSetList(t *testing.T) { pl := &api.PodList{} list := []runtime.Object{ - &api.Pod{TypeMeta: api.TypeMeta{Name: "1"}}, - &api.Pod{TypeMeta: api.TypeMeta{Name: "2"}}, - &api.Pod{TypeMeta: api.TypeMeta{Name: "3"}}, + &api.Pod{ObjectMeta: api.ObjectMeta{Name: "1"}}, + &api.Pod{ObjectMeta: api.ObjectMeta{Name: "2"}}, + &api.Pod{ObjectMeta: api.ObjectMeta{Name: "3"}}, } err := runtime.SetList(pl, list) if err != nil { diff --git a/pkg/scheduler/generic_scheduler_test.go b/pkg/scheduler/generic_scheduler_test.go index 26881bf1e7..0dcbb87146 100644 --- a/pkg/scheduler/generic_scheduler_test.go +++ b/pkg/scheduler/generic_scheduler_test.go @@ -95,7 +95,7 @@ func TestGenericScheduler(t *testing.T) { predicates: []FitPredicate{matchesPredicate}, prioritizer: EqualPriority, nodes: []string{"machine1", "machine2"}, - pod: api.Pod{TypeMeta: api.TypeMeta{Name: "machine2"}}, + pod: api.Pod{ObjectMeta: api.ObjectMeta{Name: "machine2"}}, expectedHost: "machine2", }, { @@ -108,7 +108,7 @@ func TestGenericScheduler(t *testing.T) { predicates: []FitPredicate{matchesPredicate}, prioritizer: numericPriority, nodes: []string{"3", "2", "1"}, - pod: api.Pod{TypeMeta: api.TypeMeta{Name: "2"}}, + pod: api.Pod{ObjectMeta: api.ObjectMeta{Name: "2"}}, expectedHost: "2", }, { diff --git a/pkg/scheduler/priorities_test.go b/pkg/scheduler/priorities_test.go index 2a65cdcd47..5c5841c2b0 100644 --- a/pkg/scheduler/priorities_test.go +++ b/pkg/scheduler/priorities_test.go @@ -27,7 +27,7 @@ import ( func makeMinion(node string, cpu, memory int) api.Minion { return api.Minion{ - TypeMeta: api.TypeMeta{Name: node}, + ObjectMeta: api.ObjectMeta{Name: node}, NodeResources: api.NodeResources{ Capacity: api.ResourceList{ resources.CPU: util.NewIntOrStringFromInt(cpu), @@ -87,10 +87,10 @@ func TestLeastRequested(t *testing.T) { expectedList: []HostPriority{{"machine1", 0}, {"machine2", 0}}, test: "no resources requested", pods: []api.Pod{ - {DesiredState: machine1State, Labels: labels2}, - {DesiredState: machine1State, Labels: labels1}, - {DesiredState: machine2State, Labels: labels1}, - {DesiredState: machine2State, Labels: labels1}, + {DesiredState: machine1State, ObjectMeta: api.ObjectMeta{Labels: labels2}}, + {DesiredState: machine1State, ObjectMeta: api.ObjectMeta{Labels: labels1}}, + {DesiredState: machine2State, ObjectMeta: api.ObjectMeta{Labels: labels1}}, + {DesiredState: machine2State, ObjectMeta: api.ObjectMeta{Labels: labels1}}, }, }, { diff --git a/pkg/scheduler/spreading_test.go b/pkg/scheduler/spreading_test.go index 83d93ed200..73f47585d4 100644 --- a/pkg/scheduler/spreading_test.go +++ b/pkg/scheduler/spreading_test.go @@ -51,47 +51,47 @@ func TestSpreadPriority(t *testing.T) { test: "nothing scheduled", }, { - pod: api.Pod{Labels: labels1}, + pod: api.Pod{ObjectMeta: api.ObjectMeta{Labels: labels1}}, pods: []api.Pod{{CurrentState: machine1State}}, nodes: []string{"machine1", "machine2"}, expectedList: []HostPriority{{"machine1", 0}, {"machine2", 0}}, test: "no labels", }, { - pod: api.Pod{Labels: labels1}, - pods: []api.Pod{{CurrentState: machine1State, Labels: labels2}}, + pod: api.Pod{ObjectMeta: api.ObjectMeta{Labels: labels1}}, + pods: []api.Pod{{CurrentState: machine1State, ObjectMeta: api.ObjectMeta{Labels: labels2}}}, nodes: []string{"machine1", "machine2"}, expectedList: []HostPriority{{"machine1", 0}, {"machine2", 0}}, test: "different labels", }, { - pod: api.Pod{Labels: labels1}, + pod: api.Pod{ObjectMeta: api.ObjectMeta{Labels: labels1}}, pods: []api.Pod{ - {CurrentState: machine1State, Labels: labels2}, - {CurrentState: machine2State, Labels: labels1}, + {CurrentState: machine1State, ObjectMeta: api.ObjectMeta{Labels: labels2}}, + {CurrentState: machine2State, ObjectMeta: api.ObjectMeta{Labels: labels1}}, }, nodes: []string{"machine1", "machine2"}, expectedList: []HostPriority{{"machine1", 0}, {"machine2", 1}}, test: "one label match", }, { - pod: api.Pod{Labels: labels1}, + pod: api.Pod{ObjectMeta: api.ObjectMeta{Labels: labels1}}, pods: []api.Pod{ - {CurrentState: machine1State, Labels: labels2}, - {CurrentState: machine1State, Labels: labels1}, - {CurrentState: machine2State, Labels: labels1}, + {CurrentState: machine1State, ObjectMeta: api.ObjectMeta{Labels: labels2}}, + {CurrentState: machine1State, ObjectMeta: api.ObjectMeta{Labels: labels1}}, + {CurrentState: machine2State, ObjectMeta: api.ObjectMeta{Labels: labels1}}, }, nodes: []string{"machine1", "machine2"}, expectedList: []HostPriority{{"machine1", 1}, {"machine2", 1}}, test: "two label matches on different machines", }, { - pod: api.Pod{Labels: labels1}, + pod: api.Pod{ObjectMeta: api.ObjectMeta{Labels: labels1}}, pods: []api.Pod{ - {CurrentState: machine1State, Labels: labels2}, - {CurrentState: machine1State, Labels: labels1}, - {CurrentState: machine2State, Labels: labels1}, - {CurrentState: machine2State, Labels: labels1}, + {CurrentState: machine1State, ObjectMeta: api.ObjectMeta{Labels: labels2}}, + {CurrentState: machine1State, ObjectMeta: api.ObjectMeta{Labels: labels1}}, + {CurrentState: machine2State, ObjectMeta: api.ObjectMeta{Labels: labels1}}, + {CurrentState: machine2State, ObjectMeta: api.ObjectMeta{Labels: labels1}}, }, nodes: []string{"machine1", "machine2"}, expectedList: []HostPriority{{"machine1", 1}, {"machine2", 2}}, diff --git a/pkg/service/endpoints_controller_test.go b/pkg/service/endpoints_controller_test.go index 00362172e7..7fb43f4063 100644 --- a/pkg/service/endpoints_controller_test.go +++ b/pkg/service/endpoints_controller_test.go @@ -34,10 +34,8 @@ func newPodList(count int) api.PodList { pods := []api.Pod{} for i := 0; i < count; i++ { pods = append(pods, api.Pod{ - TypeMeta: api.TypeMeta{ - Name: fmt.Sprintf("pod%d", i), - APIVersion: testapi.Version(), - }, + TypeMeta: api.TypeMeta{APIVersion: testapi.Version()}, + ObjectMeta: api.ObjectMeta{Name: fmt.Sprintf("pod%d", i)}, DesiredState: api.PodState{ Manifest: api.ContainerManifest{ Containers: []api.Container{ @@ -181,7 +179,7 @@ func TestSyncEndpointsItemsPreexisting(t *testing.T) { serviceList := api.ServiceList{ Items: []api.Service{ { - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, Selector: map[string]string{ "foo": "bar", }, @@ -192,7 +190,7 @@ func TestSyncEndpointsItemsPreexisting(t *testing.T) { serverResponse{http.StatusOK, newPodList(1)}, serverResponse{http.StatusOK, serviceList}, serverResponse{http.StatusOK, api.Endpoints{ - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "foo", ResourceVersion: "1", }, @@ -204,7 +202,7 @@ func TestSyncEndpointsItemsPreexisting(t *testing.T) { t.Errorf("unexpected error: %v", err) } data := runtime.EncodeOrDie(testapi.Codec(), &api.Endpoints{ - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ Name: "foo", ResourceVersion: "1", }, @@ -217,7 +215,7 @@ func TestSyncEndpointsItemsPreexistingIdentical(t *testing.T) { serviceList := api.ServiceList{ Items: []api.Service{ { - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, Selector: map[string]string{ "foo": "bar", }, @@ -228,7 +226,7 @@ func TestSyncEndpointsItemsPreexistingIdentical(t *testing.T) { serverResponse{http.StatusOK, newPodList(1)}, serverResponse{http.StatusOK, serviceList}, serverResponse{http.StatusOK, api.Endpoints{ - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ ResourceVersion: "1", }, Endpoints: []string{"1.2.3.4:8080"}, @@ -245,7 +243,7 @@ func TestSyncEndpointsItems(t *testing.T) { serviceList := api.ServiceList{ Items: []api.Service{ { - TypeMeta: api.TypeMeta{Name: "foo"}, + ObjectMeta: api.ObjectMeta{Name: "foo"}, Selector: map[string]string{ "foo": "bar", }, @@ -262,7 +260,7 @@ func TestSyncEndpointsItems(t *testing.T) { t.Errorf("unexpected error: %v", err) } data := runtime.EncodeOrDie(testapi.Codec(), &api.Endpoints{ - TypeMeta: api.TypeMeta{ + ObjectMeta: api.ObjectMeta{ ResourceVersion: "", }, Endpoints: []string{"1.2.3.4:8080"}, diff --git a/pkg/tools/etcd_tools_test.go b/pkg/tools/etcd_tools_test.go index 2ac4897cbf..9cbe4646e3 100644 --- a/pkg/tools/etcd_tools_test.go +++ b/pkg/tools/etcd_tools_test.go @@ -37,8 +37,9 @@ type fakeClientGetSet struct { } type TestResource struct { - api.TypeMeta `json:",inline" yaml:",inline"` - Value int `json:"value" yaml:"value,omitempty"` + api.TypeMeta `json:",inline" yaml:",inline"` + api.ObjectMeta `json:"metadata" yaml:"metadata"` + Value int `json:"value" yaml:"value,omitempty"` } func (*TestResource) IsAnAPIObject() {} @@ -74,15 +75,15 @@ func TestExtractToList(t *testing.T) { Node: &etcd.Node{ Nodes: []*etcd.Node{ { - Value: `{"name":"foo"}`, + Value: `{"id":"foo","kind":"Pod","apiVersion":"v1beta1"}`, ModifiedIndex: 1, }, { - Value: `{"name":"bar"}`, + Value: `{"id":"bar","kind":"Pod","apiVersion":"v1beta1"}`, ModifiedIndex: 2, }, { - Value: `{"name":"baz"}`, + Value: `{"id":"baz","kind":"Pod","apiVersion":"v1beta1"}`, ModifiedIndex: 3, }, }, @@ -90,11 +91,11 @@ func TestExtractToList(t *testing.T) { }, } expect := api.PodList{ - TypeMeta: api.TypeMeta{ResourceVersion: "10"}, + ListMeta: api.ListMeta{ResourceVersion: "10"}, Items: []api.Pod{ - {TypeMeta: api.TypeMeta{Name: "foo", ResourceVersion: "1"}}, - {TypeMeta: api.TypeMeta{Name: "bar", ResourceVersion: "2"}}, - {TypeMeta: api.TypeMeta{Name: "baz", ResourceVersion: "3"}}, + {ObjectMeta: api.ObjectMeta{Name: "foo", ResourceVersion: "1"}}, + {ObjectMeta: api.ObjectMeta{Name: "bar", ResourceVersion: "2"}}, + {ObjectMeta: api.ObjectMeta{Name: "baz", ResourceVersion: "3"}}, }, } @@ -122,7 +123,7 @@ func TestExtractToListAcrossDirectories(t *testing.T) { Dir: true, Nodes: []*etcd.Node{ { - Value: `{"name":"foo"}`, + Value: `{"id":"foo","kind":"Pod","apiVersion":"v1beta1"}`, ModifiedIndex: 1, }, }, @@ -132,7 +133,7 @@ func TestExtractToListAcrossDirectories(t *testing.T) { Dir: true, Nodes: []*etcd.Node{ { - Value: `{"name":"bar"}`, + Value: `{"id":"bar","kind":"Pod","apiVersion":"v1beta1"}`, ModifiedIndex: 2, }, }, @@ -142,10 +143,10 @@ func TestExtractToListAcrossDirectories(t *testing.T) { }, } expect := api.PodList{ - TypeMeta: api.TypeMeta{ResourceVersion: "10"}, + ListMeta: api.ListMeta{ResourceVersion: "10"}, Items: []api.Pod{ - {TypeMeta: api.TypeMeta{Name: "foo", ResourceVersion: "1"}}, - {TypeMeta: api.TypeMeta{Name: "bar", ResourceVersion: "2"}}, + {ObjectMeta: api.ObjectMeta{Name: "foo", ResourceVersion: "1"}}, + {ObjectMeta: api.ObjectMeta{Name: "bar", ResourceVersion: "2"}}, }, } @@ -168,15 +169,15 @@ func TestExtractToListExcludesDirectories(t *testing.T) { Node: &etcd.Node{ Nodes: []*etcd.Node{ { - Value: `{"name":"foo"}`, + Value: `{"id":"foo","kind":"Pod","apiVersion":"v1beta1"}`, ModifiedIndex: 1, }, { - Value: `{"name":"bar"}`, + Value: `{"id":"bar","kind":"Pod","apiVersion":"v1beta1"}`, ModifiedIndex: 2, }, { - Value: `{"name":"baz"}`, + Value: `{"id":"baz","kind":"Pod","apiVersion":"v1beta1"}`, ModifiedIndex: 3, }, { @@ -188,11 +189,11 @@ func TestExtractToListExcludesDirectories(t *testing.T) { }, } expect := api.PodList{ - TypeMeta: api.TypeMeta{ResourceVersion: "10"}, + ListMeta: api.ListMeta{ResourceVersion: "10"}, Items: []api.Pod{ - {TypeMeta: api.TypeMeta{Name: "foo", ResourceVersion: "1"}}, - {TypeMeta: api.TypeMeta{Name: "bar", ResourceVersion: "2"}}, - {TypeMeta: api.TypeMeta{Name: "baz", ResourceVersion: "3"}}, + {ObjectMeta: api.ObjectMeta{Name: "foo", ResourceVersion: "1"}}, + {ObjectMeta: api.ObjectMeta{Name: "bar", ResourceVersion: "2"}}, + {ObjectMeta: api.ObjectMeta{Name: "baz", ResourceVersion: "3"}}, }, } @@ -209,7 +210,7 @@ func TestExtractToListExcludesDirectories(t *testing.T) { func TestExtractObj(t *testing.T) { fakeClient := NewFakeEtcdClient(t) - expect := api.Pod{TypeMeta: api.TypeMeta{Name: "foo"}} + expect := api.Pod{ObjectMeta: api.ObjectMeta{Name: "foo"}} fakeClient.Set("/some/key", util.EncodeJSON(expect), 0) helper := EtcdHelper{fakeClient, latest.Codec, versioner} var got api.Pod @@ -263,7 +264,7 @@ func TestExtractObjNotFoundErr(t *testing.T) { } func TestCreateObj(t *testing.T) { - obj := &api.Pod{TypeMeta: api.TypeMeta{Name: "foo"}} + obj := &api.Pod{ObjectMeta: api.ObjectMeta{Name: "foo"}} fakeClient := NewFakeEtcdClient(t) helper := EtcdHelper{fakeClient, latest.Codec, versioner} err := helper.CreateObj("/some/key", obj, 5) @@ -284,7 +285,7 @@ func TestCreateObj(t *testing.T) { } func TestSetObj(t *testing.T) { - obj := &api.Pod{TypeMeta: api.TypeMeta{Name: "foo"}} + obj := &api.Pod{ObjectMeta: api.ObjectMeta{Name: "foo"}} fakeClient := NewFakeEtcdClient(t) helper := EtcdHelper{fakeClient, latest.Codec, versioner} err := helper.SetObj("/some/key", obj) @@ -303,7 +304,7 @@ func TestSetObj(t *testing.T) { } func TestSetObjWithVersion(t *testing.T) { - obj := &api.Pod{TypeMeta: api.TypeMeta{Name: "foo", ResourceVersion: "1"}} + obj := &api.Pod{ObjectMeta: api.ObjectMeta{Name: "foo", ResourceVersion: "1"}} fakeClient := NewFakeEtcdClient(t) fakeClient.TestIndex = true fakeClient.Data["/some/key"] = EtcdResponseWithError{ @@ -332,7 +333,7 @@ func TestSetObjWithVersion(t *testing.T) { } func TestSetObjWithoutResourceVersioner(t *testing.T) { - obj := &api.Pod{TypeMeta: api.TypeMeta{Name: "foo"}} + obj := &api.Pod{ObjectMeta: api.ObjectMeta{Name: "foo"}} fakeClient := NewFakeEtcdClient(t) helper := EtcdHelper{fakeClient, latest.Codec, nil} err := helper.SetObj("/some/key", obj) @@ -357,7 +358,7 @@ func TestAtomicUpdate(t *testing.T) { // Create a new node. fakeClient.ExpectNotFoundGet("/some/key") - obj := &TestResource{TypeMeta: api.TypeMeta{Name: "foo"}, Value: 1} + obj := &TestResource{ObjectMeta: api.ObjectMeta{Name: "foo"}, Value: 1} err := helper.AtomicUpdate("/some/key", &TestResource{}, func(in runtime.Object) (runtime.Object, error) { return obj, nil }) @@ -376,7 +377,7 @@ func TestAtomicUpdate(t *testing.T) { // Update an existing node. callbackCalled := false - objUpdate := &TestResource{TypeMeta: api.TypeMeta{Name: "foo"}, Value: 2} + objUpdate := &TestResource{ObjectMeta: api.ObjectMeta{Name: "foo"}, Value: 2} err = helper.AtomicUpdate("/some/key", &TestResource{}, func(in runtime.Object) (runtime.Object, error) { callbackCalled = true @@ -411,7 +412,7 @@ func TestAtomicUpdateNoChange(t *testing.T) { // Create a new node. fakeClient.ExpectNotFoundGet("/some/key") - obj := &TestResource{TypeMeta: api.TypeMeta{Name: "foo"}, Value: 1} + obj := &TestResource{ObjectMeta: api.ObjectMeta{Name: "foo"}, Value: 1} err := helper.AtomicUpdate("/some/key", &TestResource{}, func(in runtime.Object) (runtime.Object, error) { return obj, nil }) @@ -421,7 +422,7 @@ func TestAtomicUpdateNoChange(t *testing.T) { // Update an existing node with the same data callbackCalled := false - objUpdate := &TestResource{TypeMeta: api.TypeMeta{Name: "foo"}, Value: 1} + objUpdate := &TestResource{ObjectMeta: api.ObjectMeta{Name: "foo"}, Value: 1} fakeClient.Err = errors.New("should not be called") err = helper.AtomicUpdate("/some/key", &TestResource{}, func(in runtime.Object) (runtime.Object, error) { callbackCalled = true @@ -464,7 +465,7 @@ func TestAtomicUpdate_CreateCollision(t *testing.T) { } currValue := in.(*TestResource).Value - obj := &TestResource{TypeMeta: api.TypeMeta{Name: "foo"}, Value: currValue + 1} + obj := &TestResource{ObjectMeta: api.ObjectMeta{Name: "foo"}, Value: currValue + 1} return obj, nil }) if err != nil { diff --git a/pkg/tools/etcd_tools_watch_test.go b/pkg/tools/etcd_tools_watch_test.go index f6d8e5e8b0..0274ff6607 100644 --- a/pkg/tools/etcd_tools_watch_test.go +++ b/pkg/tools/etcd_tools_watch_test.go @@ -32,9 +32,9 @@ import ( func TestWatchInterpretations(t *testing.T) { codec := latest.Codec // Declare some pods to make the test cases compact. - podFoo := &api.Pod{TypeMeta: api.TypeMeta{Name: "foo"}} - podBar := &api.Pod{TypeMeta: api.TypeMeta{Name: "bar"}} - podBaz := &api.Pod{TypeMeta: api.TypeMeta{Name: "baz"}} + podFoo := &api.Pod{ObjectMeta: api.ObjectMeta{Name: "foo"}} + podBar := &api.Pod{ObjectMeta: api.ObjectMeta{Name: "bar"}} + podBaz := &api.Pod{ObjectMeta: api.ObjectMeta{Name: "baz"}} firstLetterIsB := func(obj runtime.Object) bool { return obj.(*api.Pod).Name[0] == 'b' } @@ -236,7 +236,7 @@ func TestWatch(t *testing.T) { } // Test normal case - pod := &api.Pod{TypeMeta: api.TypeMeta{Name: "foo"}} + pod := &api.Pod{ObjectMeta: api.ObjectMeta{Name: "foo"}} podBytes, _ := codec.Encode(pod) fakeClient.WatchResponse <- &etcd.Response{ Action: "set", @@ -294,7 +294,7 @@ func TestWatchEtcdState(t *testing.T) { { Action: "create", Node: &etcd.Node{ - Value: string(runtime.EncodeOrDie(codec, &api.Endpoints{TypeMeta: api.TypeMeta{Name: "foo"}, Endpoints: []string{}})), + Value: string(runtime.EncodeOrDie(codec, &api.Endpoints{ObjectMeta: api.ObjectMeta{Name: "foo"}, Endpoints: []string{}})), }, }, }, @@ -308,12 +308,12 @@ func TestWatchEtcdState(t *testing.T) { { Action: "compareAndSwap", Node: &etcd.Node{ - Value: string(runtime.EncodeOrDie(codec, &api.Endpoints{TypeMeta: api.TypeMeta{Name: "foo"}, Endpoints: []string{"127.0.0.1:9000"}})), + Value: string(runtime.EncodeOrDie(codec, &api.Endpoints{ObjectMeta: api.ObjectMeta{Name: "foo"}, Endpoints: []string{"127.0.0.1:9000"}})), CreatedIndex: 1, ModifiedIndex: 2, }, PrevNode: &etcd.Node{ - Value: string(runtime.EncodeOrDie(codec, &api.Endpoints{TypeMeta: api.TypeMeta{Name: "foo"}, Endpoints: []string{}})), + Value: string(runtime.EncodeOrDie(codec, &api.Endpoints{ObjectMeta: api.ObjectMeta{Name: "foo"}, Endpoints: []string{}})), CreatedIndex: 1, ModifiedIndex: 1, }, @@ -330,7 +330,7 @@ func TestWatchEtcdState(t *testing.T) { R: &etcd.Response{ Action: "get", Node: &etcd.Node{ - Value: string(runtime.EncodeOrDie(codec, &api.Endpoints{TypeMeta: api.TypeMeta{Name: "foo"}, Endpoints: []string{}})), + Value: string(runtime.EncodeOrDie(codec, &api.Endpoints{ObjectMeta: api.ObjectMeta{Name: "foo"}, Endpoints: []string{}})), CreatedIndex: 1, ModifiedIndex: 1, }, @@ -343,12 +343,12 @@ func TestWatchEtcdState(t *testing.T) { { Action: "compareAndSwap", Node: &etcd.Node{ - Value: string(runtime.EncodeOrDie(codec, &api.Endpoints{TypeMeta: api.TypeMeta{Name: "foo"}, Endpoints: []string{"127.0.0.1:9000"}})), + Value: string(runtime.EncodeOrDie(codec, &api.Endpoints{ObjectMeta: api.ObjectMeta{Name: "foo"}, Endpoints: []string{"127.0.0.1:9000"}})), CreatedIndex: 1, ModifiedIndex: 2, }, PrevNode: &etcd.Node{ - Value: string(runtime.EncodeOrDie(codec, &api.Endpoints{TypeMeta: api.TypeMeta{Name: "foo"}, Endpoints: []string{}})), + Value: string(runtime.EncodeOrDie(codec, &api.Endpoints{ObjectMeta: api.ObjectMeta{Name: "foo"}, Endpoints: []string{}})), CreatedIndex: 1, ModifiedIndex: 1, }, @@ -391,7 +391,7 @@ func TestWatchEtcdState(t *testing.T) { func TestWatchFromZeroIndex(t *testing.T) { codec := latest.Codec - pod := &api.Pod{TypeMeta: api.TypeMeta{Name: "foo"}} + pod := &api.Pod{ObjectMeta: api.ObjectMeta{Name: "foo"}} testCases := map[string]struct { Response EtcdResponseWithError @@ -464,7 +464,7 @@ func TestWatchFromZeroIndex(t *testing.T) { func TestWatchListFromZeroIndex(t *testing.T) { codec := latest.Codec - pod := &api.Pod{TypeMeta: api.TypeMeta{Name: "foo"}} + pod := &api.Pod{ObjectMeta: api.ObjectMeta{Name: "foo"}} fakeClient := NewFakeEtcdClient(t) fakeClient.Data["/some/key"] = EtcdResponseWithError{ diff --git a/pkg/watch/json/decoder_test.go b/pkg/watch/json/decoder_test.go index 2e2b03e2d1..2b81279d0a 100644 --- a/pkg/watch/json/decoder_test.go +++ b/pkg/watch/json/decoder_test.go @@ -36,7 +36,7 @@ func TestDecoder(t *testing.T) { out, in := io.Pipe() decoder := NewDecoder(out, testapi.Codec()) - expect := &api.Pod{TypeMeta: api.TypeMeta{Name: "foo"}} + expect := &api.Pod{ObjectMeta: api.ObjectMeta{Name: "foo"}} encoder := json.NewEncoder(in) go func() { data, err := testapi.Codec().Encode(expect) diff --git a/pkg/watch/json/encoder_test.go b/pkg/watch/json/encoder_test.go index b77fb792bc..4ff7d18e88 100644 --- a/pkg/watch/json/encoder_test.go +++ b/pkg/watch/json/encoder_test.go @@ -37,17 +37,17 @@ func TestEncodeDecodeRoundTrip(t *testing.T) { }{ { watch.Added, - &api.Pod{TypeMeta: api.TypeMeta{Name: "foo"}}, + &api.Pod{ObjectMeta: api.ObjectMeta{Name: "foo"}}, v1beta1.Codec, }, { watch.Modified, - &api.Pod{TypeMeta: api.TypeMeta{Name: "foo"}}, + &api.Pod{ObjectMeta: api.ObjectMeta{Name: "foo"}}, v1beta2.Codec, }, { watch.Deleted, - &api.Pod{TypeMeta: api.TypeMeta{Name: "foo"}}, + &api.Pod{ObjectMeta: api.ObjectMeta{Name: "foo"}}, api.Codec, }, } diff --git a/plugin/pkg/scheduler/factory/factory_test.go b/plugin/pkg/scheduler/factory/factory_test.go index d86f26f4a8..e38b8cef6e 100644 --- a/plugin/pkg/scheduler/factory/factory_test.go +++ b/plugin/pkg/scheduler/factory/factory_test.go @@ -145,8 +145,8 @@ func TestPollMinions(t *testing.T) { }{ { minions: []api.Minion{ - {TypeMeta: api.TypeMeta{Name: "foo"}}, - {TypeMeta: api.TypeMeta{Name: "bar"}}, + {ObjectMeta: api.ObjectMeta{Name: "foo"}}, + {ObjectMeta: api.ObjectMeta{Name: "bar"}}, }, }, } @@ -179,7 +179,7 @@ func TestPollMinions(t *testing.T) { } func TestDefaultErrorFunc(t *testing.T) { - testPod := &api.Pod{TypeMeta: api.TypeMeta{Name: "foo"}} + testPod := &api.Pod{ObjectMeta: api.ObjectMeta{Name: "foo"}} handler := util.FakeHandler{ StatusCode: 200, ResponseBody: runtime.EncodeOrDie(latest.Codec, testPod), @@ -219,7 +219,7 @@ func TestStoreToMinionLister(t *testing.T) { store := cache.NewStore() ids := util.NewStringSet("foo", "bar", "baz") for id := range ids { - store.Add(id, &api.Minion{TypeMeta: api.TypeMeta{Name: id}}) + store.Add(id, &api.Minion{ObjectMeta: api.ObjectMeta{Name: id}}) } sml := storeToMinionLister{store} @@ -241,8 +241,10 @@ func TestStoreToPodLister(t *testing.T) { ids := []string{"foo", "bar", "baz"} for _, id := range ids { store.Add(id, &api.Pod{ - TypeMeta: api.TypeMeta{Name: id}, - Labels: map[string]string{"name": id}, + ObjectMeta: api.ObjectMeta{ + Name: id, + Labels: map[string]string{"name": id}, + }, }) } spl := storeToPodLister{store} @@ -267,9 +269,9 @@ func TestStoreToPodLister(t *testing.T) { func TestMinionEnumerator(t *testing.T) { testList := &api.MinionList{ Items: []api.Minion{ - {TypeMeta: api.TypeMeta{Name: "foo"}}, - {TypeMeta: api.TypeMeta{Name: "bar"}}, - {TypeMeta: api.TypeMeta{Name: "baz"}}, + {ObjectMeta: api.ObjectMeta{Name: "foo"}}, + {ObjectMeta: api.ObjectMeta{Name: "bar"}}, + {ObjectMeta: api.ObjectMeta{Name: "baz"}}, }, } me := minionEnumerator{testList} diff --git a/plugin/pkg/scheduler/scheduler_test.go b/plugin/pkg/scheduler/scheduler_test.go index 396009484f..2d95d6c0cf 100644 --- a/plugin/pkg/scheduler/scheduler_test.go +++ b/plugin/pkg/scheduler/scheduler_test.go @@ -34,7 +34,7 @@ type fakeBinder struct { func (fb fakeBinder) Bind(binding *api.Binding) error { return fb.b(binding) } func podWithID(id string) *api.Pod { - return &api.Pod{TypeMeta: api.TypeMeta{Name: id, SelfLink: testapi.SelfLink("pods", id)}} + return &api.Pod{ObjectMeta: api.ObjectMeta{Name: id, SelfLink: testapi.SelfLink("pods", id)}} } type mockScheduler struct { @@ -88,7 +88,7 @@ func TestScheduler(t *testing.T) { var gotBinding *api.Binding c := &Config{ MinionLister: scheduler.FakeMinionLister( - api.MinionList{Items: []api.Minion{{TypeMeta: api.TypeMeta{Name: "machine1"}}}}, + api.MinionList{Items: []api.Minion{{ObjectMeta: api.ObjectMeta{Name: "machine1"}}}}, ), Algorithm: item.algo, Binder: fakeBinder{func(b *api.Binding) error { diff --git a/test/integration/etcd_tools_test.go b/test/integration/etcd_tools_test.go index 87b0c33299..0a621fe092 100644 --- a/test/integration/etcd_tools_test.go +++ b/test/integration/etcd_tools_test.go @@ -95,7 +95,7 @@ func TestWatch(t *testing.T) { client := newEtcdClient() helper := tools.EtcdHelper{Client: client, Codec: latest.Codec, ResourceVersioner: tools.RuntimeVersionAdapter{latest.ResourceVersioner}} withEtcdKey(func(key string) { - resp, err := client.Set(key, runtime.EncodeOrDie(v1beta1.Codec, &api.Pod{TypeMeta: api.TypeMeta{Name: "foo"}}), 0) + resp, err := client.Set(key, runtime.EncodeOrDie(v1beta1.Codec, &api.Pod{ObjectMeta: api.ObjectMeta{Name: "foo"}}), 0) if err != nil { t.Fatalf("unexpected error: %v", err) }