Bez popisu

lib.jinja 1.0KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. {% macro user_present(username, details, extra_groups=None) %}
  2. user_{{ username }}:
  3. group.present:
  4. - name: {{ username }}
  5. user.present:
  6. - name: {{ username }}
  7. - fullname: {{ details.full_name }}
  8. - password: {{ details.password }}
  9. - shell: {{ details.shell }}
  10. {% if extra_groups %}
  11. - groups:
  12. {% for group in extra_groups %}
  13. - {{ group }}
  14. {% endfor %}
  15. {% endif %}
  16. - gid_from_name: True
  17. - createhome: True
  18. - require:
  19. - group: {{ username }}
  20. ssh_key_{{ username }}:
  21. ssh_auth.present:
  22. - user: {{ username }}
  23. - names:
  24. {% for ssh_key in details['ssh_keys'] %}
  25. - {{ ssh_key }}
  26. {% endfor %}
  27. gitenv_{{ username }}:
  28. file.managed:
  29. - name: ~{{ username }}/.gitenv
  30. - contents: |
  31. {
  32. "GIT_AUTHOR_NAME": "{{ details.full_name }}",
  33. "GIT_AUTHOR_EMAIL": "{{ details.email_address }}",
  34. "GIT_COMMITTER_NAME": "{{ details.full_name }}",
  35. "GIT_COMMITTER_EMAIL": "{{ details.email_address }}"
  36. }
  37. {% endmacro %}