aboutsummaryrefslogtreecommitdiffstats
path: root/network/service_net_map.j2.yaml
diff options
context:
space:
mode:
Diffstat (limited to 'network/service_net_map.j2.yaml')
-rw-r--r--network/service_net_map.j2.yaml115
1 files changed, 115 insertions, 0 deletions
diff --git a/network/service_net_map.j2.yaml b/network/service_net_map.j2.yaml
new file mode 100644
index 00000000..c363ab8a
--- /dev/null
+++ b/network/service_net_map.j2.yaml
@@ -0,0 +1,115 @@
+heat_template_version: ocata
+
+description: >
+ Mapping of service_name_network -> network name
+
+parameters:
+ ServiceNetMap:
+ description: Mapping of service_name -> network name. Typically set
+ via parameter_defaults in the resource registry. This
+ mapping overrides those in ServiceNetMapDefaults.
+ Note that the key in this map must match the service_name
+ in the service template, e.g if the service_name is heat_api
+ the key must be either heat_api_network, or optionally
+ HeatApiNetwork (which will be internally converted to
+ transform captalization to underscores).
+ default: {}
+ type: json
+
+ # Note that the key in this map must match the service_name
+ # see the description above about conversion from CamelCase to
+ # snake_case - the names must still match when converted
+ ServiceNetMapDefaults:
+ default:
+ ApacheNetwork: internal_api
+ NeutronTenantNetwork: tenant
+ CeilometerApiNetwork: internal_api
+ AodhApiNetwork: internal_api
+ PankoApiNetwork: internal_api
+ BarbicanApiNetwork: internal_api
+ GnocchiApiNetwork: internal_api
+ MongodbNetwork: internal_api
+ CinderApiNetwork: internal_api
+ CinderIscsiNetwork: storage
+ GlanceApiNetwork: storage
+ IronicApiNetwork: ctlplane
+ IronicNetwork: ctlplane
+ KeystoneAdminApiNetwork: ctlplane # allows undercloud to config endpoints
+ KeystonePublicApiNetwork: internal_api
+ ManilaApiNetwork: internal_api
+ NeutronApiNetwork: internal_api
+ HeatApiNetwork: internal_api
+ HeatApiCfnNetwork: internal_api
+ HeatApiCloudwatchNetwork: internal_api
+ NovaApiNetwork: internal_api
+ NovaPlacementNetwork: internal_api
+ NovaMetadataNetwork: internal_api
+ NovaVncProxyNetwork: internal_api
+ SwiftStorageNetwork: storage_mgmt
+ SwiftProxyNetwork: storage
+ SaharaApiNetwork: internal_api
+ HorizonNetwork: internal_api
+ MemcachedNetwork: internal_api
+ RabbitmqNetwork: internal_api
+ RedisNetwork: internal_api
+ MysqlNetwork: internal_api
+ CephClusterNetwork: storage_mgmt
+ CephMonNetwork: storage
+ CephRgwNetwork: storage
+ PublicNetwork: external
+ OpendaylightApiNetwork: internal_api
+ OvnDbsNetwork: internal_api
+ MistralApiNetwork: internal_api
+ ZaqarApiNetwork: internal_api
+ # We special-case the default ResolveNetwork for the CephStorage role
+ # for backwards compatibility, all other roles default to internal_api
+ CephStorageHostnameResolveNetwork: storage
+ EtcdNetwork: internal_api
+{% for role in roles if role.name != 'CephStorage' %}
+ {{role.name}}HostnameResolveNetwork: internal_api
+{% endfor %}
+ description: Mapping of service_name -> network name. Typically set
+ via parameter_defaults in the resource registry.
+ type: json
+
+ # We define mappings to work around names that break when doing the
+ # CamelCase to snake_case conversion to align with service_names
+ ServiceNetMapDeprecatedMapping:
+ default:
+ MongoDbNetwork: MongodbNetwork
+ RabbitMqNetwork: RabbitmqNetwork
+ CephPublicNetwork: CephMonNetwork
+ SwiftMgmtNetwork: SwiftStorageNetwork
+ description: Mapping older deprecated service names, intended for
+ internal use only, this will be removed in future.
+ type: json
+
+parameter_groups:
+- label: deprecated
+ description: Do not use deprecated params, they will be removed.
+ parameters:
+ - ServiceNetMapDeprecatedMapping
+
+outputs:
+ service_net_map:
+ value:
+ map_merge:
+ - {get_param: ServiceNetMapDefaults}
+ - map_replace:
+ - {get_param: ServiceNetMap}
+ - keys: {get_param: ServiceNetMapDeprecatedMapping}
+
+ service_net_map_lower:
+ value:
+ # This does a conversion from CamelCase to snake_case,
+ # e.g HeatApiNetwork becomes heat_api_network so it
+ # matches the service names.
+ yaql:
+ expression: dict($.data.map.items().select([ regex(`([a-z0-9])([A-Z])`).replace($[0], '\\1_\\2').toLower(), $[1]]))
+ data:
+ map:
+ map_merge:
+ - {get_param: ServiceNetMapDefaults}
+ - map_replace:
+ - {get_param: ServiceNetMap}
+ - keys: {get_param: ServiceNetMapDeprecatedMapping}