|
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102 |
- {%- from "galera/map.jinja" import slave with context %}
- {%- if slave.enabled %}
-
- galera_packages:
- pkg.installed:
- - names: {{ slave.pkgs }}
-
- galera_log_dir:
- file.directory:
- - name: /var/log/mysql
- - makedirs: true
- - mode: 755
- - require:
- - pkg: galera_packages
-
- galera_init_script:
- file.managed:
- - name: /etc/init.d/mysql
- - source: salt://galera/files/mysql
- - mode: 755
- - require:
- - pkg: galera_packages
-
- {%- if salt['cmd.run']('test -e /root/.galera_bootstrap; echo $?') != '0' %}
-
- galera_bootstrap_temp_config:
- file.managed:
- - name: {{ slave.config }}
- - source: salt://galera/files/my.cnf.bootstrap
- - mode: 644
- - template: jinja
- - require:
- - pkg: galera_packages
- - file: galera_init_script
-
- galera_bootstrap_start_service:
- service.running:
- - name: {{ slave.service }}
- - require:
- - file: galera_bootstrap_temp_config
-
- galera_bootstrap_set_root_password:
- cmd.run:
- - name: mysqladmin password "{{ slave.admin.password }}"
- - require:
- - service: galera_bootstrap_start_service
-
- mysql_bootstrap_update_maint_password:
- cmd.run:
- - name: mysql -u root -p{{ slave.admin.password }} -e "GRANT ALL PRIVILEGES ON *.* TO 'debian-sys-maint'@'localhost' IDENTIFIED BY '{{ slave.maintenance_password }}';"
- - require:
- - cmd: galera_bootstrap_set_root_password
-
- galera_bootstrap_stop_service:
- service.dead:
- - name: {{ slave.service }}
- - require:
- - cmd: mysql_bootstrap_update_maint_password
-
- galera_bootstrap_init_config:
- file.managed:
- - name: {{ slave.config }}
- - source: salt://galera/files/my.cnf
- - mode: 644
- - template: jinja
- - require:
- - service: galera_bootstrap_stop_service
-
- galera_bootstrap_start_service_final:
- cmd.script:
- - name: slave_bootstrap
- - source: salt://galera/files/slave_bootstrap.sh
- - template: jinja
- - require:
- - file: galera_bootstrap_init_config
-
- galera_bootstrap_finish_flag:
- file.touch:
- - name: /root/.galera_bootstrap
- - require:
- - cmd: galera_bootstrap_start_service_final
- - watch_in:
- - file: galera_config
-
- {%- endif %}
-
- galera_config:
- file.managed:
- - name: {{ slave.config }}
- - source: salt://galera/files/my.cnf
- - mode: 644
- - template: jinja
- - require_in:
- - service: galera_service
-
- galera_service:
- service.running:
- - name: {{ slave.service }}
- - enable: true
- - reload: true
-
- {%- endif %}
|