From 33a2ea7e8bddd905740aa128c43cb937eb1facce Mon Sep 17 00:00:00 2001 From: Christian Pointner Date: Wed, 9 Jan 2019 21:41:50 +0100 Subject: added mysql role --- roles/mysql/defaults/main.yml | 7 +++++++ roles/mysql/tasks/main.yml | 15 +++++++++++++++ roles/mysql/tasks/mysql-secure-installation.yml | 22 ++++++++++++++++++++++ 3 files changed, 44 insertions(+) create mode 100644 roles/mysql/defaults/main.yml create mode 100644 roles/mysql/tasks/main.yml create mode 100644 roles/mysql/tasks/mysql-secure-installation.yml (limited to 'roles/mysql') diff --git a/roles/mysql/defaults/main.yml b/roles/mysql/defaults/main.yml new file mode 100644 index 00000000..737711a1 --- /dev/null +++ b/roles/mysql/defaults/main.yml @@ -0,0 +1,7 @@ +--- +mysql_pkg_provider: distro +mysql_pkg_name: mysql-server + +### not done yet +# mysql_pkg_provider: percona +# mysql_pkg_name: percona-server-server diff --git a/roles/mysql/tasks/main.yml b/roles/mysql/tasks/main.yml new file mode 100644 index 00000000..ecd0ef90 --- /dev/null +++ b/roles/mysql/tasks/main.yml @@ -0,0 +1,15 @@ +--- +- name: prepare package provider + when: mysql_pkg_provider != 'distro' + include_tasks: "{{ mysql_pkg_provider }}.yml" + +- name: install mysql packages + apt: + name: + - "{{ mysql_pkg_name }}" + - python-mysqldb + state: present + force: yes + +- name: remove unsecure defaults + import_tasks: mysql-secure-installation.yml diff --git a/roles/mysql/tasks/mysql-secure-installation.yml b/roles/mysql/tasks/mysql-secure-installation.yml new file mode 100644 index 00000000..28674cfd --- /dev/null +++ b/roles/mysql/tasks/mysql-secure-installation.yml @@ -0,0 +1,22 @@ +--- +- name: set mysql root password + mysql_user: + login_user: root + login_password: "{{ mysql_root_password }}" + user: root + password: "{{ mysql_root_password }}" + host: localhost + +- name: delete anonymous MySQL server user + mysql_user: + login_user: root + login_password: "{{ mysql_root_password }}" + user: "" + state: absent + +- name: remove the MySQL test database + mysql_db: + login_user: root + login_password: "{{ mysql_root_password }}" + db: test + state: absent -- cgit v1.2.3