|
- {% from "users/map.jinja" import users with context -%}
-
- include:
- - users
-
- {%- for username, user in pillar.get('users', {}).items() if (user.absent is not defined or not user.absent) -%}
- {%- set user_files = pillar.get('users:' + username + ':user_files', {'enabled': False}) -%}
-
- {%- if user_files.enabled -%}
- {%- set user_group = pillar.get(('users:' + username + ':prime_group:name'), username) -%}
-
- {%- if user_files.source is defined -%}
- {%- if user_files.source.startswith('salt://') -%}
- {%- set file_source = user_files.source -%}
- {%- else -%}
- {%- set file_source = ('salt://' + user.user_files.source) -%}
- {%- endif -%}
- {%- else -%}
- {%- set file_source = ('salt://users/files/user/' + username) -%}
- {%- endif -%}
-
- users_userfiles_{{ username }}_recursive:
- file.recurse:
- - name: {{ user.home }}
- - source: {{ file_source }}
- - user: {{ username }}
- - group: {{ user_group }}
- - clean: False
- - include_empty: True
- - keep_symlinks: True
- - require:
- - user: users_{{ username }}_user
- - file: users_{{ username }}_user
-
- {% endif -%}
- {% endfor -%}
|