mirror of https://github.com/ansible/ansible.git
mysql_replication: add master_use_gtid parameter (#62648)
* mysql_replication: add master_use_gtid parameter * mysql_replication: add master_use_gtid parameter, improve testspull/63088/head
parent
6ad6fde424
commit
ea86b2c2f7
@ -0,0 +1,2 @@
|
|||||||
|
minor_changes:
|
||||||
|
- mysql_replication - add ``master_use_gtid`` parameter (https://github.com/ansible/ansible/pull/62648).
|
@ -0,0 +1,173 @@
|
|||||||
|
# Copyright: (c) 2019, Andrew Klychkov (@Andersson007) <aaklychkov@mail.ru>
|
||||||
|
# GNU General Public License v3.0+ (see COPYING or https://www.gnu.org/licenses/gpl-3.0.txt)
|
||||||
|
|
||||||
|
# Tests for master_use_gtid parameter.
|
||||||
|
# https://github.com/ansible/ansible/pull/62648
|
||||||
|
|
||||||
|
#############################
|
||||||
|
# master_use_gtid: "disabled"
|
||||||
|
#############################
|
||||||
|
|
||||||
|
# Auxiliary step:
|
||||||
|
- name: Get master status
|
||||||
|
mysql_replication:
|
||||||
|
login_host: 127.0.0.1
|
||||||
|
login_port: "{{ master_port }}"
|
||||||
|
mode: getmaster
|
||||||
|
register: master_status
|
||||||
|
|
||||||
|
# Set master_use_gtid disabled:
|
||||||
|
- name: Run replication
|
||||||
|
mysql_replication:
|
||||||
|
login_host: 127.0.0.1
|
||||||
|
login_port: "{{ standby_port }}"
|
||||||
|
mode: changemaster
|
||||||
|
master_host: 127.0.0.1
|
||||||
|
master_port: "{{ master_port }}"
|
||||||
|
master_user: "{{ replication_user }}"
|
||||||
|
master_password: "{{ replication_pass }}"
|
||||||
|
master_log_file: mysql-bin.000001
|
||||||
|
master_log_pos: '{{ master_status.Position }}'
|
||||||
|
master_use_gtid: disabled
|
||||||
|
register: result
|
||||||
|
|
||||||
|
- assert:
|
||||||
|
that:
|
||||||
|
- result is changed
|
||||||
|
|
||||||
|
# Start standby for further tests:
|
||||||
|
- name: Start standby
|
||||||
|
mysql_replication:
|
||||||
|
login_host: 127.0.0.1
|
||||||
|
login_port: "{{ master_port }}"
|
||||||
|
mode: startslave
|
||||||
|
|
||||||
|
- name: Get standby status
|
||||||
|
mysql_replication:
|
||||||
|
login_host: 127.0.0.1
|
||||||
|
login_port: "{{ standby_port }}"
|
||||||
|
mode: getslave
|
||||||
|
register: slave_status
|
||||||
|
|
||||||
|
- assert:
|
||||||
|
that:
|
||||||
|
- slave_status.Using_Gtid == 'No'
|
||||||
|
|
||||||
|
# Stop standby for further tests:
|
||||||
|
- name: Stop standby
|
||||||
|
mysql_replication:
|
||||||
|
login_host: 127.0.0.1
|
||||||
|
login_port: "{{ standby_port }}"
|
||||||
|
mode: stopslave
|
||||||
|
|
||||||
|
################################
|
||||||
|
# master_use_gtid: "current_pos"
|
||||||
|
################################
|
||||||
|
|
||||||
|
# Auxiliary step:
|
||||||
|
- name: Get master status
|
||||||
|
mysql_replication:
|
||||||
|
login_host: 127.0.0.1
|
||||||
|
login_port: "{{ master_port }}"
|
||||||
|
mode: getmaster
|
||||||
|
register: master_status
|
||||||
|
|
||||||
|
# Set master_use_gtid current_pos:
|
||||||
|
- name: Run replication
|
||||||
|
mysql_replication:
|
||||||
|
login_host: 127.0.0.1
|
||||||
|
login_port: "{{ standby_port }}"
|
||||||
|
mode: changemaster
|
||||||
|
master_host: 127.0.0.1
|
||||||
|
master_port: "{{ master_port }}"
|
||||||
|
master_user: "{{ replication_user }}"
|
||||||
|
master_password: "{{ replication_pass }}"
|
||||||
|
master_log_file: mysql-bin.000001
|
||||||
|
master_log_pos: '{{ master_status.Position }}'
|
||||||
|
master_use_gtid: current_pos
|
||||||
|
register: result
|
||||||
|
|
||||||
|
- assert:
|
||||||
|
that:
|
||||||
|
- result is changed
|
||||||
|
|
||||||
|
# Start standby for further tests:
|
||||||
|
- name: Start standby
|
||||||
|
mysql_replication:
|
||||||
|
login_host: 127.0.0.1
|
||||||
|
login_port: "{{ master_port }}"
|
||||||
|
mode: startslave
|
||||||
|
|
||||||
|
- name: Get standby status
|
||||||
|
mysql_replication:
|
||||||
|
login_host: 127.0.0.1
|
||||||
|
login_port: "{{ standby_port }}"
|
||||||
|
mode: getslave
|
||||||
|
register: slave_status
|
||||||
|
|
||||||
|
- assert:
|
||||||
|
that:
|
||||||
|
- slave_status.Using_Gtid == 'Current_Pos'
|
||||||
|
|
||||||
|
# Stop standby for further tests:
|
||||||
|
- name: Stop standby
|
||||||
|
mysql_replication:
|
||||||
|
login_host: 127.0.0.1
|
||||||
|
login_port: "{{ standby_port }}"
|
||||||
|
mode: stopslave
|
||||||
|
|
||||||
|
##############################
|
||||||
|
# master_use_gtid: "slave_pos"
|
||||||
|
##############################
|
||||||
|
|
||||||
|
# Auxiliary step:
|
||||||
|
- name: Get master status
|
||||||
|
mysql_replication:
|
||||||
|
login_host: 127.0.0.1
|
||||||
|
login_port: "{{ master_port }}"
|
||||||
|
mode: getmaster
|
||||||
|
register: master_status
|
||||||
|
|
||||||
|
# Set master_use_gtid slave_pos:
|
||||||
|
- name: Run replication
|
||||||
|
mysql_replication:
|
||||||
|
login_host: 127.0.0.1
|
||||||
|
login_port: "{{ standby_port }}"
|
||||||
|
mode: changemaster
|
||||||
|
master_host: 127.0.0.1
|
||||||
|
master_port: "{{ master_port }}"
|
||||||
|
master_user: "{{ replication_user }}"
|
||||||
|
master_password: "{{ replication_pass }}"
|
||||||
|
master_log_file: mysql-bin.000001
|
||||||
|
master_log_pos: '{{ master_status.Position }}'
|
||||||
|
master_use_gtid: slave_pos
|
||||||
|
register: result
|
||||||
|
|
||||||
|
- assert:
|
||||||
|
that:
|
||||||
|
- result is changed
|
||||||
|
|
||||||
|
# Start standby for further tests:
|
||||||
|
- name: Start standby
|
||||||
|
mysql_replication:
|
||||||
|
login_host: 127.0.0.1
|
||||||
|
login_port: "{{ master_port }}"
|
||||||
|
mode: startslave
|
||||||
|
|
||||||
|
- name: Get standby status
|
||||||
|
mysql_replication:
|
||||||
|
login_host: 127.0.0.1
|
||||||
|
login_port: "{{ standby_port }}"
|
||||||
|
mode: getslave
|
||||||
|
register: slave_status
|
||||||
|
|
||||||
|
- assert:
|
||||||
|
that:
|
||||||
|
- slave_status.Using_Gtid == 'Slave_Pos'
|
||||||
|
|
||||||
|
# Stop standby for further tests:
|
||||||
|
- name: Stop standby
|
||||||
|
mysql_replication:
|
||||||
|
login_host: 127.0.0.1
|
||||||
|
login_port: "{{ standby_port }}"
|
||||||
|
mode: stopslave
|
Loading…
Reference in New Issue