diff options
Diffstat (limited to 'deploy/adapters/ansible/roles/monitor')
-rw-r--r-- | deploy/adapters/ansible/roles/monitor/files/check_service.sh | 7 | ||||
-rw-r--r-- | deploy/adapters/ansible/roles/monitor/files/root | 1 | ||||
-rw-r--r-- | deploy/adapters/ansible/roles/monitor/tasks/main.yml | 11 |
3 files changed, 19 insertions, 0 deletions
diff --git a/deploy/adapters/ansible/roles/monitor/files/check_service.sh b/deploy/adapters/ansible/roles/monitor/files/check_service.sh new file mode 100644 index 00000000..0138100c --- /dev/null +++ b/deploy/adapters/ansible/roles/monitor/files/check_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/root b/deploy/adapters/ansible/roles/monitor/files/root new file mode 100644 index 00000000..9c55c4f1 --- /dev/null +++ b/deploy/adapters/ansible/roles/monitor/files/root @@ -0,0 +1 @@ +* * * * * /usr/local/bin/check_service.sh >> /var/log/check_service.log 2>&1 diff --git a/deploy/adapters/ansible/roles/monitor/tasks/main.yml b/deploy/adapters/ansible/roles/monitor/tasks/main.yml new file mode 100644 index 00000000..e5b93f39 --- /dev/null +++ b/deploy/adapters/ansible/roles/monitor/tasks/main.yml @@ -0,0 +1,11 @@ +--- +- name: copy service check file + copy: src=check_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 + +- name: restart cron + service: name=cron state=restarted + + |