Initial commit

This commit is contained in:
nd 2019-04-09 18:24:40 +02:00
commit c6929ae9f6
No known key found for this signature in database
GPG key ID: 21B5CD4DEE3670E9
4 changed files with 51 additions and 0 deletions

3
defaults/main.yml Normal file
View file

@ -0,0 +1,3 @@
accounts:
users: {}
groups: {}

15
tasks/groups.yml Normal file
View file

@ -0,0 +1,15 @@
- set_fact:
defaultgroup:
system: true
state: present
gid: "{{ omit }}"
- set_fact:
group: "{{ defaultgroup|combine(item.value|d({}), {'name': item.key} ) }}"
- name: create groupss
group:
name: "{{ group.name }}"
system: "{{ group.system }}"
state: "{{ group.state }}"
gid: "{{ group.gid|d(omit) }}"

9
tasks/main.yml Normal file
View file

@ -0,0 +1,9 @@
- name: handle groups
with_dict: "{{ accounts.groups }}"
include_tasks:
file: groups.yml
- name: handle users
with_dict: "{{ accounts.users }}"
include_tasks:
file: users.yml

24
tasks/users.yml Normal file
View file

@ -0,0 +1,24 @@
- set_fact:
defaultuser:
genssh: false
group: ~
groups: []
home: "{{ ('/var/lib/'+item.key) if (item.value.system|d(True)) else ('/home/'+item.key) }}"
system: true
state: present
uid: "{{ omit }}"
- set_fact:
user: "{{ defaultuser|combine(item.value|d({}), {'name': item.key} ) }}"
- name: create users
user:
name: "{{ user.name }}"
generate_ssh_key: "{{ user.genssh }}"
ssh_key_type: ed25519
group: "{{ user.group }}"
groups: "{{ user.groups }}"
home: "{{ (user.home) }}"
system: "{{ user.system }}"
state: "{{ user.state }}"
uid: "{{ user.uid|d(omit) }}"