---
- name: Creating Nova databases
  become: true
  kolla_toolbox:
    container_engine: "{{ kolla_container_engine }}"
    module_name: mysql_db
    module_args:
      login_host: "{{ database_address }}"
      login_port: "{{ database_port }}"
      login_user: "{{ nova_database_shard_root_user }}"
      login_password: "{{ database_password }}"
      name: "{{ item }}"
  run_once: True
  with_items:
    - "{{ nova_cell0_database_name }}"
    - "{{ nova_api_database_name }}"
  when:
    - not use_preconfigured_databases | bool

- name: Creating Nova databases user and setting permissions
  become: true
  kolla_toolbox:
    container_engine: "{{ kolla_container_engine }}"
    module_name: mysql_user
    module_args:
      login_host: "{{ database_address }}"
      login_port: "{{ database_port }}"
      login_user: "{{ nova_database_shard_root_user }}"
      login_password: "{{ database_password }}"
      name: "{{ item.database_username }}"
      password: "{{ item.database_password }}"
      host: "%"
      priv: "{{ item.database_name }}.*:ALL"
      append_privs: "yes"
  with_items:
    - database_name: "{{ nova_cell0_database_name }}"
      database_username: "{{ nova_cell0_database_user }}"
      database_password: "{{ nova_cell0_database_password }}"
    - database_name: "{{ nova_api_database_name }}"
      database_username: "{{ nova_api_database_user }}"
      database_password: "{{ nova_api_database_password }}"
  loop_control:
    label: "{{ item.database_name }}"
  run_once: True
  when:
    - not use_preconfigured_databases | bool
  no_log: true

- import_tasks: config_bootstrap.yml

- include_tasks: clone.yml
  when: nova_dev_mode | bool

- import_tasks: bootstrap_service.yml

- import_tasks: map_cell0.yml