|
93 | 93 | ansible.builtin.set_fact:
|
94 | 94 | mysql_sync_target_dump_path: "/tmp/{{ database.target.database }}_{{ build_number }}_target.sql.bz2"
|
95 | 95 |
|
| 96 | +- name: Register tmp unpacked target dump name. |
| 97 | + ansible.builtin.set_fact: |
| 98 | + mysql_sync_target_dump_unpacked_path: "/tmp/{{ database.target.database }}_{{ build_number }}_target.sql" |
| 99 | + |
96 | 100 | - name: Get target last known good build number.
|
97 | 101 | ansible.builtin.command:
|
98 | 102 | argv:
|
|
126 | 130 | src: "{{ _ce_deploy_build_tmp_dir }}/{{ database.target.database }}.sql.bz2"
|
127 | 131 | dest: "{{ mysql_sync_target_dump_path }}"
|
128 | 132 |
|
| 133 | +- name: Unpack dump file. |
| 134 | + ansible.builtin.unarchive: |
| 135 | + src: "{{ mysql_sync_target_dump_path }}" |
| 136 | + dest: "{{ mysql_sync_target_dump_unpacked_path }}" |
| 137 | + |
| 138 | +- name: Delete temporary dump file on target. |
| 139 | + ansible.builtin.file: |
| 140 | + path: "{{ mysql_sync_target_dump_path }}" |
| 141 | + state: absent |
| 142 | + |
129 | 143 | - name: Drop target database.
|
130 | 144 | ansible.builtin.command:
|
131 | 145 | cmd: "mysql --defaults-extra-file={{ database.target.credentials_file }} -e 'drop database if exists {{ mysql_sync_target_database }};'"
|
|
135 | 149 | cmd: "mysql --defaults-extra-file={{ database.target.credentials_file }} -e 'create database {{ mysql_sync_target_database }};'"
|
136 | 150 |
|
137 | 151 | - name: Repopulate database from dump.
|
138 |
| - ansible.builtin.shell: "set -o pipefail && bzcat {{ mysql_sync_target_dump_path }} | mysql --defaults-extra-file={{ database.target.credentials_file }} {{ mysql_sync_target_database }}" |
| 152 | + ansible.builtin.shell: "mysql --defaults-extra-file={{ database.target.credentials_file }} {{ mysql_sync_target_database }} < {{ mysql_sync_target_dump_unpacked_path }}" |
139 | 153 | args:
|
140 | 154 | executable: /bin/bash
|
141 | 155 |
|
142 |
| -- name: Delete temporary dump file on target. |
| 156 | +- name: Delete temporary unpacked dump file on target. |
143 | 157 | ansible.builtin.file:
|
144 |
| - path: "{{ mysql_sync_target_dump_path }}" |
| 158 | + path: "{{ mysql_sync_target_dump_unpacked_path }}" |
145 | 159 | state: absent
|
146 | 160 |
|
147 | 161 | - name: Delete temporary dump file on source.
|
|
0 commit comments