Made both states configurable per user in pillar data Had to drop extend, for this otherwise the extend would be empty if manage is Falsetags/v0.45.0
``users.bashrc`` | ``users.bashrc`` | ||||
---------------- | ---------------- | ||||
Ensures the bashrc file exists in the users home directory | |||||
Ensures the bashrc file exists in the users home directory. Set manage_bashrc: | |||||
True in pillar per user. Defaults to False | |||||
``users.vimrc`` | ``users.vimrc`` | ||||
--------------- | --------------- | ||||
Ensures the vimrc file exists in the users home directory. | |||||
Ensures the vimrc file exists in the users home directory. Set manage_vimrc: | |||||
True in pillar per user. Defaults to False | |||||
This depends on the vim-formula to be installed | This depends on the vim-formula to be installed | ||||
password: $6$w............. | password: $6$w............. | ||||
home: /custom/buser | home: /custom/buser | ||||
createhome: True | createhome: True | ||||
manage_vimrc: False | |||||
manage_bashrc: False | |||||
expire: 16426 | expire: 16426 | ||||
sudouser: True | sudouser: True | ||||
sudo_rules: | sudo_rules: |
include: | include: | ||||
- users | - users | ||||
extend: | |||||
{% for name, user in pillar.get('users', {}).items() if user.absent is not defined or not user.absent %} | {% for name, user in pillar.get('users', {}).items() if user.absent is not defined or not user.absent %} | ||||
{%- if user == None -%} | {%- if user == None -%} | ||||
{%- set user = {} -%} | {%- set user = {} -%} | ||||
{%- endif -%} | {%- endif -%} | ||||
{%- set home = user.get('home', "/home/%s" % name) -%} | {%- set home = user.get('home', "/home/%s" % name) -%} | ||||
{%- set manage = user.get('manage_bashrc', False) -%} | |||||
{%- if 'prime_group' in user and 'name' in user['prime_group'] %} | {%- if 'prime_group' in user and 'name' in user['prime_group'] %} | ||||
{%- set user_group = user.prime_group.name -%} | {%- set user_group = user.prime_group.name -%} | ||||
{%- else -%} | {%- else -%} | ||||
{%- set user_group = name -%} | {%- set user_group = name -%} | ||||
{%- endif %} | {%- endif %} | ||||
users_{{ name }}_user: | |||||
file.managed: | |||||
- name: {{ home }}/.bashrc | |||||
- owner: {{ name }} | |||||
- group: {{ user_group }} | |||||
- mode: 644 | |||||
- source: | |||||
- salt://users/files/bashrc/{{ name }}/bashrc | |||||
- salt://users/files/bashrc/bashrc | |||||
{%- if manage -%} | |||||
users_{{ name }}_user_bashrc: | |||||
file.managed: | |||||
- name: {{ home }}/.bashrc | |||||
- user: {{ name }} | |||||
- group: {{ user_group }} | |||||
- mode: 644 | |||||
- source: | |||||
- salt://users/files/bashrc/{{ name }}/bashrc | |||||
- salt://users/files/bashrc/bashrc | |||||
{% endif %} | |||||
{% endfor %} | {% endfor %} |
- users | - users | ||||
- vim | - vim | ||||
extend: | |||||
{% for name, user in pillar.get('users', {}).items() if user.absent is not defined or not user.absent %} | {% for name, user in pillar.get('users', {}).items() if user.absent is not defined or not user.absent %} | ||||
{%- if user == None -%} | {%- if user == None -%} | ||||
{%- set user = {} -%} | {%- set user = {} -%} | ||||
{%- endif -%} | {%- endif -%} | ||||
{%- set home = user.get('home', "/home/%s" % name) -%} | {%- set home = user.get('home', "/home/%s" % name) -%} | ||||
{%- set manage = user.get('manage_vimrc', False) -%} | |||||
{%- if 'prime_group' in user and 'name' in user['prime_group'] %} | {%- if 'prime_group' in user and 'name' in user['prime_group'] %} | ||||
{%- set user_group = user.prime_group.name -%} | {%- set user_group = user.prime_group.name -%} | ||||
{%- else -%} | {%- else -%} | ||||
{%- set user_group = name -%} | {%- set user_group = name -%} | ||||
{%- endif %} | {%- endif %} | ||||
users_{{ name }}_user: | |||||
file.managed: | |||||
- name: {{ home }}/.vimrc | |||||
- owner: {{ name }} | |||||
- group: {{ user_group }} | |||||
- mode: 644 | |||||
- source: | |||||
- salt://users/files/vimrc/{{ name }}/vimrc | |||||
- salt://users/files/vimrc/vimrc | |||||
{%- if manage -%} | |||||
users_{{ name }}_user_vimrc: | |||||
file.managed: | |||||
- name: {{ home }}/.vimrc | |||||
- user: {{ name }} | |||||
- group: {{ user_group }} | |||||
- mode: 644 | |||||
- source: | |||||
- salt://users/files/vimrc/{{ name }}/vimrc | |||||
- salt://users/files/vimrc/vimrc | |||||
{% endif %} | |||||
{% endfor %} | {% endfor %} |