Merge "Add nova to placement DB migration"
This commit is contained in:
commit
c18035ee97
@ -13,6 +13,23 @@
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
- block:
|
||||
- name: Get mysql-migrate-db.sh path
|
||||
command: "{{ placement_bin }}/python -c \"import pkg_resources;print(pkg_resources.resource_filename('placement_db_tools', 'mysql-migrate-db.sh'))\" "
|
||||
become: yes
|
||||
become_user: "{{ placement_system_user_name }}"
|
||||
changed_when: false
|
||||
register: placement_db_tools
|
||||
# NOTE(noonededpunk) We have rc 3 when data is already migrated and rc 4 when no data for migration
|
||||
- name: Perform DB migration from nova-placement
|
||||
command: "{{ placement_db_tools.stdout }} --migrate /etc/placement/placement-migrate-db.rc"
|
||||
become: yes
|
||||
become_user: "{{ placement_system_user_name }}"
|
||||
register: placement_migrate
|
||||
changed_when: placement_migrate.rc == 0
|
||||
failed_when: placement_migrate.rc == 1 or placement_migrate.rc == 2 or placement_migrate.rc >= 5
|
||||
when: placement_migrate_flag | default(False)
|
||||
|
||||
- name: Perform a Placement DB sync
|
||||
command: "{{ placement_bin }}/placement-manage db sync"
|
||||
become: yes
|
||||
|
@ -27,3 +27,12 @@
|
||||
dest: "/etc/placement/placement.conf"
|
||||
config_overrides: "{{ placement_placement_conf_overrides }}"
|
||||
config_type: "ini"
|
||||
|
||||
- name: Copy placement database migration config
|
||||
template:
|
||||
src: placement-migrate-db.rc.j2
|
||||
dest: /etc/placement/placement-migrate-db.rc
|
||||
owner: "root"
|
||||
group: "{{ item.group|default(placement_system_group_name) }}"
|
||||
mode: "0640"
|
||||
when: placement_migrate_flag | default(False)
|
||||
|
9
templates/placement-migrate-db.rc.j2
Normal file
9
templates/placement-migrate-db.rc.j2
Normal file
@ -0,0 +1,9 @@
|
||||
NOVA_API_DB="{{ nova_api_galera_database | default('nova_api') }}"
|
||||
NOVA_API_USER="{{ nova_api_galera_user | default('nova_api') }}"
|
||||
NOVA_API_PASS="{{ nova_api_container_mysql_password }}"
|
||||
NOVA_API_DB_HOST="{{ nova_api_galera_address | default(placement_galera_address) }}"
|
||||
PLACEMENT_DB="{{ placement_galera_database }}"
|
||||
PLACEMENT_USER="{{ placement_galera_user }}"
|
||||
PLACEMENT_PASS="{{ placement_galera_password }}"
|
||||
PLACEMENT_DB_HOST="{{ placement_galera_address }}"
|
||||
MIGRATE_TABLES="allocations placement_aggregates consumers inventories projects resource_classes resource_provider_aggregates resource_provider_traits resource_providers traits users"
|
Loading…
Reference in New Issue
Block a user