diff --git a/mysql/database.sls b/mysql/database.sls index 0f9796e..35cdc49 100644 --- a/mysql/database.sls +++ b/mysql/database.sls @@ -7,6 +7,7 @@ {%- set mysql_salt_user = salt['pillar.get']('mysql:salt_user:salt_user_name', mysql_root_user) %} {%- set mysql_salt_pass = salt['pillar.get']('mysql:salt_user:salt_user_password', mysql_root_pass) %} +{%- set mysql_unix_socket = mysql.config.sections.mysqld.socket %} include: - .python @@ -39,6 +40,9 @@ include: - connection_pass: '{{ mysql_salt_pass }}' {%- endif %} - connection_charset: utf8 + {%- if mysql_unix_socket %} + - connection_unix_socket: '{{ mysql_unix_socket }}' + {% endif %} {%- if salt['pillar.get'](['mysql', 'schema', database, 'load']|join(':'), False) %} {{ state_id }}_schema: diff --git a/mysql/osfamilymap.yaml b/mysql/osfamilymap.yaml index 2ddb339..e95b7a0 100644 --- a/mysql/osfamilymap.yaml +++ b/mysql/osfamilymap.yaml @@ -37,11 +37,12 @@ Debian: RedHat: service: mysqld clientpkg: mysql - pythonpkg: MySQL-python + pythonpkg: python3-PyMySQL config: file: /etc/my.cnf sections: - client: {} + client: + socket: /var/lib/mysql/mysql.sock mysqld_safe: log_error: /var/log/mysql/mysqld.log pid_file: /var/run/mysql/mysqld.pid diff --git a/mysql/osfingermap.yaml b/mysql/osfingermap.yaml index 9d98126..e2a92a1 100644 --- a/mysql/osfingermap.yaml +++ b/mysql/osfingermap.yaml @@ -42,8 +42,11 @@ Ubuntu-16.04: # devpkg: libmariadbclient-dev # Redhat +Red Hat Enterprise Linux Server-6: + pythonpkg: MySQL-python Redhat-7: # https://mariadb.com/blog/rhel7-transition-mysql-mariadb-first-look + pythonpkg: MySQL-python serverpkg: mariadb-server service: mariadb clientpkg: mariadb @@ -53,9 +56,13 @@ Redhat-7: mysqld_safe: log_error: /var/log/mariadb/mysqld.log pid_file: /var/run/mariadb/mysqld.pid + # CentOS +CentOS-6: + pythonpkg: MySQL-python CentOS Linux-7: # https://mariadb.com/blog/rhel7-transition-mysql-mariadb-first-look + pythonpkg: MySQL-python serverpkg: mariadb-server service: mariadb clientpkg: mariadb @@ -71,6 +78,5 @@ CentOS Linux-7: log_error: /var/log/mariadb/mysqld.log pid_file: /var/run/mariadb/mysqld.pid -# Suse -Leap-42: - pythonpkg: python-PyMySQL +CentOS Linux-8: + pythonpkg: python3-PyMySQL diff --git a/mysql/remove_test_database.sls b/mysql/remove_test_database.sls index 1286558..5ca1e2a 100644 --- a/mysql/remove_test_database.sls +++ b/mysql/remove_test_database.sls @@ -1,11 +1,15 @@ +{%- from tpldir ~ "/map.jinja" import mysql with context %} + {%- set mysql_root_user = salt['pillar.get']('mysql:server:root_user', 'root') %} {%- set mysql_root_pass = salt['pillar.get']('mysql:server:root_password', salt['grains.get']('server_id')) %} {%- set mysql_host = salt['pillar.get']('mysql:server:host', 'localhost') %} {%- set mysql_salt_user = salt['pillar.get']('mysql:salt_user:salt_user_name', mysql_root_user) %} {%- set mysql_salt_pass = salt['pillar.get']('mysql:salt_user:salt_user_password', mysql_root_pass) %} +{%- set mysql_unix_socket = mysql.config.sections.mysqld.socket %} include: - .python + - .server mysql remove test database: mysql_database.absent: @@ -17,3 +21,8 @@ mysql remove test database: - connection_pass: '{{ mysql_salt_pass }}' {%- endif %} - connection_charset: utf8 + {%- if mysql_unix_socket %} + - connection_unix_socket: '{{ mysql_unix_socket }}' + {%- endif %} + - require: + - service: mysqld-service-running diff --git a/mysql/server.sls b/mysql/server.sls index 6c6391a..a2f1854 100644 --- a/mysql/server.sls +++ b/mysql/server.sls @@ -4,18 +4,18 @@ include: {% from tpldir ~ "/map.jinja" import mysql with context %} - -{% set os = salt['grains.get']('os', None) %} -{% set os_family = salt['grains.get']('os_family', None) %} -{% set mysql_root_user = salt['pillar.get']('mysql:server:root_user', 'root') %} -{% set mysql_root_password = salt['pillar.get']('mysql:server:root_password', salt['grains.get']('server_id')) %} -{% set mysql_host = salt['pillar.get']('mysql:server:host', 'localhost') %} -{% set mysql_salt_user = salt['pillar.get']('mysql:salt_user:salt_user_name', mysql_root_user) %} -{% set mysql_salt_password = salt['pillar.get']('mysql:salt_user:salt_user_password', mysql_root_password) %} -{% set mysql_datadir = salt['pillar.get']('mysql:server:mysqld:datadir', '/var/lib/mysql') %} -{% set lsb_distrib_codename = salt['grains.get']('lsb_distrib_codename', None) %} -{% if mysql_root_password %} -{% if os_family == 'Debian' %} +{%- set os = salt['grains.get']('os', None) %} +{%- set os_family = salt['grains.get']('os_family', None) %} +{%- set mysql_root_user = salt['pillar.get']('mysql:server:root_user', 'root') %} +{%- set mysql_root_password = salt['pillar.get']('mysql:server:root_password', salt['grains.get']('server_id')) %} +{%- set mysql_host = salt['pillar.get']('mysql:server:host', 'localhost') %} +{%- set mysql_salt_user = salt['pillar.get']('mysql:salt_user:salt_user_name', mysql_root_user) %} +{%- set mysql_salt_password = salt['pillar.get']('mysql:salt_user:salt_user_password', mysql_root_password) %} +{%- set mysql_datadir = salt['pillar.get']('mysql:server:mysqld:datadir', '/var/lib/mysql') %} +{%- set mysql_unix_socket = salt['pillar.get']('mysql:server:unix_socket', '') %} +{%- set lsb_distrib_codename = salt['grains.get']('lsb_distrib_codename', None) %} +{%- if mysql_root_password %} +{%- if os_family == 'Debian' %} {% if 'debconf_root_password' in mysql %} {% set debconf_root_password = mysql.debconf_root_password %} @@ -112,6 +112,9 @@ mysql_delete_anonymous_user_{{ host }}: {%- if mysql_salt_password %} - connection_pass: '{{ mysql_salt_password }}' {%- endif %} + {%- if mysql_unix_socket %} + - connection_unix_socket: '{{ mysql_unix_socket }}' + {%- endif %} - connection_charset: utf8 - require: - service: mysqld-service-running @@ -242,4 +245,4 @@ mysql_additional_config: - source: salt://{{ tpldir }}/files/usr-my.cnf - create: False - watch_in: - - service: mysqld-service-running + - service: mysqld-service-running \ No newline at end of file diff --git a/mysql/user.sls b/mysql/user.sls index 414633a..cf91c9a 100644 --- a/mysql/user.sls +++ b/mysql/user.sls @@ -4,6 +4,7 @@ {%- set mysql_host = salt['pillar.get']('mysql:server:host', 'localhost') %} {%- set mysql_salt_user = salt['pillar.get']('mysql:salt_user:salt_user_name', mysql_root_user) %} {%- set mysql_salt_pass = salt['pillar.get']('mysql:salt_user:salt_user_password', mysql_root_pass) %} +{%- set mysql_unix_socket = salt['pillar.get']('mysql:server:unix_socket', '') %} {%- set user_states = [] %} {%- set user_hosts = [] %} @@ -57,6 +58,9 @@ include: - connection_user: '{{ mysql_salt_user }}' {%- if mysql_salt_pass %} - connection_pass: '{{ mysql_salt_pass }}' + {%- endif %} + {%- if mysql_unix_socket %} + - connection_unix_socket: '{{ mysql_unix_socket }}' {%- endif %} - connection_charset: utf8 @@ -90,6 +94,9 @@ include: {%- if mysql_salt_pass %} - connection_pass: '{{ mysql_salt_pass }}' {%- endif %} + {%- if mysql_unix_socket %} + - connection_unix_socket: '{{ mysql_unix_socket }}' + {%- endif %} - connection_charset: utf8 - require: - mysql_user: {{ state_id }} @@ -128,6 +135,9 @@ include: - connection_pass: '{{ mysql_salt_pass }}' {%- endif %} - connection_charset: utf8 + {%- if mysql_unix_socket %} + - connection_unix_socket: '{{ mysql_unix_socket }}' + {%- endif %} - require: - mysql_user: {{ state_id }} {%- endfor %}