Explicitly create user
This commit is contained in:
@@ -5,7 +5,6 @@ i3bar_icon_padding: ""
|
|||||||
|
|
||||||
users:
|
users:
|
||||||
- name: hannes-work
|
- name: hannes-work
|
||||||
group: hannes-work
|
|
||||||
vt: 1
|
vt: 1
|
||||||
firefox_profiles:
|
firefox_profiles:
|
||||||
default:
|
default:
|
||||||
@@ -31,7 +30,6 @@ users:
|
|||||||
repositories: []
|
repositories: []
|
||||||
|
|
||||||
- name: hannes-private
|
- name: hannes-private
|
||||||
group: hannes-private
|
|
||||||
vt: 2
|
vt: 2
|
||||||
firefox_profiles:
|
firefox_profiles:
|
||||||
default:
|
default:
|
||||||
|
|||||||
56
user.yml
56
user.yml
@@ -1,18 +1,3 @@
|
|||||||
- name: configure sudoers
|
|
||||||
lineinfile:
|
|
||||||
path: /etc/sudoers
|
|
||||||
line: "{{ user.name }} ALL=(ALL) NOPASSWD:ALL"
|
|
||||||
regexp: "^{{ user.name }}\\s+"
|
|
||||||
become: true
|
|
||||||
become_user: root
|
|
||||||
|
|
||||||
- name: set shell
|
|
||||||
user:
|
|
||||||
name: "{{ user.name }}"
|
|
||||||
shell: /usr/bin/zsh
|
|
||||||
become: true
|
|
||||||
become_user: root
|
|
||||||
|
|
||||||
- set_fact:
|
- set_fact:
|
||||||
user_groups:
|
user_groups:
|
||||||
- libvirt
|
- libvirt
|
||||||
@@ -25,21 +10,30 @@
|
|||||||
- kvm
|
- kvm
|
||||||
tags: [always]
|
tags: [always]
|
||||||
|
|
||||||
- set_fact:
|
|
||||||
user_group_name: "{{ user.group|default(user.name) }}"
|
|
||||||
tags: [always]
|
|
||||||
|
|
||||||
- name: create user group
|
- name: create user group
|
||||||
group:
|
group:
|
||||||
name: "{{ user_group_name }}"
|
name: "{{ user.name }}"
|
||||||
state: present
|
state: present
|
||||||
become: true
|
become: true
|
||||||
become_user: root
|
become_user: root
|
||||||
|
|
||||||
- name: set groups
|
- name: create user
|
||||||
user:
|
user:
|
||||||
name: "{{ user.name }}"
|
name: "{{ user.name }}"
|
||||||
groups: "{{ [user_group_name, 'dotfiles'] + user_groups }}"
|
state: present
|
||||||
|
home: "/home/{{ user.name }}"
|
||||||
|
create_home: true
|
||||||
|
groups: "{{ [user.name, 'dotfiles'] + user_groups }}"
|
||||||
|
shell: /usr/bin/zsh
|
||||||
|
|
||||||
|
become: true
|
||||||
|
become_user: root
|
||||||
|
|
||||||
|
- name: configure sudoers
|
||||||
|
lineinfile:
|
||||||
|
path: /etc/sudoers
|
||||||
|
line: "{{ user.name }} ALL=(ALL) NOPASSWD:ALL"
|
||||||
|
regexp: "^{{ user.name }}\\s+"
|
||||||
become: true
|
become: true
|
||||||
become_user: root
|
become_user: root
|
||||||
|
|
||||||
@@ -48,7 +42,7 @@
|
|||||||
state: directory
|
state: directory
|
||||||
path: "{{ item }}"
|
path: "{{ item }}"
|
||||||
owner: "{{ user.name }}"
|
owner: "{{ user.name }}"
|
||||||
group: "{{ user_group_name }}"
|
group: "{{ user.name }}"
|
||||||
loop:
|
loop:
|
||||||
- "/home/{{ user.name }}/.config/"
|
- "/home/{{ user.name }}/.config/"
|
||||||
- "/home/{{ user.name }}/.config/systemd/"
|
- "/home/{{ user.name }}/.config/systemd/"
|
||||||
@@ -140,7 +134,7 @@
|
|||||||
force: true
|
force: true
|
||||||
follow: false
|
follow: false
|
||||||
owner: "{{ user.name }}"
|
owner: "{{ user.name }}"
|
||||||
group: "{{ user_group_name }}"
|
group: "{{ user.name }}"
|
||||||
path: "/home/{{ user.name }}/.dotfiles"
|
path: "/home/{{ user.name }}/.dotfiles"
|
||||||
src: "{{ playbook_dir }}"
|
src: "{{ playbook_dir }}"
|
||||||
become: true
|
become: true
|
||||||
@@ -173,7 +167,7 @@
|
|||||||
state: directory
|
state: directory
|
||||||
path: "{{ (['/home', user.name, item.to]|join('/')) | dirname }}"
|
path: "{{ (['/home', user.name, item.to]|join('/')) | dirname }}"
|
||||||
owner: "{{ user.name }}"
|
owner: "{{ user.name }}"
|
||||||
group: "{{ user_group_name }}"
|
group: "{{ user.name }}"
|
||||||
with_items: "{{ dotfiles }}"
|
with_items: "{{ dotfiles }}"
|
||||||
become: true
|
become: true
|
||||||
become_user: root
|
become_user: root
|
||||||
@@ -188,7 +182,7 @@
|
|||||||
path: "/home/{{ user.name }}/{{ item.to }}"
|
path: "/home/{{ user.name }}/{{ item.to }}"
|
||||||
src: /var/lib/dotfiles/{{ item.from }}
|
src: /var/lib/dotfiles/{{ item.from }}
|
||||||
owner: "{{ user.name }}"
|
owner: "{{ user.name }}"
|
||||||
group: "{{ user_group_name }}"
|
group: "{{ user.name }}"
|
||||||
when: not item.template|default(false)
|
when: not item.template|default(false)
|
||||||
with_items: "{{ dotfiles }}"
|
with_items: "{{ dotfiles }}"
|
||||||
become: true
|
become: true
|
||||||
@@ -223,7 +217,7 @@
|
|||||||
src: /var/lib/dotfiles/{{ item.from }}.j2
|
src: /var/lib/dotfiles/{{ item.from }}.j2
|
||||||
dest: "/home/{{ user.name }}/{{ item.to }}"
|
dest: "/home/{{ user.name }}/{{ item.to }}"
|
||||||
owner: "{{ user.name }}"
|
owner: "{{ user.name }}"
|
||||||
group: "{{ user_group_name }}"
|
group: "{{ user.name }}"
|
||||||
force: true
|
force: true
|
||||||
become: true
|
become: true
|
||||||
become_user: root
|
become_user: root
|
||||||
@@ -267,7 +261,7 @@
|
|||||||
path: "/home/{{ user.name }}/bin"
|
path: "/home/{{ user.name }}/bin"
|
||||||
src: /var/lib/dotfiles/bin
|
src: /var/lib/dotfiles/bin
|
||||||
owner: "{{ user.name }}"
|
owner: "{{ user.name }}"
|
||||||
group: "{{ user_group_name }}"
|
group: "{{ user.name }}"
|
||||||
tags:
|
tags:
|
||||||
- dotfiles
|
- dotfiles
|
||||||
|
|
||||||
@@ -288,7 +282,7 @@
|
|||||||
src: contrib/vim-plug/plug.vim
|
src: contrib/vim-plug/plug.vim
|
||||||
dest: ~/.local/share/nvim/site/autoload/plug.vim
|
dest: ~/.local/share/nvim/site/autoload/plug.vim
|
||||||
owner: "{{ user.name }}"
|
owner: "{{ user.name }}"
|
||||||
group: "{{ user_group_name }}"
|
group: "{{ user.name }}"
|
||||||
mode: "0644"
|
mode: "0644"
|
||||||
|
|
||||||
- name: install vim plugins
|
- name: install vim plugins
|
||||||
@@ -415,7 +409,7 @@
|
|||||||
path: "/home/{{ user.name }}/.config/systemd/user/{{ item | basename }}"
|
path: "/home/{{ user.name }}/.config/systemd/user/{{ item | basename }}"
|
||||||
src: "{{ item }}"
|
src: "{{ item }}"
|
||||||
owner: "{{ user.name }}"
|
owner: "{{ user.name }}"
|
||||||
group: "{{ user_group_name }}"
|
group: "{{ user.name }}"
|
||||||
with_fileglob: /var/lib/dotfiles/autostart/services/*
|
with_fileglob: /var/lib/dotfiles/autostart/services/*
|
||||||
|
|
||||||
- name: get state of autostart.target
|
- name: get state of autostart.target
|
||||||
@@ -436,7 +430,7 @@
|
|||||||
src: ./autostart/autostart.target.j2
|
src: ./autostart/autostart.target.j2
|
||||||
dest: "/home/{{ user.name }}/.config/systemd/user/autostart.target"
|
dest: "/home/{{ user.name }}/.config/systemd/user/autostart.target"
|
||||||
owner: "{{ user.name }}"
|
owner: "{{ user.name }}"
|
||||||
group: "{{ user_group_name }}"
|
group: "{{ user.name }}"
|
||||||
force: true
|
force: true
|
||||||
follow: false
|
follow: false
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user