openstack-ansible-os_heat/tests/test-install-heat.yml
Qin Wang 4c21c435cd Add os_heat role functional tests for gate
The Heat functional tests simply validate the
heat APIs are reachable. Tempest testing would require
installation of glance, nova and neutron so it is
reserved for the integrated gate.

Co-Authored-By: Travis Truman <travis_truman@cable.comcast.com>
Change-Id: I619dcc085c1a2c5d23c685cc63dc2e70b1bd530e
Closes-bug: #1624518
2016-10-05 19:41:02 +01:00

67 lines
2.2 KiB
YAML

---
# Copyright 2015, Rackspace US, Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
- name: Playbook for role testing
hosts: heat_all
user: root
gather_facts: true
pre_tasks:
- name: Ensure Rabbitmq vhost
rabbitmq_vhost:
name: "{{ heat_rabbitmq_vhost }}"
state: "present"
delegate_to: "{{ hostvars[groups['rabbitmq_all'][0]]['ansible_host'] }}"
- name: Ensure rabbitmq user
rabbitmq_user:
user: "{{ heat_rabbitmq_userid }}"
password: "{{ heat_rabbitmq_password }}"
vhost: "{{ heat_rabbitmq_vhost }}"
configure_priv: ".*"
read_priv: ".*"
write_priv: ".*"
state: "present"
delegate_to: "{{ hostvars[groups['rabbitmq_all'][0]]['ansible_host'] }}"
- name: Create DB for service
mysql_db:
login_user: "{{ galera_root_user }}"
login_password: "{{ galera_root_password }}"
login_host: "{{ heat_galera_address }}"
name: "{{ heat_galera_database }}"
state: "present"
when: inventory_hostname == groups['heat_all'][0]
tags:
- heat-db-setup
- name: Grant access to the DB for the service
mysql_user:
login_user: "{{ galera_root_user }}"
login_password: "{{ galera_root_password }}"
login_host: "{{ heat_galera_address }}"
name: "{{ heat_galera_user }}"
password: "{{ heat_container_mysql_password }}"
host: "{{ item }}"
state: "present"
priv: "{{ heat_galera_database }}.*:ALL"
when: inventory_hostname == groups['heat_all'][0]
with_items:
- "localhost"
- "%"
tags:
- heat-db-setup
roles:
- role: "os_heat"
vars_files:
- common/test-vars.yml