From 1f29cc14dc84269ca9618599237af427c08f734c Mon Sep 17 00:00:00 2001 From: Jeremy Lecour Date: Wed, 4 Jan 2017 18:53:37 +0100 Subject: [PATCH] mysql: mysql_variant=[oracle/mariadb] --- mysql/defaults/main.yml | 2 +- mysql/tasks/packages.yml | 26 ++++++++++++-------------- mysql/tasks/users.yml | 12 ++++++++++++ mysql/vars/main.yml | 5 +++++ 4 files changed, 30 insertions(+), 15 deletions(-) create mode 100644 mysql/vars/main.yml diff --git a/mysql/defaults/main.yml b/mysql/defaults/main.yml index d85c2027..90ff39fb 100644 --- a/mysql/defaults/main.yml +++ b/mysql/defaults/main.yml @@ -5,7 +5,7 @@ log2mail_alert_email: Null general_scripts_dir: "/usr/local/bin" mysql_scripts_dir: Null -mysql_use_mariadb: False +mysql_variant: oracle mysql_replace_root_with_mysqladmin: True diff --git a/mysql/tasks/packages.yml b/mysql/tasks/packages.yml index 77ebf2b6..62a2537a 100644 --- a/mysql/tasks/packages.yml +++ b/mysql/tasks/packages.yml @@ -1,23 +1,21 @@ --- -- name: Ensure MySQL (Oracle version) packages are installed - apt: - name: '{{ item }}' - state: installed - with_items: - - mysql-server - when: mysql_use_mariadb == False - tags: - - mysql - - packages +- name: Choose packages (Oracle) + set_fact: + mysql_packages: "{{ mysql_packages_oracle }}" + when: mysql_variant == "oracle" -- name: Ensure MySQL (MariaDB version) packages are installed +- name: Choose packages (MariaDB) + set_fact: + mysql_packages: "{{ mysql_packages_mariadb }}" + when: mysql_variant == "mariadb" + +- name: Install packages apt: name: '{{ item }}' + update_cache: yes state: installed - with_items: - - mariadb-server-10.0 - when: mysql_use_mariadb + with_items: "{{ mysql_packages }}" tags: - mysql - packages diff --git a/mysql/tasks/users.yml b/mysql/tasks/users.yml index 7d861df6..24dff43e 100644 --- a/mysql/tasks/users.yml +++ b/mysql/tasks/users.yml @@ -27,6 +27,18 @@ tags: - mysql +# Ansible 2.2 allows to create with ini_file +# before: we have to create the file beforehand + +- name: touch /root/.my.cnf + file: + path: /root/.my.cnf + state: touch + changed_when: False + when: create_mysqladmin_user.changed + tags: + - mysql + - name: mysqladmin is the default user ini_file: dest: /root/.my.cnf diff --git a/mysql/vars/main.yml b/mysql/vars/main.yml new file mode 100644 index 00000000..782cd97c --- /dev/null +++ b/mysql/vars/main.yml @@ -0,0 +1,5 @@ +mysql_packages_oracle: +- mysql-server + +mysql_packages_mariadb: +- mariadb-server-10.0