1
0
Fork 0
mirror of https://github.com/DO1JLR/ansible_role_nginx.git synced 2024-08-16 16:19:48 +02:00

implement versionscheck

This commit is contained in:
L3D 2021-02-04 14:43:54 +01:00
parent 40b06cbf9a
commit f5de2a2056
Signed by: l3d
GPG key ID: CD08445BFF4313D1
5 changed files with 63 additions and 0 deletions

8
.yamllint Normal file
View file

@ -0,0 +1,8 @@
---
extends: default
rules:
# 150 chars should be enough, but don't fail if a line is longer
line-length:
max: 150
level: warning

View file

@ -1,4 +1,6 @@
---
# enable version check for this role? (true is recomended)
submodules_versioncheck: false
nginx_sites: {}

View file

@ -1,4 +1,8 @@
---
- name: simple versionscheck
include_tasks: versioncheck.yml
when: submodules_versioncheck | bool
- name: Install nginx
include_tasks: installation.yml

46
tasks/versioncheck.yml Normal file
View file

@ -0,0 +1,46 @@
---
- name: Create directory for versionscheck
become: true
file:
path: '/etc/.ansible-version'
state: directory
mode: 0755
when: submodules_versioncheck|bool
- name: check playbook version
become: true
slurp:
src: "/etc/.ansible-version/{{ playbook_version_path }}"
register: playbook_version
when: submodules_versioncheck|bool
ignore_errors: true
failed_when: false
- name: Print remote role version
debug:
msg: "Remote role version: {{ playbook_version.content | default('Y3VycmVudGx5IG5vdCBkZXBsb3llZAo=') | b64decode | string }}"
when: submodules_versioncheck|bool
- name: Print locale role version
debug:
msg: "Local role version: '{{ playbook_version_number|string }}'."
when: submodules_versioncheck|bool
- name: Check if your version is outdated
fail:
msg: "Your ansible module has the version '{{ playbook_version_number }}' and is outdated. You need to update it!"
when:
- playbook_version.content|default("Mgo=")|b64decode|int - 1 >= playbook_version_number|int and submodules_versioncheck|bool
- name: check if '/etc/ansible-version/' is empty
find:
paths: '/etc/ansible-version/'
register: filesFound
- name: write new version to remote disk
become: true
copy:
content: "{{ playbook_version_number }}"
dest: "/etc/.ansible-version/{{ playbook_version_path }}"
mode: '0644'
when: submodules_versioncheck|bool

3
vars/main.yml Normal file
View file

@ -0,0 +1,3 @@
---
playbook_version_number: 22 # should be int
playbook_version_path: 'do1jlr.nginx_roles-ansible.version'