Files
ansible-shared/user/tasks/create.yml

58 lines
1.5 KiB
YAML

---
# Groups from group_vars/users.yml
- set_fact:
user_groups: "{{ users[user]['groups'] }}"
when: (user_groups is undefined or user_groups == "") and users[user]['groups'] is defined
# Using complete groups from playbook user line
- set_fact:
user_groups: '{{ user_groups }}'
when: user_groups is defined and user_groups != ""
# Appending groups to group_vars/users.yml
- set_fact:
user_groups: "{{ users[user]['groups'] + add_groups }}"
when: add_groups is defined and add_groups != "" and users[user]['groups'] is defined
# Add OS specific sudo group
- set_fact:
user_groups: "{{ user_groups + [sudogroup] }}"
when: add_sudo == true
# Set root groups
- set_fact:
user_groups: [root]
when: user == 'root'
# Home directory, use /home/username if undefined
- set_fact:
home: "/home/{{ user }}"
when: (home is undefined or home == "")
# Override home variable if user is root, only allow /root
- set_fact:
home: "/root"
when: (user == 'root')
# ------------------------------------------------------------------------------
- include_tasks: debug.yml
- include_tasks: user.yml
- include_tasks: sudo.yml
- include_tasks: ssh.yml
# ------------------------------------------------------------------------------
# Reset variable defaults for next run
# No way to "unset" a variable, so set to "" and treat "" as undefined in the facts above
- set_fact:
user_groups: ""
add_groups: ""
ssh_into: ""
home: ""
add_sudo: false
create: true
ssh_keys: false
ssh_authorize: true