Wire ServiceNetMap as a top level parameter
authorDan Prince <dprince@redhat.com>
Tue, 2 Jun 2015 14:33:01 +0000 (10:33 -0400)
committerDan Prince <dprince@redhat.com>
Wed, 3 Jun 2015 12:58:12 +0000 (08:58 -0400)
This patch makes ServiceNetMap a top level parameter.

This is helpful to tools like Tuskar which don't support Heat
environments that contain both a resource_registry and default_parameters.

ServiceNetMap will in fact be utilized at the top level in some of
the VIP related patches that follow.

Change-Id: I375063dacf5f3fc68e6df93e11c3e88f48aa3c3a

compute.yaml
controller.yaml
overcloud-resource-registry-puppet.yaml
overcloud-without-mergepy.yaml

index 8e5cdec..0539953 100644 (file)
@@ -243,7 +243,11 @@ parameters:
     description: The user password for SNMPd with readonly rights running on all Overcloud nodes
     type: string
     hidden: true
-
+  ServiceNetMap:
+    default: {}
+    description: Mapping of service_name -> network name. Typically set
+                 via parameter_defaults in the resource registry.
+    type: json
 
 resources:
 
index 403ef05..4e541e9 100644 (file)
@@ -418,7 +418,11 @@ parameters:
   VirtualIP:
     type: string
     default: ''  # Has to be here because of the ignored empty value bug
-
+  ServiceNetMap:
+    default: {}
+    description: Mapping of service_name -> network name. Typically set
+                 via parameter_defaults in the resource registry.
+    type: json
 
 resources:
 
index 4239176..e2a5408 100644 (file)
@@ -63,27 +63,3 @@ resource_registry:
 
 parameter_defaults:
   EnablePackageInstall: false
-  # Mapping of service_name -> network name.
-  ServiceNetMap:
-    NeutronLocalIp: tenant
-    CeilometerApiNetwork: internal_api
-    MongoDbNetwork: internal_api
-    CinderApiNetwork: internal_api
-    CinderIscsiNetwork: storage
-    GlanceApiNetwork: storage
-    GlanceRegistryNetwork: internal_api
-    KeystoneAdminApiNetwork: internal_api
-    KeystonePublicApiNetwork: external
-    NeutronApiNetwork: internal_api
-    HeatApiNetwork: internal_api
-    HeatApiCfnNetwork: internal_api
-    HeatApiCloudwatchNetwork: internal_api
-    NovaApiNetwork: internal_api
-    NovaMetadataNetwork: internal_api
-    SwiftMgmtNetwork: storage_mgmt
-    SwiftProxyNetwork: storage
-    HorizonNetwork: external
-    MemcachedNetwork: internal_api
-    RabbitMqNetwork: internal_api
-    RedisNetwork: internal_api
-    MysqlNetwork: internal_api
index 7c2c3a2..6c79d97 100644 (file)
@@ -494,6 +494,33 @@ parameters:
     type: string
     constraints:
       - custom_constraint: nova.flavor
+  ServiceNetMap:
+    default:
+      NeutronLocalIp: tenant
+      CeilometerApiNetwork: internal_api
+      MongoDbNetwork: internal_api
+      CinderApiNetwork: internal_api
+      CinderIscsiNetwork: storage
+      GlanceApiNetwork: storage
+      GlanceRegistryNetwork: internal_api
+      KeystoneAdminApiNetwork: internal_api
+      KeystonePublicApiNetwork: external
+      NeutronApiNetwork: internal_api
+      HeatApiNetwork: internal_api
+      HeatApiCfnNetwork: internal_api
+      HeatApiCloudwatchNetwork: internal_api
+      NovaApiNetwork: internal_api
+      NovaMetadataNetwork: internal_api
+      SwiftMgmtNetwork: storage_mgmt
+      SwiftProxyNetwork: storage
+      HorizonNetwork: external
+      MemcachedNetwork: internal_api
+      RabbitMqNetwork: internal_api
+      RedisNetwork: internal_api
+      MysqlNetwork: internal_api
+    description: Mapping of service_name -> network name. Typically set
+                 via parameter_defaults in the resource registry.
+    type: json
 
 # Block storage specific parameters
   BlockStorageCount:
@@ -638,6 +665,7 @@ resources:
           SwiftReplicas: { get_param: SwiftReplicas}
           VirtualIP: {get_attr: [ControlVirtualIP, fixed_ips, 0, ip_address]}
           PublicVirtualIP: {get_attr: [PublicVirtualIP, fixed_ips, 0, ip_address]}
+          ServiceNetMap: {get_param: ServiceNetMap}
 
   Compute:
     type: OS::Heat::ResourceGroup
@@ -694,6 +722,7 @@ resources:
           RabbitClientPort: {get_param: RabbitClientPort}
           SnmpdReadonlyUserName: {get_param: SnmpdReadonlyUserName}
           SnmpdReadonlyUserPassword: {get_param: SnmpdReadonlyUserPassword}
+          ServiceNetMap: {get_param: ServiceNetMap}
 
   BlockStorage:
     type: OS::Heat::ResourceGroup