From 5abcf0ecec6a61274588f6fb10e4fcccf8357789 Mon Sep 17 00:00:00 2001 From: Tom Alexander Date: Tue, 11 Oct 2022 23:24:26 -0400 Subject: [PATCH] Fix path for zsh on Linux. --- ansible/roles/users/tasks/freebsd.yaml | 18 ++++++++++++++++++ ansible/roles/users/tasks/linux.yaml | 18 ++++++++++++++++++ ansible/roles/users/tasks/main.yaml | 21 ++++----------------- 3 files changed, 40 insertions(+), 17 deletions(-) create mode 100644 ansible/roles/users/tasks/freebsd.yaml create mode 100644 ansible/roles/users/tasks/linux.yaml diff --git a/ansible/roles/users/tasks/freebsd.yaml b/ansible/roles/users/tasks/freebsd.yaml new file mode 100644 index 0000000..3a1841f --- /dev/null +++ b/ansible/roles/users/tasks/freebsd.yaml @@ -0,0 +1,18 @@ +- name: Create user + user: + name: "{{ item.key }}" + group: "{{ item.value.group | default(item.key) }}" + groups: "{{ item.value.groups | community.general.json_query('[*].name') }}" + shell: "{{ item.value.shell | default('/usr/local/bin/zsh') }}" + uid: "{{ item.value.uid | default(omit) }}" + loop: "{{ users | dict2items | community.general.json_query('[?value.initialize==`true`]') }}" + when: item.value.groups is defined + +- name: Create user + user: + name: "{{ item.key }}" + group: "{{ item.value.group | default(item.key) }}" + shell: "{{ item.value.shell | default('/usr/local/bin/zsh') }}" + uid: "{{ item.value.uid | default(omit) }}" + loop: "{{ users | dict2items | community.general.json_query('[?value.initialize==`true`]') }}" + when: item.value.groups is not defined diff --git a/ansible/roles/users/tasks/linux.yaml b/ansible/roles/users/tasks/linux.yaml new file mode 100644 index 0000000..1e4e8d8 --- /dev/null +++ b/ansible/roles/users/tasks/linux.yaml @@ -0,0 +1,18 @@ +- name: Create user + user: + name: "{{ item.key }}" + group: "{{ item.value.group | default(item.key) }}" + groups: "{{ item.value.groups | community.general.json_query('[*].name') }}" + shell: "{{ item.value.shell | default('/usr/bin/zsh') }}" + uid: "{{ item.value.uid | default(omit) }}" + loop: "{{ users | dict2items | community.general.json_query('[?value.initialize==`true`]') }}" + when: item.value.groups is defined + +- name: Create user + user: + name: "{{ item.key }}" + group: "{{ item.value.group | default(item.key) }}" + shell: "{{ item.value.shell | default('/usr/bin/zsh') }}" + uid: "{{ item.value.uid | default(omit) }}" + loop: "{{ users | dict2items | community.general.json_query('[?value.initialize==`true`]') }}" + when: item.value.groups is not defined diff --git a/ansible/roles/users/tasks/main.yaml b/ansible/roles/users/tasks/main.yaml index ac31ae2..29ec2c4 100644 --- a/ansible/roles/users/tasks/main.yaml +++ b/ansible/roles/users/tasks/main.yaml @@ -26,21 +26,8 @@ gid: "{{ item.gid | default(omit) }}" loop: "{{ users | dict2items | community.general.json_query('[?value.initialize==`true`].value.groups') | flatten }}" -- name: Create user - user: - name: "{{ item.key }}" - group: "{{ item.value.group | default(item.key) }}" - groups: "{{ item.value.groups | community.general.json_query('[*].name') }}" - shell: "{{ item.value.shell | default('/usr/local/bin/zsh') }}" - uid: "{{ item.value.uid | default(omit) }}" - loop: "{{ users | dict2items | community.general.json_query('[?value.initialize==`true`]') }}" - when: item.value.groups is defined +- import_tasks: tasks/freebsd.yaml + when: 'os_flavor == "freebsd"' -- name: Create user - user: - name: "{{ item.key }}" - group: "{{ item.value.group | default(item.key) }}" - shell: "{{ item.value.shell | default('/usr/local/bin/zsh') }}" - uid: "{{ item.value.uid | default(omit) }}" - loop: "{{ users | dict2items | community.general.json_query('[?value.initialize==`true`]') }}" - when: item.value.groups is not defined +- import_tasks: tasks/linux.yaml + when: 'os_flavor == "linux"'