diff options
Diffstat (limited to 'deploy/adapters/ansible/roles/monitor')
5 files changed, 27 insertions, 3 deletions
diff --git a/deploy/adapters/ansible/roles/monitor/files/check_Debian_service.sh b/deploy/adapters/ansible/roles/monitor/files/check_Debian_service.sh new file mode 100644 index 00000000..0138100c --- /dev/null +++ b/deploy/adapters/ansible/roles/monitor/files/check_Debian_service.sh @@ -0,0 +1,7 @@ +#!/bin/bash +services=`cat /opt/service | uniq` +for service in $services; do + if [ `/sbin/initctl list|awk '/stop\/waiting/{print $1}'|uniq | grep $service` ]; then + /sbin/start $service + fi +done diff --git a/deploy/adapters/ansible/roles/monitor/files/check_RedHat_service.sh b/deploy/adapters/ansible/roles/monitor/files/check_RedHat_service.sh new file mode 100644 index 00000000..0fd921f4 --- /dev/null +++ b/deploy/adapters/ansible/roles/monitor/files/check_RedHat_service.sh @@ -0,0 +1,8 @@ +#!/bin/bash +services=`cat /opt/service | uniq` +for service in $services; do + /usr/sbin/service $service status >/dev/null 2>&1 + if [[ $? -ne 0 ]]; then + /usr/sbin/service $service start + fi +done diff --git a/deploy/adapters/ansible/roles/monitor/tasks/main.yml b/deploy/adapters/ansible/roles/monitor/tasks/main.yml index e5b93f39..6e446944 100644 --- a/deploy/adapters/ansible/roles/monitor/tasks/main.yml +++ b/deploy/adapters/ansible/roles/monitor/tasks/main.yml @@ -1,11 +1,13 @@ --- +- include_vars: "{{ ansible_os_family }}.yml" + - name: copy service check file - copy: src=check_service.sh dest=/usr/local/bin/check_service.sh mode=0777 + copy: src=check_{{ ansible_os_family }}_service.sh dest=/usr/local/bin/check_service.sh mode=0777 - name: copy cron file - copy: src=root dest=/var/spool/cron/crontabs/root mode=0600 + copy: src=root dest={{ cron_path }}/root mode=0600 - name: restart cron - service: name=cron state=restarted + service: name={{ cron }} state=restarted diff --git a/deploy/adapters/ansible/roles/monitor/vars/Debian.yml b/deploy/adapters/ansible/roles/monitor/vars/Debian.yml new file mode 100644 index 00000000..7de590c9 --- /dev/null +++ b/deploy/adapters/ansible/roles/monitor/vars/Debian.yml @@ -0,0 +1,4 @@ +--- +cron: cron +cron_path: "/var/spool/cron/crontabs" + diff --git a/deploy/adapters/ansible/roles/monitor/vars/RedHat.yml b/deploy/adapters/ansible/roles/monitor/vars/RedHat.yml new file mode 100644 index 00000000..f4ff7657 --- /dev/null +++ b/deploy/adapters/ansible/roles/monitor/vars/RedHat.yml @@ -0,0 +1,3 @@ +--- +cron: crond +cron_path: "/var/spool/cron" |