--- # 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. - include: common/previous/setting-nodepool-variables.yml - name: Prepare for nova services hosts: nova_all user: root become: true gather_facts: true any_errors_fatal: true vars: required_packages: apt: - libxml2-dev - libxslt-dev - libffi-dev - pkg-config - libvirt-dev dnf: - libxml2-devel - libxslt-devel - libffi-devel - pkgconfig - libvirt-devel yum: - libxml2-devel - libxslt-devel - libffi-devel - pkgconfig - libvirt-devel zypper: - libxml2-devel - libxslt-devel - libffi-devel - pkg-config - libvirt-devel vars_files: - common/previous/test-vars.yml tasks: # NOTE: These are typically installed in the repo server where we build the # nova wheel - name: Install packages required to build nova python package package: name: "{{ required_packages[ansible_pkg_mgr] }}" state: present - include: common/previous/ensure-rabbitmq.yml vhost_name: "{{ nova_rabbitmq_vhost }}" user_name: "{{ nova_rabbitmq_userid }}" user_password: "{{ nova_rabbitmq_password }}" - include: common/previous/create-grant-db.yml db_name: "{{ nova_galera_database }}" db_password: "{{ nova_container_mysql_password }}" - include: common/previous/create-grant-db.yml db_name: "{{ nova_api_galera_database }}" db_password: "{{ nova_api_container_mysql_password }}" - include: common/previous/create-grant-db.yml db_name: "{{ nova_placement_galera_database }}" db_password: "{{ nova_placement_container_mysql_password }}" - include: common/previous/create-grant-db.yml db_name: "{{ nova_cell0_database }}" db_password: "{{ nova_api_container_mysql_password }}" db_user: "{{ nova_api_galera_user }}" db_append_privs: "yes" - name: Deploy nova control plane hosts: "nova_all:!nova_compute" user: root become: true gather_facts: true any_errors_fatal: true roles: - role: "os_previous_nova" vars_files: - common/previous/test-vars.yml - name: Deploy nova compute hosts: "nova_compute" user: root become: true gather_facts: true any_errors_fatal: true roles: - role: "os_previous_nova" vars_files: - common/previous/test-vars.yml