From 0e1791732d4f6b5cfa8f2a9ffcf74fd06ff2aeda Mon Sep 17 00:00:00 2001
From: Anton Vakhrushev <anwinged@ya.ru>
Date: Wed, 26 Jun 2019 20:16:33 +0300
Subject: [PATCH] =?UTF-8?q?=D0=94=D0=BE=D0=B1=D0=B0=D0=B2=D0=BB=D0=B5?=
 =?UTF-8?q?=D0=BD=D1=8B=20=D0=B4=D0=BE=D0=BF=D0=BE=D0=BB=D0=BD=D0=B8=D1=82?=
 =?UTF-8?q?=D0=B5=D0=BB=D1=8C=D0=BD=D1=8B=D0=B5=20=D0=BF=D0=B5=D1=80=D0=B5?=
 =?UTF-8?q?=D0=BC=D0=B5=D0=BD=D0=BD=D1=8B=D0=B5=20=D0=BE=D0=BA=D1=80=D1=83?=
 =?UTF-8?q?=D0=B6=D0=B5=D0=BD=D0=B8=D1=8F?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 ansible/roles/owner/defaults/main.yml |  2 +-
 ansible/roles/owner/tasks/main.yml    | 12 +++++++++++-
 ansible/roles/owner/templates/env.j2  |  4 ++--
 3 files changed, 14 insertions(+), 4 deletions(-)

diff --git a/ansible/roles/owner/defaults/main.yml b/ansible/roles/owner/defaults/main.yml
index 7240a6b..863b77e 100644
--- a/ansible/roles/owner/defaults/main.yml
+++ b/ansible/roles/owner/defaults/main.yml
@@ -2,4 +2,4 @@
 owner_name: ''
 owner_group: '{{ owner_name }}'
 owner_ssh_keys: []
-owner_envs: {}
+owner_env: {}
diff --git a/ansible/roles/owner/tasks/main.yml b/ansible/roles/owner/tasks/main.yml
index 3cd6156..5f35236 100644
--- a/ansible/roles/owner/tasks/main.yml
+++ b/ansible/roles/owner/tasks/main.yml
@@ -15,6 +15,7 @@
     group: '{{ owner_group }}'
     groups: '{{ owner_extra_groups }}'
     shell: /bin/bash
+  register: uc_result
 
 - name: 'Set up user ssh keys for user "{{ owner_name }}".'
   authorized_key:
@@ -24,6 +25,15 @@
   with_items: '{{ owner_ssh_keys }}'
   when: owner_ssh_keys
 
+- name: 'Prepare env variables.'
+  set_fact:
+    env_dict: '{{ owner_env | combine({
+      "CURRENT_UID": uc_result.uid | default(owner_name),
+      "CURRENT_GID": uc_result.group | default(owner_group),
+    }) }}'
+  tags:
+    - env
+
 - name: 'Set up environment variables for user "{{ owner_name }}".'
   template:
     src: env.j2
@@ -38,7 +48,7 @@
     path: '/home/{{ owner_name }}/.bashrc'
     regexp: '^export {{ item.key }}='
     state: absent
-  with_dict: '{{ owner_env }}'
+  with_dict: '{{ env_dict }}'
   tags:
     - env
 
diff --git a/ansible/roles/owner/templates/env.j2 b/ansible/roles/owner/templates/env.j2
index ad19075..4749688 100644
--- a/ansible/roles/owner/templates/env.j2
+++ b/ansible/roles/owner/templates/env.j2
@@ -1,3 +1,3 @@
-{% for name, value in owner_env.iteritems() %}
-{{ name }}={{ value }}
+{% for name in env_dict.iterkeys() | sort %}
+{{ name }}={{ env_dict[name] }}
 {% endfor %}