Fix create stack failed 95/28495/3
authorliyuenan <liyuenan@huawei.com>
Sun, 12 Feb 2017 09:26:28 +0000 (17:26 +0800)
committerliyuenan <liyuenan@huawei.com>
Mon, 13 Feb 2017 08:10:11 +0000 (16:10 +0800)
JIRA: COMPASS-523

Heat needs grant heat admin role and create a menber role, otherwise
functest smoke test will failed when create stack by heat.

Change-Id: I925b473861bf82becf119bfd490c38732814c336
Signed-off-by: liyuenan <liyuenan@huawei.com>
deploy/adapters/ansible/roles/heat/tasks/heat_install.yml

index 2803a3e..ef50ec5 100644 (file)
     name: heat
     state: present
     description: "Stack projects and users"
+  register: heat_domain
   when: inventory_hostname == groups['controller'][0]
 
 - name: create heat user
   os_user:
     cloud: opnfv
     domain: heat
-    name: heat_domain_user
+    name: heat_domain_admin
     password: "{{ HEAT_PASS }}"
   when: inventory_hostname == groups['controller'][0]
 
+- name: grant heat admin role
+  shell: |
+    . /opt/admin-openrc.sh
+    openstack role assignment list | grep "{{ heat_domain.id }}" \
+        || openstack role add --domain heat --user-domain heat \
+        --user heat_domain_admin admin;
+  when: inventory_hostname == groups['controller'][0]
+
 - name: create heat role
   os_keystone_role:
     cloud: opnfv
     name: heat_stack_owner
   when: inventory_hostname == groups['controller'][0]
 
-- name: grant heat role
+- name: grant heat demo role
   os_user_role:
     cloud: opnfv
     user: demo
     role: heat_stack_owner
   when: inventory_hostname == groups['controller'][0]
 
+- name: create member role
+  os_keystone_role:
+    cloud: opnfv
+    name: _member_
+  when: inventory_hostname == groups['controller'][0]
+
 - name: update heat conf
   template: src=heat.j2
             dest=/etc/heat/heat.conf