From 7a89467f512eb8081fba15f7f1a864548abc266b Mon Sep 17 00:00:00 2001 From: L3D Date: Tue, 13 Feb 2024 19:37:55 +0100 Subject: [PATCH] Adding WIP note --- README.md | 2 ++ roles/user/README.md | 6 +++++ roles/user/defaults/main.yml | 3 +++ roles/user/tasks/main.yml | 6 +++++ roles/user/tasks/versioncheck.yml | 44 +++++++++++++++++++++++++++++++ roles/user/vars/main.yml | 3 +++ 6 files changed, 64 insertions(+) create mode 100644 roles/user/README.md create mode 100644 roles/user/defaults/main.yml create mode 100644 roles/user/tasks/main.yml create mode 100644 roles/user/tasks/versioncheck.yml create mode 100644 roles/user/vars/main.yml diff --git a/README.md b/README.md index e14e49b..4ebe897 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,4 @@ # ansible_collection_users Ansible Collection to mamage Users, Groups and SSH Keys + +Work in progress! diff --git a/roles/user/README.md b/roles/user/README.md new file mode 100644 index 0000000..5aa3186 --- /dev/null +++ b/roles/user/README.md @@ -0,0 +1,6 @@ + Ansible Role Users +==================== + +Ansible role to create and update users and groups + +work in progress... diff --git a/roles/user/defaults/main.yml b/roles/user/defaults/main.yml new file mode 100644 index 0000000..7026d2c --- /dev/null +++ b/roles/user/defaults/main.yml @@ -0,0 +1,3 @@ +--- +# run simple versionscheck +submodules_versioncheck: false diff --git a/roles/user/tasks/main.yml b/roles/user/tasks/main.yml new file mode 100644 index 0000000..3be6b68 --- /dev/null +++ b/roles/user/tasks/main.yml @@ -0,0 +1,6 @@ +--- +- name: Perform optional versionscheck + ansible.builtin.include_tasks: + file: 'versioncheck.yml' + when: submodules_versioncheck|bool + diff --git a/roles/user/tasks/versioncheck.yml b/roles/user/tasks/versioncheck.yml new file mode 100644 index 0000000..7dd80c5 --- /dev/null +++ b/roles/user/tasks/versioncheck.yml @@ -0,0 +1,44 @@ +--- +# Copyright (c) 2021 L3D +# 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' + when: submodules_versioncheck | bool + +- name: Check playbook version + become: true + ansible.builtin.slurp: + src: "/etc/.ansible-version/{{ playbook_version_path }}" + register: playbook_version + when: submodules_versioncheck | bool + failed_when: false + +- name: Print remote role version # noqa: H500 + ansible.builtin.debug: + msg: "Remote role version: {{ playbook_version.content | default('Y3VycmVudGx5IG5vdCBkZXBsb3llZAo=') | b64decode | string }}" + when: submodules_versioncheck | bool + +- name: Print locale role version # noqa: H500 + ansible.builtin.debug: + msg: "Local role version: '{{ playbook_version_number | string }}'." + when: submodules_versioncheck | bool + +- 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: + - 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 + ansible.builtin.copy: + content: "{{ playbook_version_number }}" + dest: "/etc/.ansible-version/{{ playbook_version_path }}" + mode: '0644' + when: submodules_versioncheck | bool + tags: skip_ansible_lint_template-instead-of-copy diff --git a/roles/user/vars/main.yml b/roles/user/vars/main.yml new file mode 100644 index 0000000..c7bdee8 --- /dev/null +++ b/roles/user/vars/main.yml @@ -0,0 +1,3 @@ +--- +playbook_version_number: 3 +playbook_version_path: 'l3d.users.user.version'