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.
44 description: Keystone region for endpoint
47 description: Set rabbit subscriber port, change this if using SSL
52 Rabbit client subscriber parameter to specify
53 an SSL connection to the RabbitMQ host.
56 description: The password for RabbitMQ
61 description: The username for RabbitMQ
68 A hash of policies to configure for Barbican.
69 e.g. { barbican-context_is_admin: { key: context_is_admin, value: 'role:admin' } }
78 ServiceNetMap: {get_param: ServiceNetMap}
79 DefaultPasswords: {get_param: DefaultPasswords}
80 EndpointMap: {get_param: EndpointMap}
81 RoleName: {get_param: RoleName}
82 RoleParameters: {get_param: RoleParameters}
86 description: Role data for the Barbican API role.
88 service_name: barbican_api
91 - get_attr: [ApacheServiceBase, role_data, config_settings]
92 - barbican::keystone::authtoken::password: {get_param: BarbicanPassword}
93 barbican::keystone::authtoken::auth_uri: {get_param: [EndpointMap, KeystoneInternal, uri_no_suffix]}
94 barbican::keystone::authtoken::auth_url: { get_param: [EndpointMap, KeystoneInternal, uri_no_suffix]}
95 barbican::keystone::authtoken::project_name: 'service'
96 barbican::policy::policies: {get_param: BarbicanPolicies}
97 barbican::api::host_href: {get_param: [EndpointMap, BarbicanPublic, uri]}
98 barbican::api::db_auto_create: false
99 barbican::api::enabled_certificate_plugins: ['simple_certificate']
100 barbican::api::logging::debug: {get_param: Debug}
101 barbican::api::rabbit_use_ssl: {get_param: RabbitClientUseSSL}
102 barbican::api::rabbit_userid: {get_param: RabbitUserName}
103 barbican::api::rabbit_password: {get_param: RabbitPassword}
104 barbican::api::rabbit_port: {get_param: RabbitClientPort}
105 barbican::api::rabbit_heartbeat_timeout_threshold: 60
106 barbican::api::service_name: 'httpd'
107 barbican::wsgi::apache::bind_host: {get_param: [ServiceNetMap, BarbicanApiNetwork]}
108 barbican::wsgi::apache::ssl: {get_param: EnableInternalTLS}
109 barbican::wsgi::apache::workers: {get_param: BarbicanWorkers}
110 barbican::wsgi::apache::servername:
113 "%{hiera('fqdn_$NETWORK')}"
115 $NETWORK: {get_param: [ServiceNetMap, BarbicanApiNetwork]}
116 barbican::db::database_connection:
118 scheme: {get_param: [EndpointMap, MysqlInternal, protocol]}
120 password: {get_param: BarbicanPassword}
121 host: {get_param: [EndpointMap, MysqlInternal, host]}
124 read_default_file: /etc/my.cnf.d/tripleo.cnf
125 read_default_group: tripleo
126 tripleo.barbican_api.firewall_rules:
132 include ::tripleo::profile::base::barbican::api
133 service_config_settings:
135 barbican::db::mysql::password: {get_param: BarbicanPassword}
136 barbican::db::mysql::user: barbican
137 barbican::db::mysql::host: {get_param: [EndpointMap, MysqlInternal, host_nobrackets]}
138 barbican::db::mysql::dbname: barbican
139 barbican::db::mysql::allowed_hosts:
141 - "%{hiera('mysql_bind_host')}"
143 barbican::keystone::auth::public_url: {get_param: [EndpointMap, BarbicanPublic, uri]}
144 barbican::keystone::auth::internal_url: {get_param: [EndpointMap, BarbicanInternal, uri]}
145 barbican::keystone::auth::admin_url: {get_param: [EndpointMap, BarbicanAdmin, uri]}
146 barbican::keystone::auth::password: {get_param: BarbicanPassword}
147 barbican::keystone::auth::region: {get_param: KeystoneRegion}
148 barbican::keystone::auth::tenant: 'service'
150 nova::compute::keymgr_api_class: >
151 castellan.key_manager.barbican_key_manager.BarbicanKeyManager
152 nova::compute::barbican_endpoint:
153 get_param: [EndpointMap, BarbicanInternal, uri]
154 nova::compute::barbican_auth_endpoint:
155 get_param: [EndpointMap, KeystoneInternal, uri_no_suffix]
157 cinder::api::keymgr_api_class: >
158 castellan.key_manager.barbican_key_manager.BarbicanKeyManager
159 cinder::api::keymgr_encryption_api_url:
160 get_param: [EndpointMap, BarbicanInternal, uri]
161 cinder::api::keymgr_encryption_auth_url:
162 get_param: [EndpointMap, KeystoneInternal, uri_no_suffix]
164 get_attr: [ApacheServiceBase, role_data, metadata_settings]
167 expression: $.data.apache_upgrade + $.data.barbican_api_upgrade
170 get_attr: [ApacheServiceBase, role_data, upgrade_tasks]
171 barbican_api_upgrade:
172 - name: Check if barbican_api is deployed
173 command: systemctl is-enabled openstack-barbican-api
176 register: barbican_api_enabled
177 - name: "PreUpgrade step0,validation: Check service openstack-barbican-api is running"
178 shell: /usr/bin/systemctl show 'openstack-barbican-api' --property ActiveState | grep '\bactive\b'
179 when: barbican_api_enabled.rc == 0
180 tags: step0,validation
181 - name: Install openstack-barbican-api package if it was disabled
183 yum: name=openstack-barbican-api state=latest
184 when: barbican_api_enabled.rc != 0