Merge pull request #1975 from smarterclayton/split_type_meta

Split TypeMeta into ObjectMeta/ListMeta
This commit is contained in:
Tim Hockin
2014-10-24 08:43:00 -07:00
74 changed files with 1986 additions and 795 deletions

View File

@@ -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))
}

View File

@@ -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,
},

View File

@@ -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",

View File

@@ -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",
},

View File

@@ -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",
},
@@ -988,7 +988,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"})
@@ -1020,7 +1020,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"},
@@ -1162,7 +1162,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"},

View File

@@ -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"},

View File

@@ -204,7 +204,7 @@ func (s *Server) handleContainerLogs(w http.ResponseWriter, req *http.Request) {
tail := uriValues.Get("tail")
podFullName := GetPodFullName(&api.BoundPod{
TypeMeta: api.TypeMeta{
ObjectMeta: api.ObjectMeta{
Name: podID,
Namespace: podNamespace,
Annotations: map[string]string{ConfigSourceAnnotationKey: "etcd"},
@@ -248,7 +248,7 @@ func (s *Server) handlePodInfo(w http.ResponseWriter, req *http.Request) {
}
// TODO: backwards compatibility with existing API, needs API change
podFullName := GetPodFullName(&api.BoundPod{
TypeMeta: api.TypeMeta{
ObjectMeta: api.ObjectMeta{
Name: podID,
Namespace: podNamespace,
Annotations: map[string]string{ConfigSourceAnnotationKey: "etcd"},
@@ -323,7 +323,7 @@ func (s *Server) handleRun(w http.ResponseWriter, req *http.Request) {
return
}
podFullName := GetPodFullName(&api.BoundPod{
TypeMeta: api.TypeMeta{
ObjectMeta: api.ObjectMeta{
Name: podID,
Namespace: podNamespace,
Annotations: map[string]string{ConfigSourceAnnotationKey: "etcd"},
@@ -373,7 +373,7 @@ func (s *Server) serveStats(w http.ResponseWriter, req *http.Request) {
case 3:
// Backward compatibility without uuid information
podFullName := GetPodFullName(&api.BoundPod{
TypeMeta: api.TypeMeta{
ObjectMeta: api.ObjectMeta{
Name: components[1],
// TODO: I am broken
Namespace: api.NamespaceDefault,
@@ -383,7 +383,7 @@ func (s *Server) serveStats(w http.ResponseWriter, req *http.Request) {
stats, err = s.host.GetContainerInfo(podFullName, "", components[2], &query)
case 4:
podFullName := GetPodFullName(&api.BoundPod{
TypeMeta: api.TypeMeta{
ObjectMeta: api.ObjectMeta{
Name: components[1],
// TODO: I am broken
Namespace: "",

View File

@@ -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{