Delivers upgrade scripts where upgrade steps are disabled
[apex-tripleo-heat-templates.git] / puppet / services / ironic-api.yaml
index a6838a1..bc34b73 100644 (file)
@@ -1,4 +1,4 @@
-heat_template_version: 2016-04-08
+heat_template_version: ocata
 
 description: >
   OpenStack Ironic API configured with Puppet
@@ -22,6 +22,13 @@ parameters:
     description: The password for the Ironic service and db account, used by the Ironic services
     type: string
     hidden: true
+  MonitoringSubscriptionIronicApi:
+    default: 'overcloud-ironic-api'
+    type: string
+  KeystoneRegion:
+    type: string
+    default: 'regionOne'
+    description: Keystone region for endpoint
 
 resources:
   IronicBase:
@@ -36,6 +43,7 @@ outputs:
     description: Role data for the Ironic API role.
     value:
       service_name: ironic_api
+      monitoring_subscription: {get_param: MonitoringSubscriptionIronicApi}
       config_settings:
         map_merge:
           - get_attr: [IronicBase, role_data, config_settings]
@@ -54,12 +62,6 @@ outputs:
             ironic::api::port: {get_param: [EndpointMap, IronicInternal, port]}
             # This is used to build links in responses
             ironic::api::public_endpoint: {get_param: [EndpointMap, IronicPublic, uri_no_suffix]}
-            ironic::keystone::auth::admin_url: {get_param: [EndpointMap, IronicAdmin, uri_no_suffix]}
-            ironic::keystone::auth::internal_url: {get_param: [EndpointMap, IronicInternal, uri_no_suffix]}
-            ironic::keystone::auth::public_url: {get_param: [EndpointMap, IronicPublic, uri_no_suffix]}
-            ironic::keystone::auth::auth_name: 'ironic'
-            ironic::keystone::auth::password: {get_param: IronicPassword }
-            ironic::keystone::auth::tenant: 'service'
             tripleo.ironic_api.firewall_rules:
               '133 ironic api':
                 dport:
@@ -67,3 +69,24 @@ outputs:
                   - 13385
       step_config: |
         include ::tripleo::profile::base::ironic::api
+      service_config_settings:
+        keystone:
+          ironic::keystone::auth::admin_url: {get_param: [EndpointMap, IronicAdmin, uri_no_suffix]}
+          ironic::keystone::auth::internal_url: {get_param: [EndpointMap, IronicInternal, uri_no_suffix]}
+          ironic::keystone::auth::public_url: {get_param: [EndpointMap, IronicPublic, uri_no_suffix]}
+          ironic::keystone::auth::auth_name: 'ironic'
+          ironic::keystone::auth::password: {get_param: IronicPassword }
+          ironic::keystone::auth::tenant: 'service'
+          ironic::keystone::auth::region: {get_param: KeystoneRegion}
+        mysql:
+          ironic::db::mysql::password: {get_param: IronicPassword}
+          ironic::db::mysql::user: ironic
+          ironic::db::mysql::host: {get_param: [EndpointMap, MysqlInternal, host_nobrackets]}
+          ironic::db::mysql::dbname: ironic
+          ironic::db::mysql::allowed_hosts:
+            - '%'
+            - "%{hiera('mysql_bind_host')}"
+      upgrade_tasks:
+        - name: Stop ironic_api service
+          tags: step2
+          service: name=openstack-ironic-api state=stopped