From 367fa6dd90278172c8be26ade8e6810f6686d279 Mon Sep 17 00:00:00 2001 From: Adar Nimrod <nimrod@shore.co.il> Date: Thu, 22 Oct 2015 09:37:06 +0300 Subject: [PATCH] Copy tasks, backup template from other roles. --- tasks/main.yml | 44 ++++++++++++++++++++++++++++++++++++++++++++ templates/mysql.j2 | 2 ++ 2 files changed, 46 insertions(+) create mode 100644 templates/mysql.j2 diff --git a/tasks/main.yml b/tasks/main.yml index f410018..d20fcad 100644 --- a/tasks/main.yml +++ b/tasks/main.yml @@ -1,2 +1,46 @@ --- # tasks file for ansible-mysql + +- name: Preseed + debconf: + name: mysql-server-5.5 + question: '{{ item }}' + vtype: password + value: '{{ mysql_root_password }}' + with_items: + - mysql-server/root_password + - mysql-server/root_password_again + +- name: apt install + apt: + name: '{{ item }}' + state: present + update_cache: yes + cache_valid_time: 3600 + with_items: + - mysql-server-5.5 + - mysql-client-5.5 + - python-mysqldb + - cron + +- name: Create database + mysql_db: + collation: utf8_general_ci + encoding: utf8 + name: '{{ mysql_database }}' + state: present + +- name: Create account + mysql_user: + name: '{{ mysql_user }}' + password: '{{ mysql_password }}' + priv: '{{ mysql_database }}.*:SELECT,INSERT,UPDATE,DELETE,CREATE,INDEX' + state: present + +- name: Add daily backup job + template: + src: mysql.j2 + dest: '/etc/cron.daily/mysql_{{ mysql_database }}' + owner: root + group: root + mode: '0700' diff --git a/templates/mysql.j2 b/templates/mysql.j2 new file mode 100644 index 0000000..2867b90 --- /dev/null +++ b/templates/mysql.j2 @@ -0,0 +1,2 @@ +#!/bin/sh -e +mysqldump --user root --password {{ mysql_root_password }} --single-transaction --force {{ mysql_database }} > /var/backups/mysql_{{ mysql_database }}.sql -- GitLab