From 4bdc1797e1e3c173ddf3bd60141679aba76d74f7 Mon Sep 17 00:00:00 2001 From: transcaffeine Date: Sun, 12 Jan 2025 10:24:03 +0100 Subject: [PATCH] feat: add user role --- roles/user/README.md | 16 ++++++++++++++++ roles/user/defaults/main.yml | 2 ++ roles/user/tasks/configure-user.yml | 5 +++++ roles/user/tasks/main.yml | 8 ++++++++ 4 files changed, 31 insertions(+) create mode 100644 roles/user/README.md create mode 100644 roles/user/defaults/main.yml create mode 100644 roles/user/tasks/configure-user.yml create mode 100644 roles/user/tasks/main.yml diff --git a/roles/user/README.md b/roles/user/README.md new file mode 100644 index 0000000..550fbb1 --- /dev/null +++ b/roles/user/README.md @@ -0,0 +1,16 @@ +# `finallycoffee.base.user` ansible role + +## Examples +```yaml +- hosts: all + roles: + - role: finallycoffee.base.user + vars: + users: + - name: root + - name: alice + - name: bob + state: present + - name: eve + state: absent +``` diff --git a/roles/user/defaults/main.yml b/roles/user/defaults/main.yml new file mode 100644 index 0000000..a4ae6ba --- /dev/null +++ b/roles/user/defaults/main.yml @@ -0,0 +1,2 @@ +--- +users: [] diff --git a/roles/user/tasks/configure-user.yml b/roles/user/tasks/configure-user.yml new file mode 100644 index 0000000..0b54d37 --- /dev/null +++ b/roles/user/tasks/configure-user.yml @@ -0,0 +1,5 @@ +--- +- name: Ensure user is {{ user.state }} + ansible.builtin.user: + name: "{{ user.name }}" + state: "{{ user.state }}" diff --git a/roles/user/tasks/main.yml b/roles/user/tasks/main.yml new file mode 100644 index 0000000..ee87120 --- /dev/null +++ b/roles/user/tasks/main.yml @@ -0,0 +1,8 @@ +--- +- name: Ensure users are configured + ansible.builtin.include_tasks: + file: "configure-user.yml" + loop: "{{ users }}" + loop_control: + loop_var: user + label: "{{ user.name }}"