diff --git a/cmd/expandybird/expander/expander_test.go b/cmd/expandybird/expander/expander_test.go index 337318fb4..52336d8e3 100644 --- a/cmd/expandybird/expander/expander_test.go +++ b/cmd/expandybird/expander/expander_test.go @@ -756,44 +756,16 @@ func TestReplicatedService(t *testing.T) { &expansion.ServiceResponse{ Resources: []interface{}{ map[string]interface{}{ - "type": "Service", - "name": "test_invocation-service", - "properties": map[string]interface{}{ - "kind": "Service", - "apiVersion": "v1", - "namespace": "default", - "metadata": map[string]interface{}{ - "name": "test_invocation-service", - "labels": map[string]interface{}{ - "name": "test_invocation-service", - }, - }, - "spec": map[string]interface{}{ - "ports": []interface{}{ - map[string]interface{}{ - "name": "test_invocation", - "port": 1234.0, - "targetPort": 1234.0, - }, - }, - "selector": map[string]interface{}{ - "name": "test_invocation", - }, - }, - }, - }, - map[string]interface{}{ - "type": "ReplicationController", "name": "test_invocation-rc", "properties": map[string]interface{}{ - "kind": "ReplicationController", "apiVersion": "v1", - "namespace": "default", + "kind": "ReplicationController", "metadata": map[string]interface{}{ - "name": "test_invocation-rc", "labels": map[string]interface{}{ "name": "test_invocation-rc", }, + "name": "test_invocation-rc", + "namespace": "default", }, "spec": map[string]interface{}{ "replicas": 3.0, @@ -824,6 +796,34 @@ func TestReplicatedService(t *testing.T) { }, }, }, + "type": "ReplicationController", + }, + map[string]interface{}{ + "name": "test_invocation-service", + "properties": map[string]interface{}{ + "apiVersion": "v1", + "kind": "Service", + "metadata": map[string]interface{}{ + "labels": map[string]interface{}{ + "name": "test_invocation-service", + }, + "name": "test_invocation-service", + "namespace": "default", + }, + "spec": map[string]interface{}{ + "ports": []interface{}{ + map[string]interface{}{ + "name": "test_invocation", + "port": 1234.0, + "targetPort": 1234.0, + }, + }, + "selector": map[string]interface{}{ + "name": "test_invocation", + }, + }, + }, + "type": "Service", }, }, }, diff --git a/examples/charts/replicatedservice-3.tgz b/examples/charts/replicatedservice-3.tgz index c528450a2..ebbcc1802 100644 Binary files a/examples/charts/replicatedservice-3.tgz and b/examples/charts/replicatedservice-3.tgz differ diff --git a/examples/charts/replicatedservice/templates/replicatedservice.py b/examples/charts/replicatedservice/templates/replicatedservice.py index b5aa16831..73fc6203d 100644 --- a/examples/charts/replicatedservice/templates/replicatedservice.py +++ b/examples/charts/replicatedservice/templates/replicatedservice.py @@ -37,20 +37,20 @@ def GenerateConfig(context): service = { 'name': service_name, - 'type': service_type, 'properties': { 'apiVersion': 'v1', 'kind': 'Service', 'metadata': { + 'labels': GenerateLabels(context, service_name), 'name': service_name, 'namespace': namespace, - 'labels': GenerateLabels(context, service_name), }, 'spec': { 'ports': [GenerateServicePorts(context, container_name)], 'selector': GenerateLabels(context, name) } - } + }, + 'type': service_type, } set_up_external_lb = context.properties.get('external_service', None) if set_up_external_lb: @@ -58,7 +58,6 @@ def GenerateConfig(context): cluster_ip = context.properties.get('cluster_ip', None) if cluster_ip: service['properties']['spec']['clusterIP'] = cluster_ip - config['resources'].append(service) rc = { 'name': rc_name, @@ -66,10 +65,10 @@ def GenerateConfig(context): 'properties': { 'apiVersion': 'v1', 'kind': 'ReplicationController', - 'namespace': namespace, 'metadata': { - 'name': rc_name, 'labels': GenerateLabels(context, rc_name), + 'name': rc_name, + 'namespace': namespace, }, 'spec': { 'replicas': context.properties['replicas'], @@ -82,8 +81,8 @@ def GenerateConfig(context): 'containers': [ { 'env': GenerateEnv(context), - 'name': container_name, 'image': context.properties['image'], + 'name': container_name, 'ports': [ { 'name': container_name, @@ -121,6 +120,7 @@ def GenerateConfig(context): } config['resources'].append(rc) + config['resources'].append(service) return yaml.dump(config)