Merge "Nic config mappings for deployed-server"
[apex-tripleo-heat-templates.git] / puppet / services / manila-api.yaml
1 heat_template_version: ocata
2
3 description: >
4   Manila-api service configured with Puppet
5
6 parameters:
7   ServiceNetMap:
8     default: {}
9     description: Mapping of service_name -> network name. Typically set
10                  via parameter_defaults in the resource registry.  This
11                  mapping overrides those in ServiceNetMapDefaults.
12     type: json
13   DefaultPasswords:
14     default: {}
15     type: json
16   EndpointMap:
17     default: {}
18     description: Mapping of service endpoint -> protocol. Typically set
19                  via parameter_defaults in the resource registry.
20     type: json
21   ManilaPassword:
22     description: The password for the manila service account.
23     type: string
24     hidden: true
25   KeystoneRegion:
26     type: string
27     default: 'regionOne'
28     description: Keystone region for endpoint
29   MonitoringSubscriptionManilaApi:
30     default: 'overcloud-manila-api'
31     type: string
32
33 resources:
34   ManilaBase:
35     type: ./manila-base.yaml
36     properties:
37       ServiceNetMap: {get_param: ServiceNetMap}
38       DefaultPasswords: {get_param: DefaultPasswords}
39       EndpointMap: {get_param: EndpointMap}
40
41 outputs:
42   role_data:
43     description: Role data for the Manila-api role.
44     value:
45       service_name: manila_api
46       monitoring_subscription: {get_param: MonitoringSubscriptionManilaApi}
47       config_settings:
48         map_merge:
49           - get_attr: [ManilaBase, role_data, config_settings]
50           - manila::keystone::authtoken::password: {get_param: ManilaPassword}
51             manila::keystone::authtoken::auth_uri: { get_param: [EndpointMap, KeystoneInternal, uri_no_suffix] }
52             manila::keystone::authtoken::auth_url: { get_param: [EndpointMap, KeystoneInternal, uri_no_suffix] }
53             manila::keystone::authtoken::project_name: 'service'
54             manila::keystone::authtoken::user_domain_name: 'Default'
55             manila::keystone::authtoken::project_domain_name: 'Default'
56             tripleo.manila_api.firewall_rules:
57               '150 manila':
58                 dport:
59                   - 8786
60                   - 13786
61             # NOTE: bind IP is found in Heat replacing the network name with the
62             # local node IP for the given network; replacement examples
63             # (eg. for internal_api):
64             # internal_api -> IP
65             # internal_api_uri -> [IP]
66             # internal_api_subnet - > IP/CIDR
67             manila::api::bind_host: {get_param: [ServiceNetMap, ManilaApiNetwork]}
68             manila::api::enable_proxy_headers_parsing: true
69             manila::api::default_share_type: 'default'
70       step_config: |
71         include ::tripleo::profile::base::manila::api
72       service_config_settings:
73         map_merge:
74           - get_attr: [ManilaBase, role_data, service_config_settings]
75           - keystone:
76               manila::keystone::auth::tenant: 'service'
77               manila::keystone::auth::public_url: {get_param: [EndpointMap, ManilaV1Public, uri]}
78               manila::keystone::auth::internal_url: {get_param: [EndpointMap, ManilaV1Internal, uri]}
79               manila::keystone::auth::admin_url: {get_param: [EndpointMap, ManilaV1Admin, uri]}
80               manila::keystone::auth::public_url_v2: {get_param: [EndpointMap, ManilaPublic, uri]}
81               manila::keystone::auth::internal_url_v2: {get_param: [EndpointMap, ManilaInternal, uri]}
82               manila::keystone::auth::admin_url_v2: {get_param: [EndpointMap, ManilaAdmin, uri]}
83               manila::keystone::auth::password: {get_param: ManilaPassword}
84               manila::keystone::auth::region: {get_param: KeystoneRegion}