diff options
Diffstat (limited to 'roles/nginx')
| -rw-r--r-- | roles/nginx/files/update_nginx | 18 | ||||
| -rw-r--r-- | roles/nginx/tasks/main.yml | 27 |
2 files changed, 45 insertions, 0 deletions
diff --git a/roles/nginx/files/update_nginx b/roles/nginx/files/update_nginx new file mode 100644 index 0000000..cf6ee6f --- /dev/null +++ b/roles/nginx/files/update_nginx @@ -0,0 +1,18 @@ +#!/bin/sh + +apk upgrade + +nginx_pid="$(pgrep nginx:\ master\ process)" +if [ -z "$nginx_pid" ] +then + rc-service nginx restart + exit 0 +fi + +nginx_proc_start_time="$(stat -Lc %Y /proc/${nginx_pid})" +nginx_file_mtime="$(stat -Lc %Y $(which nginx))" + +if [ "$nginx_file_mtime" -gt "$nginx_proc_start_time" ] +then + rc-service nginx restart +fi diff --git a/roles/nginx/tasks/main.yml b/roles/nginx/tasks/main.yml new file mode 100644 index 0000000..591e195 --- /dev/null +++ b/roles/nginx/tasks/main.yml @@ -0,0 +1,27 @@ +- name: Install nginx + community.general.apk: + name: nginx + +- name: Remove default nginx site config + register: default_nginx_site + ansible.builtin.file: + path: /etc/nginx/http.d/default.conf + state: absent + +- name: Start nginx service and configure to restart on boot + ansible.builtin.service: + name: nginx + enabled: true + state: started + +- name: Install script to update nginx + ansible.builtin.template: + src: update_nginx + dest: /usr/bin/update_nginx + mode: "755" + +- name: Install daily crontab to update nginx + ansible.builtin.cron: + special_time: daily + name: Update nginx + job: /usr/bin/update_nginx |
