From e6f098aa977b556ead112e85fa62bda714138798 Mon Sep 17 00:00:00 2001
From: Temur Maisuradze <temur@grena.ge>
Date: Wed, 13 Jan 2021 18:01:40 +0400
Subject: [PATCH] stop, restart and update-config scripts for mysql

---
 roles/build/templates/mysql/Dockerfile.j2 |  2 +-
 roles/mysql/tasks/main.yml                | 16 ++++++++++++++++
 roles/mysql/tasks/misp.yml                | 11 ++++-------
 roles/mysql/tasks/restart.yml             |  4 ++++
 roles/mysql/tasks/stop.yml                |  4 ++++
 roles/mysql/tasks/update-config.yml       |  2 ++
 6 files changed, 31 insertions(+), 8 deletions(-)
 create mode 100644 roles/mysql/tasks/restart.yml
 create mode 100644 roles/mysql/tasks/stop.yml
 create mode 100644 roles/mysql/tasks/update-config.yml

diff --git a/roles/build/templates/mysql/Dockerfile.j2 b/roles/build/templates/mysql/Dockerfile.j2
index c7b7d23..393eb3f 100644
--- a/roles/build/templates/mysql/Dockerfile.j2
+++ b/roles/build/templates/mysql/Dockerfile.j2
@@ -2,7 +2,7 @@ FROM {{repo}}/centos:{{version}}{{suffix}}
 
 USER root
 RUN yum -y update && yum install -y epel-release centos-release-scl scl-utils && \
-    yum install -y rh-mariadb103 python36-PyMySQL MySQL-python supervisor && \
+    yum install -y rh-mariadb103 python36-PyMySQL MySQL-python supervisor rsync && \
     /usr/bin/scl enable rh-mariadb103 -- /opt/rh/rh-mariadb103/root/usr/libexec/mysql-prepare-db-dir /var/opt/rh/rh-mariadb103/lib/mysql 
 RUN yum clean all
 
diff --git a/roles/mysql/tasks/main.yml b/roles/mysql/tasks/main.yml
index f915611..69395fe 100644
--- a/roles/mysql/tasks/main.yml
+++ b/roles/mysql/tasks/main.yml
@@ -1,4 +1,20 @@
 ---
 
 - include: secure.yml
+  tags:
+   - start
 - include: misp.yml
+  tags:
+   - start
+- include: stop.yml
+  tags:
+   - stop
+   - stop-mysql
+- include: update-config.yml
+  tags:
+   - update-config
+   - update-mysql-config
+- include: restart.yml
+  tags:
+   - restart
+   - restart-mysql
diff --git a/roles/mysql/tasks/misp.yml b/roles/mysql/tasks/misp.yml
index 7c4c8c5..c541e99 100644
--- a/roles/mysql/tasks/misp.yml
+++ b/roles/mysql/tasks/misp.yml
@@ -4,8 +4,6 @@
   mysql_db:
     name: "{{misp_dbname}}"
     state: present
-  tags:
-    - start
 
 - name: Create misp user
   mysql_user:
@@ -15,13 +13,12 @@
     password: "{{lookup('password', '{{playbook_dir}}/secrets/passwords/mysql_misp')}}"
     priv: "{{misp_dbname}}.*:ALL"
   with_items: "{{groups['mispcontainers']}}"
-  tags:
-    - start
 
 - name: Set Autostart for supervisord's services
-  shell: "sed -i 's/autostart=false/autostart=true/g' /etc/supervisord.conf"
-  tags:
-    - start
+  replace:
+    path: /etc/supervisord.conf
+    regexp: '^autostart=false$'
+    replace: 'autostart=true'
 
 
 #  CREATE DATABASE IF NOT EXISTS {{misp_dbname}};
diff --git a/roles/mysql/tasks/restart.yml b/roles/mysql/tasks/restart.yml
new file mode 100644
index 0000000..79a5ef4
--- /dev/null
+++ b/roles/mysql/tasks/restart.yml
@@ -0,0 +1,4 @@
+---
+
+- name: Restart MySQL
+  shell: "supervisorctl restart mysql"
diff --git a/roles/mysql/tasks/stop.yml b/roles/mysql/tasks/stop.yml
new file mode 100644
index 0000000..dcfc34a
--- /dev/null
+++ b/roles/mysql/tasks/stop.yml
@@ -0,0 +1,4 @@
+---
+
+- name: Stop MySQL
+  shell: "supervisorctl stop mysql"
diff --git a/roles/mysql/tasks/update-config.yml b/roles/mysql/tasks/update-config.yml
new file mode 100644
index 0000000..cd21505
--- /dev/null
+++ b/roles/mysql/tasks/update-config.yml
@@ -0,0 +1,2 @@
+---
+
-- 
GitLab