45 lines
1.3 KiB
YAML
45 lines
1.3 KiB
YAML
---
|
|
- name: Verify
|
|
hosts: all
|
|
tasks:
|
|
- name: Check if NGINX is installed
|
|
ansible.builtin.package:
|
|
name: nginx
|
|
state: present
|
|
check_mode: true
|
|
register: install
|
|
failed_when: (install is changed) or (install is failed)
|
|
|
|
- name: Check if NGINX service is running
|
|
ansible.builtin.service:
|
|
name: nginx
|
|
state: started
|
|
enabled: true
|
|
check_mode: true
|
|
register: service
|
|
failed_when: (service is changed) or (service is failed)
|
|
|
|
- name: Verify NGINX is up and running
|
|
ansible.builtin.uri:
|
|
url: http://localhost
|
|
status_code: 200
|
|
|
|
- name: Fetch NGINX version
|
|
ansible.builtin.uri:
|
|
url: https://version.nginx.com/nginx/mainline
|
|
return_content: true
|
|
check_mode: false
|
|
register: nginx_versions
|
|
|
|
- name: Set NGINX version
|
|
ansible.builtin.set_fact:
|
|
nginx_version: "{{ nginx_versions.content | regex_search('([0-9]+\\.){2}[0-9]+') }}"
|
|
|
|
- name: Verify NGINX has been upgraded
|
|
ansible.builtin.command: nginx -v
|
|
args:
|
|
chdir: "{{ ((ansible_facts['system'] | lower is not search('bsd')) | ternary('/etc/nginx', '/usr/local/sbin')) }}"
|
|
changed_when: false
|
|
register: version
|
|
failed_when: version is not search(nginx_version)
|