1 heat_template_version: pike
4 OpenStack Barbican API service configured with Puppet
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.
18 description: Role name on which the service is applied
22 description: Parameters specific to the role
26 description: Mapping of service endpoint -> protocol. Typically set
27 via parameter_defaults in the resource registry.
30 description: The password for the barbican service account.
34 description: Set the number of workers for barbican::wsgi::apache
35 default: '%{::processorcount}'
39 description: Set to True to enable debugging on all services.
43 description: Set to True to enable debugging Barbican service.
48 description: Keystone region for endpoint
51 description: Set rabbit subscriber port, change this if using SSL
56 Rabbit client subscriber parameter to specify
57 an SSL connection to the RabbitMQ host.
60 description: The password for RabbitMQ
65 description: The username for RabbitMQ
72 A hash of policies to configure for Barbican.
73 e.g. { barbican-context_is_admin: { key: context_is_admin, value: 'role:admin' } }
78 default: 'messagingv2'
79 description: Driver or drivers to handle sending notifications.
81 - allowed_values: [ 'messagingv2', 'noop' ]
88 ServiceNetMap: {get_param: ServiceNetMap}
89 DefaultPasswords: {get_param: DefaultPasswords}
90 EndpointMap: {get_param: EndpointMap}
91 RoleName: {get_param: RoleName}
92 RoleParameters: {get_param: RoleParameters}
95 service_debug_unset: {equals : [{get_param: BarbicanDebug}, '']}
99 description: Role data for the Barbican API role.
101 service_name: barbican_api
104 - get_attr: [ApacheServiceBase, role_data, config_settings]
105 - barbican::keystone::authtoken::password: {get_param: BarbicanPassword}
106 barbican::keystone::authtoken::auth_uri: {get_param: [EndpointMap, KeystoneInternal, uri_no_suffix]}
107 barbican::keystone::authtoken::auth_url: { get_param: [EndpointMap, KeystoneInternal, uri_no_suffix]}
108 barbican::keystone::authtoken::project_name: 'service'
109 barbican::policy::policies: {get_param: BarbicanPolicies}
110 barbican::api::host_href: {get_param: [EndpointMap, BarbicanPublic, uri]}
111 barbican::api::db_auto_create: false
112 barbican::api::enabled_certificate_plugins: ['simple_certificate']
113 barbican::api::logging::debug:
115 - service_debug_unset
116 - {get_param: Debug }
117 - {get_param: BarbicanDebug }
118 barbican::api::notification_driver: {get_param: NotificationDriver}
119 barbican::api::rabbit_use_ssl: {get_param: RabbitClientUseSSL}
120 barbican::api::rabbit_userid: {get_param: RabbitUserName}
121 barbican::api::rabbit_password: {get_param: RabbitPassword}
122 barbican::api::rabbit_port: {get_param: RabbitClientPort}
123 barbican::api::rabbit_heartbeat_timeout_threshold: 60
124 barbican::api::service_name: 'httpd'
125 barbican::wsgi::apache::bind_host: {get_param: [ServiceNetMap, BarbicanApiNetwork]}
126 barbican::wsgi::apache::ssl: {get_param: EnableInternalTLS}
127 barbican::wsgi::apache::workers: {get_param: BarbicanWorkers}
128 barbican::wsgi::apache::servername:
131 "%{hiera('fqdn_$NETWORK')}"
133 $NETWORK: {get_param: [ServiceNetMap, BarbicanApiNetwork]}
134 barbican::db::database_connection:
136 scheme: {get_param: [EndpointMap, MysqlInternal, protocol]}
138 password: {get_param: BarbicanPassword}
139 host: {get_param: [EndpointMap, MysqlInternal, host]}
142 read_default_file: /etc/my.cnf.d/tripleo.cnf
143 read_default_group: tripleo
144 tripleo.barbican_api.firewall_rules:
150 include ::tripleo::profile::base::barbican::api
151 service_config_settings:
153 barbican::db::mysql::password: {get_param: BarbicanPassword}
154 barbican::db::mysql::user: barbican
155 barbican::db::mysql::host: {get_param: [EndpointMap, MysqlInternal, host_nobrackets]}
156 barbican::db::mysql::dbname: barbican
157 barbican::db::mysql::allowed_hosts:
159 - "%{hiera('mysql_bind_host')}"
161 barbican::keystone::auth::public_url: {get_param: [EndpointMap, BarbicanPublic, uri]}
162 barbican::keystone::auth::internal_url: {get_param: [EndpointMap, BarbicanInternal, uri]}
163 barbican::keystone::auth::admin_url: {get_param: [EndpointMap, BarbicanAdmin, uri]}
164 barbican::keystone::auth::password: {get_param: BarbicanPassword}
165 barbican::keystone::auth::region: {get_param: KeystoneRegion}
166 barbican::keystone::auth::tenant: 'service'
168 nova::compute::keymgr_api_class: >
169 castellan.key_manager.barbican_key_manager.BarbicanKeyManager
170 nova::compute::barbican_endpoint:
171 get_param: [EndpointMap, BarbicanInternal, uri]
172 nova::compute::barbican_auth_endpoint:
173 get_param: [EndpointMap, KeystoneInternal, uri_no_suffix]
175 cinder::api::keymgr_api_class: >
176 castellan.key_manager.barbican_key_manager.BarbicanKeyManager
177 cinder::api::keymgr_encryption_api_url:
178 get_param: [EndpointMap, BarbicanInternal, uri]
179 cinder::api::keymgr_encryption_auth_url:
180 get_param: [EndpointMap, KeystoneInternal, uri_no_suffix]
182 get_attr: [ApacheServiceBase, role_data, metadata_settings]
185 expression: $.data.apache_upgrade + $.data.barbican_api_upgrade
188 get_attr: [ApacheServiceBase, role_data, upgrade_tasks]
189 barbican_api_upgrade:
190 - name: Check if barbican_api is deployed
191 command: systemctl is-enabled openstack-barbican-api
194 register: barbican_api_enabled
195 - name: "PreUpgrade step0,validation: Check service openstack-barbican-api is running"
196 shell: /usr/bin/systemctl show 'openstack-barbican-api' --property ActiveState | grep '\bactive\b'
197 when: barbican_api_enabled.rc == 0
198 tags: step0,validation
199 - name: Install openstack-barbican-api package if it was disabled
201 yum: name=openstack-barbican-api state=latest
202 when: barbican_api_enabled.rc != 0