diff --git a/api/examples/controller-list.json b/api/examples/controller-list.json new file mode 100644 index 0000000000000..e883abac57fe0 --- /dev/null +++ b/api/examples/controller-list.json @@ -0,0 +1,35 @@ +{ + "kind": "ReplicationControllerList", + "apiVersion": "v1beta1", + "items": [ + { + "id": "test-run", + "desiredState": { + "replicas": 2, + "replicaSelector": { + "name": "test-run" + }, + "podTemplate": { + "desiredState": { + "manifest": { + "version": "v1beta1", + "image": "dockerfile/nginx", + "networkPorts": [ + { + "hostPort": 8080, + "containerPort": 80 + } + ] + } + }, + "labels": { + "name": "test-run" + } + } + }, + "labels": { + "name": "test-run" + } + } + ] +} diff --git a/cmd/integration/controller.json b/api/examples/controller.json similarity index 100% rename from cmd/integration/controller.json rename to api/examples/controller.json diff --git a/api/examples/external-service.json b/api/examples/external-service.json new file mode 100644 index 0000000000000..95d796e5049dc --- /dev/null +++ b/api/examples/external-service.json @@ -0,0 +1,13 @@ +{ + "id": "example", + "kind": "Service", + "apiVersion": "v1beta1", + "port": 8000, + "labels": { + "name": "nginx" + }, + "selector": { + "name": "nginx" + }, + "createExternalLoadBalancer": true +} diff --git a/api/examples/pod-list.json b/api/examples/pod-list.json new file mode 100644 index 0000000000000..5d867de44e490 --- /dev/null +++ b/api/examples/pod-list.json @@ -0,0 +1,54 @@ +{ + "kind": "PodList", + "apiVersion": "v1beta1", + "items": [ + { + "id": "my-pod-1", + "labels": { + "name": "test-run", + "replicationcontroller": "test-run" + }, + "desiredState": { + "manifest": { + "version": "v1beta1", + "id": "my-pod-1", + "containers": [{ + "name": "nginx", + "image": "dockerfile/nginx", + "ports": [{ + "hostPort": 8080, + "containerPort": 80 + }] + }] + } + }, + "currentState": { + "host": "host-1" + } + }, + { + "id": "my-pod-2", + "labels": { + "name": "test-run", + "replicationcontroller": "test-run" + }, + "desiredState": { + "manifest": { + "version": "v1beta1", + "id": "my-pod-2", + "containers": [{ + "name": "nginx", + "image": "dockerfile/nginx", + "ports": [{ + "hostPort": 8080, + "containerPort": 80 + }] + }] + } + }, + "currentState": { + "host": "host-2" + } + } + ] +} diff --git a/docs/getting-started-guides/pod.json b/api/examples/pod.json similarity index 100% rename from docs/getting-started-guides/pod.json rename to api/examples/pod.json diff --git a/api/examples/service-list.json b/api/examples/service-list.json new file mode 100644 index 0000000000000..1ac2963b1643c --- /dev/null +++ b/api/examples/service-list.json @@ -0,0 +1,28 @@ +{ + "kind": "ServiceList", + "apiVersion": "v1beta1", + "items": [ + { + "id": "example1", + "port": 8000, + "labels": { + "name": "nginx" + }, + "selector": { + "name": "nginx" + } + }, + { + "id": "example2", + "port": 8080, + "labels": { + "env": "prod", + "name": "jetty" + }, + "selector": { + "env": "prod", + "name": "jetty" + } + } + ] +} diff --git a/api/examples/service.json b/api/examples/service.json new file mode 100644 index 0000000000000..f4ae8993db3a0 --- /dev/null +++ b/api/examples/service.json @@ -0,0 +1,12 @@ +{ + "kind": "Service", + "apiVersion": "v1beta1", + "id": "example", + "port": 8000, + "labels": { + "name": "nginx" + }, + "selector": { + "name": "nginx" + } +} diff --git a/cmd/integration/integration.go b/cmd/integration/integration.go index 619e3ecf4b6d7..ea6e23180ed59 100644 --- a/cmd/integration/integration.go +++ b/cmd/integration/integration.go @@ -273,7 +273,7 @@ func podExists(c *client.Client, podNamespace string, podID string) wait.Conditi } func runReplicationControllerTest(c *client.Client) { - data, err := ioutil.ReadFile("cmd/integration/controller.json") + data, err := ioutil.ReadFile("api/examples/controller.json") if err != nil { glog.Fatalf("Unexpected error: %v", err) } diff --git a/docs/getting-started-guides/azure.md b/docs/getting-started-guides/azure.md index a93d8e27c8241..5e267616df308 100644 --- a/docs/getting-started-guides/azure.md +++ b/docs/getting-started-guides/azure.md @@ -64,7 +64,7 @@ You can create a pod like this: ``` cd kubernetes -cluster/kubectl.sh create -f docs/getting-started-guides/pod.json +cluster/kubectl.sh create -f api/examples/pod.json ``` Where pod.json contains something like: diff --git a/docs/getting-started-guides/gce.md b/docs/getting-started-guides/gce.md index 3d4b2f7733112..b4b1cb8f74059 100644 --- a/docs/getting-started-guides/gce.md +++ b/docs/getting-started-guides/gce.md @@ -77,7 +77,7 @@ can create a pod like this: ```bash cd kubernetes -cluster/kubectl.sh create -f docs/getting-started-guides/pod.json +cluster/kubectl.sh create -f api/examples/pod.json ``` Where pod.json contains something like: diff --git a/docs/getting-started-guides/locally.md b/docs/getting-started-guides/locally.md index 958d754f25f5a..739a1e62a5d8e 100644 --- a/docs/getting-started-guides/locally.md +++ b/docs/getting-started-guides/locally.md @@ -74,7 +74,7 @@ However you can't view the nginx start page on localhost. To verify that nginx i You can control the specifications of a pod via a user defined manifest, and reach nginx through your browser on the port specified therein: ``` -cluster/kubectl.sh create -f docs/getting-started-guides/pod.json +cluster/kubectl.sh create -f api/examples/pod.json ``` Congratulations! diff --git a/examples/examples_test.go b/examples/examples_test.go index d680cd2b683f3..26fde45d18b3c 100644 --- a/examples/examples_test.go +++ b/examples/examples_test.go @@ -98,11 +98,14 @@ func walkJSONFiles(inDir string, fn func(name, path string, data []byte)) error func TestExampleObjectSchemas(t *testing.T) { cases := map[string]map[string]runtime.Object{ - "../docs/getting-started-guides": { - "pod": &api.Pod{}, - }, - "../cmd/integration": { - "controller": &api.ReplicationController{}, + "../api/examples": { + "controller": &api.ReplicationController{}, + "controller-list": &api.ReplicationControllerList{}, + "pod": &api.Pod{}, + "pod-list": &api.PodList{}, + "service": &api.Service{}, + "external-service": &api.Service{}, + "service-list": &api.ServiceList{}, }, "../examples/guestbook": { "frontend-controller": &api.ReplicationController{},