mirror of
https://github.com/roles-ansible/ansible_role_packages.git
synced 2024-08-16 10:19:51 +02:00
Improved version check
This commit is contained in:
parent
763e656c35
commit
329a770ebd
3 changed files with 42 additions and 34 deletions
|
@ -1,37 +1,5 @@
|
||||||
---
|
---
|
||||||
- name: Create directory for versionscheck
|
- include_tasks: versioncheck.yml
|
||||||
become: true
|
|
||||||
file:
|
|
||||||
path: '/etc/ansible-version'
|
|
||||||
state: directory
|
|
||||||
mode: 0755
|
|
||||||
when: submodules_versioncheck|bool
|
|
||||||
|
|
||||||
- name: check playbook version
|
|
||||||
become: true
|
|
||||||
slurp:
|
|
||||||
src: "{{ playbook_version_path }}"
|
|
||||||
register: playbook_version
|
|
||||||
when: submodules_versioncheck|bool
|
|
||||||
ignore_errors: yes
|
|
||||||
changed_when: false
|
|
||||||
|
|
||||||
- name: Print version
|
|
||||||
debug:
|
|
||||||
msg: "Remote playbook version: '{{ playbook_version.content | default('Y3VycmVudGx5IG5vdCBkZXBsb3llZAo=') | b64decode | string }}'. Local playbook version: '{{ playbook_version_number|string }}'."
|
|
||||||
when: submodules_versioncheck|bool
|
|
||||||
|
|
||||||
- name: Check if your version is outdated
|
|
||||||
fail:
|
|
||||||
msg: "Your current ansible module has the version '{{ playbook_version_number }}' and is outdated. Please update it at least to version '{{ playbook_version.content | default('Y3VycmVudGx5IG5vdCBkZXBsb3llZAo=') | b64decode }}'!"
|
|
||||||
when:
|
|
||||||
- playbook_version.content|default("Mgo=")|b64decode|int - 1 >= playbook_version_number|int and submodules_versioncheck
|
|
||||||
|
|
||||||
- name: write new version to remote disk
|
|
||||||
become: true
|
|
||||||
copy:
|
|
||||||
content: "{{ playbook_version_number }}"
|
|
||||||
dest: "{{ playbook_version_path }}"
|
|
||||||
when: submodules_versioncheck|bool
|
when: submodules_versioncheck|bool
|
||||||
|
|
||||||
- name: Install common base packages [Debian]
|
- name: Install common base packages [Debian]
|
||||||
|
|
40
tasks/versioncheck.yml
Normal file
40
tasks/versioncheck.yml
Normal file
|
@ -0,0 +1,40 @@
|
||||||
|
---
|
||||||
|
- 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: "{{ playbook_version_path }}"
|
||||||
|
register: playbook_version
|
||||||
|
when: submodules_versioncheck|bool
|
||||||
|
ignore_errors: yes
|
||||||
|
changed_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: write new version to remote disk
|
||||||
|
become: true
|
||||||
|
copy:
|
||||||
|
content: "{{ playbook_version_number }}"
|
||||||
|
dest: "{{ playbook_version_path }}"
|
||||||
|
when: submodules_versioncheck|bool
|
|
@ -37,5 +37,5 @@ fedora_packages:
|
||||||
- mtr
|
- mtr
|
||||||
- libselinux-python
|
- libselinux-python
|
||||||
|
|
||||||
playbook_version_number: 101
|
playbook_version_number: 102
|
||||||
playbook_version_path: '/etc/ansible-version/base-packages_ffbsee_github.version'
|
playbook_version_path: '/etc/ansible-version/base-packages_ffbsee_github.version'
|
||||||
|
|
Loading…
Reference in a new issue