Add option to use a remote mysql server
This commit is contained in:
parent
c791b4eb7a
commit
7fd6806a31
2 changed files with 56 additions and 2 deletions
|
@ -9,6 +9,8 @@ dbmail_db_port: 3306
|
|||
dbmail_db_name: dbmail
|
||||
dbmail_db_user: dbmail
|
||||
dbmail_db_password: "{{ vault_dbmail_password }}"
|
||||
dbmail_db_admin_user: root
|
||||
dbmail_db_admin_password: ''
|
||||
mail_server_fqdn: mail.example.com
|
||||
dbmail_domains:
|
||||
- example.com
|
||||
|
@ -104,4 +106,4 @@ dbmail_configuration:
|
|||
AUTO_NOTIFY: 'no'
|
||||
AUTO_REPLY: 'no'
|
||||
suppress_duplicates: 'no'
|
||||
quota_failure: hard
|
||||
quota_failure: hard
|
||||
|
|
|
@ -53,7 +53,25 @@
|
|||
collation: utf8_general_ci
|
||||
encoding: utf8
|
||||
login_unix_socket: /var/run/mysqld/mysqld.sock
|
||||
when: create_database
|
||||
when:
|
||||
- create_database
|
||||
- dbmail_db_host == 'localhost' or dbmail_db_host == '127.0.0.1'
|
||||
|
||||
- name: Create a new database from structure file
|
||||
mysql_db:
|
||||
name: "{{ dbmail_db_name }}"
|
||||
state: import
|
||||
target: /tmp/create_tables.sql
|
||||
collation: utf8_general_ci
|
||||
encoding: utf8
|
||||
login_user: "{{ dbmail_db_admin_user }}"
|
||||
login_password: "{{ dbmail_db_admin_password }}"
|
||||
login_host: "{{ dbmail_db_host }}"
|
||||
login_port: "{{ dbmail_db_port }}"
|
||||
when:
|
||||
- create_database
|
||||
- dbmail_db_host != 'localhost'
|
||||
- dbmail_db_host != '127.0.0.1'
|
||||
|
||||
- name: Create database user with mail database privileges for remote access
|
||||
mysql_user:
|
||||
|
@ -64,6 +82,24 @@
|
|||
state: present
|
||||
login_unix_socket: /var/run/mysqld/mysqld.sock
|
||||
loop: "{{ ansible_play_hosts }}"
|
||||
when:
|
||||
- dbmail_db_host == 'localhost' or dbmail_db_host == '127.0.0.1'
|
||||
|
||||
- name: Create database user with mail database privileges for remote access
|
||||
mysql_user:
|
||||
name: "{{ dbmail_db_user }}"
|
||||
host: "{{ lookup('dig', item) }}"
|
||||
password: "{{ dbmail_db_password }}"
|
||||
priv: "{{ dbmail_db_name }}.*:ALL"
|
||||
state: present
|
||||
login_user: "{{ dbmail_db_admin_user }}"
|
||||
login_password: "{{ dbmail_db_admin_password }}"
|
||||
login_host: "{{ dbmail_db_host }}"
|
||||
login_port: "{{ dbmail_db_port }}"
|
||||
loop: "{{ ansible_play_hosts }}"
|
||||
when:
|
||||
- dbmail_db_host != 'localhost'
|
||||
- dbmail_db_host != '127.0.0.1'
|
||||
|
||||
- name: Create database user with mail database privileges for local access
|
||||
mysql_user:
|
||||
|
@ -72,3 +108,19 @@
|
|||
priv: "{{ dbmail_db_name }}.*:ALL"
|
||||
state: present
|
||||
login_unix_socket: /var/run/mysqld/mysqld.sock
|
||||
when:
|
||||
- dbmail_db_host == 'localhost' or dbmail_db_host == '127.0.0.1'
|
||||
|
||||
- name: Create database user with mail database privileges for local access
|
||||
mysql_user:
|
||||
name: "{{ dbmail_db_user }}"
|
||||
password: "{{ dbmail_db_password }}"
|
||||
priv: "{{ dbmail_db_name }}.*:ALL"
|
||||
state: present
|
||||
login_user: "{{ dbmail_db_admin_user }}"
|
||||
login_password: "{{ dbmail_db_admin_password }}"
|
||||
login_host: "{{ dbmail_db_host }}"
|
||||
login_port: "{{ dbmail_db_port }}"
|
||||
when:
|
||||
- dbmail_db_host != 'localhost'
|
||||
- dbmail_db_host != '127.0.0.1'
|
||||
|
|
Loading…
Reference in a new issue