Skip to content

Instantly share code, notes, and snippets.

Created September 12, 2016 03:16
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save anonymous/f837e05914e742339f254099449bae32 to your computer and use it in GitHub Desktop.
Save anonymous/f837e05914e742339f254099449bae32 to your computer and use it in GitHub Desktop.
{% from "users/map.jinja" import users with context %}
include:
- users
{% for name, user in pillar.get('users', {}).items() if user.absent is not defined or not user.absent %}
{%- set current = salt.user.info(name) -%}
{%- if user == None -%}
{%- set user = {} -%}
{%- endif -%}
{%- set home = user.get('home', current.get('home', "/home/%s" % name)) -%}
{%- set jail = user.get('sftp_jail_home', False) -%}
{%- set sftp_home = user.get('sftp_home', "/uploads") -%}
{%- if 'prime_group' in user and 'name' in user['prime_group'] %}
{%- set user_group = user.prime_group.name -%}
{%- else -%}
{%- set user_group = name -%}
{%- endif %}
{%- if jail -%}
users_{{ name }}_user_sftp_jail:
file.directory:
- name: {{ home }}
- user: root
- group: root
- mode: 755
#- require:
# - sls: users
users_{{ name }}_user_sftp_home:
file.directory:
- name: {{ home }}/{{ sftp_home }}
- user: {{ user }}
- group: {{ user_group }}
- mode: 700
#- require:
# - users_{{ name }}_user_sftp_jail
{% endif %}
{% endfor %}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment