d5e5e885d1
A common class of problems goes like this: * kolla-ansible deploy * Hit a problem, often in ansible/roles/*/tasks/bootstrap.yml * Re-run kolla-ansible deploy * Service fails to start This happens because the DB is created during the first run, but for some reason we fail before performing the DB sync. This means that on the second run we don't include ansible/roles/*/tasks/bootstrap_service.yml because the DB already exists, and therefore still don't perform the DB sync. However this time, the command may complete without apparent error. We should be less careful about when we perform the DB sync, and do it whenever it is necessary. There is an argument for not doing the sync during a 'reconfigure' command, although we will not change that here. This change only always performs the DB sync during 'deploy' and 'reconfigure' commands. Change-Id: I82d30f3fcf325a3fdff3c59f19a1f88055b566cc Closes-Bug: #1823766 Closes-Bug: #1797814
37 lines
1.1 KiB
YAML
37 lines
1.1 KiB
YAML
---
|
|
- name: Creating placement databases
|
|
become: true
|
|
kolla_toolbox:
|
|
module_name: mysql_db
|
|
module_args:
|
|
login_host: "{{ database_address }}"
|
|
login_port: "{{ database_port }}"
|
|
login_user: "{{ database_user }}"
|
|
login_password: "{{ database_password }}"
|
|
name: "{{ placement_database_name }}"
|
|
run_once: True
|
|
delegate_to: "{{ groups['placement-api'][0] }}"
|
|
when:
|
|
- not use_preconfigured_databases | bool
|
|
|
|
- name: Creating placement databases user and setting permissions
|
|
become: true
|
|
kolla_toolbox:
|
|
module_name: mysql_user
|
|
module_args:
|
|
login_host: "{{ database_address }}"
|
|
login_port: "{{ database_port }}"
|
|
login_user: "{{ database_user }}"
|
|
login_password: "{{ database_password }}"
|
|
name: "{{ placement_database_user }}"
|
|
password: "{{ placement_database_password }}"
|
|
host: "%"
|
|
priv: "{{ placement_database_name }}.*:ALL"
|
|
append_privs: "yes"
|
|
run_once: True
|
|
delegate_to: "{{ groups['placement-api'][0] }}"
|
|
when:
|
|
- not use_preconfigured_databases | bool
|
|
|
|
- include_tasks: bootstrap_service.yml
|