2023-09-16 20:44:54 +02:00
|
|
|
---
|
|
|
|
# Copyright (c) 2021 L3D <l3d@c3woc.de>
|
|
|
|
# this file is released with the MIT license.
|
|
|
|
# License: https://github.com/roles-ansible/ansible_role_template/blob/main/LICENSE
|
|
|
|
- name: Create directory for versionscheck
|
|
|
|
become: true
|
|
|
|
ansible.builtin.file:
|
|
|
|
path: '/etc/.ansible-version'
|
|
|
|
state: directory
|
|
|
|
mode: 0755
|
2023-09-21 16:47:27 +02:00
|
|
|
when: submodules_versioncheck | bool
|
2023-09-16 20:44:54 +02:00
|
|
|
|
2023-09-21 16:47:27 +02:00
|
|
|
- name: Check playbook version
|
2023-09-16 20:44:54 +02:00
|
|
|
become: true
|
|
|
|
ansible.builtin.slurp:
|
|
|
|
src: "/etc/.ansible-version/{{ playbook_version_path }}"
|
|
|
|
register: playbook_version
|
2023-09-21 16:47:27 +02:00
|
|
|
when: submodules_versioncheck | bool
|
2023-09-16 20:44:54 +02:00
|
|
|
failed_when: false
|
|
|
|
|
2023-10-28 17:20:20 +02:00
|
|
|
- name: Print remote role version # noqa: H500
|
2023-09-16 20:44:54 +02:00
|
|
|
ansible.builtin.debug:
|
|
|
|
msg: "Remote role version: {{ playbook_version.content | default('Y3VycmVudGx5IG5vdCBkZXBsb3llZAo=') | b64decode | string }}"
|
2023-09-21 16:47:27 +02:00
|
|
|
when: submodules_versioncheck | bool
|
2023-09-16 20:44:54 +02:00
|
|
|
|
2023-10-28 17:20:20 +02:00
|
|
|
- name: Print locale role version # noqa: H500
|
2023-09-16 20:44:54 +02:00
|
|
|
ansible.builtin.debug:
|
2023-09-21 16:47:27 +02:00
|
|
|
msg: "Local role version: '{{ playbook_version_number | string }}'."
|
|
|
|
when: submodules_versioncheck | bool
|
2023-09-16 20:44:54 +02:00
|
|
|
|
|
|
|
- name: Check if your version is outdated
|
|
|
|
ansible.builtin.fail:
|
|
|
|
msg: "Your ansible module has the version '{{ playbook_version_number }}' and is outdated. You need to update it!"
|
|
|
|
when:
|
2023-10-28 17:20:20 +02:00
|
|
|
- playbook_version.content|default("Mgo=")|b64decode|int - 1 >= playbook_version_number|int and submodules_versioncheck | bool
|
2023-09-16 20:44:54 +02:00
|
|
|
|
2023-09-21 16:47:27 +02:00
|
|
|
- name: Write new version to remote disk
|
2023-09-16 20:44:54 +02:00
|
|
|
become: true
|
|
|
|
ansible.builtin.copy:
|
|
|
|
content: "{{ playbook_version_number }}"
|
|
|
|
dest: "/etc/.ansible-version/{{ playbook_version_path }}"
|
|
|
|
mode: '0644'
|
2023-09-21 16:47:27 +02:00
|
|
|
when: submodules_versioncheck | bool
|
2023-10-28 17:20:20 +02:00
|
|
|
tags: skip_ansible_lint_template-instead-of-copy
|