ansible-roles/mysql/tasks/datadir.yml
Jérémy Lecour 8920ff1ee4 Add "always_run: yes" where it's pertinent
There is also the "check_mode: no", but commented,
for when we switch to Ansible 2.2
2017-01-31 11:45:35 +01:00

45 lines
1.2 KiB
YAML

---
- block:
- name: "Is {{ mysql_custom_datadir }} present ?"
stat:
path: "{{ mysql_custom_datadir }}"
#check_mode: no (for migration to Ansible 2.2)
always_run: yes
register: mysql_custom_datadir_test
- name: "read the real datadir"
command: readlink -f /var/lib/mysql
changed_when: False
#check_mode: no (for migration to Ansible 2.2)
always_run: yes
register: mysql_current_real_datadir_test
tags:
- mysql
when: mysql_custom_datadir != ''
- block:
- name: MySQL is stopped
service:
name: mysql
state: stopped
- name: Move MySQL datadir to {{ mysql_custom_datadir }}
command: mv {{ mysql_current_real_datadir_test.stdout }} {{ mysql_custom_datadir }}
args:
creates: "{{ mysql_custom_datadir }}"
- name: Symlink {{ mysql_custom_datadir }} to /var/lib/mysql
file:
src: "{{ mysql_custom_datadir }}"
dest: '/var/lib/mysql'
state: link
- name: MySQL is started
service:
name: mysql
state: started
tags:
- mysql
when: mysql_custom_datadir != '' and mysql_custom_datadir != mysql_current_real_datadir_test.stdout and not mysql_custom_datadir_test.stat.exists