# Special shell for special users on special host %)

**URL:** <https://forum.ansible.com/t/special-shell-for-special-users-on-special-host/14870>\
**Category:** Ansible Project\
**Created:** [March 27, 2014, 4:30pm UTC](https://forum.ansible.com/t/special-shell-for-special-users-on-special-host/14870 "2014-03-27T16:30:46Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![Petr\_Sukharev](https://avatars.discourse-cdn.com/v4/letter/p/3ab097/32.png) [@Petr\_Sukharev](https://forum.ansible.com/u/Petr_Sukharev)\
**Post date:** [March 27, 2014, 4:30pm UTC](https://forum.ansible.com/t/special-shell-for-special-users-on-special-host/14870/1 "2014-03-27T16:30:46Z")

</div>

Hello!  
I find some issue and cant resolve it by myself.  
My scenario:  
3 users, 4 hosts  
I add information about users in file vars/all (like login, uid, comment, group and password) and deploy users via role with variable (user logins) into all hosts

==========================hosts file=============  
[group1]  
serv1  
[group2]  
serv2  
serv3  
==================playbook=================

- hosts: all  
vars:  
ssh\_users:

- “{{user1}}”  
roles:

- users\_add

- hosts: group1  
vars:  
ssh\_users:

- “{{user2}}”

- “{{user3}}”  
roles:

- users\_add

- hosts: group2  
vars:  
ssh\_users:

- “{{user2}}”  
roles:

- users\_add

============= vars/all====================  
user1:

- { user: ‘user1’, uid: ‘11111’ }  
user2:
- { user: ‘user2’, uid: ‘11112’ }  
user3:
- { user: ‘user3’, uid: ‘11113’ }  
============= role file =====================
- name: Add ssh user  
user: name={{ item.user }} uid= {{ item.uid}}  
with\_items: “ssh\_users”

---

<div class="post-metadata">

**Author:** ![Brice\_Burgess](https://avatars.discourse-cdn.com/v4/letter/b/d2c977/32.png) [@Brice\_Burgess](https://forum.ansible.com/u/Brice_Burgess)\
**Post date:** [March 27, 2014, 5:19pm UTC](https://forum.ansible.com/t/special-shell-for-special-users-on-special-host/14870/2 "2014-03-27T17:19:32Z")

</div>

Petr,

I’ll augment your example with this behavior. Since you’re adding “user 1” by it’s own when matching all hosts; it kind of takes care of the requirement to avoid changing user 1’s shell. See below;

`

---

<div class="post-metadata">

**Author:** ![Michael\_DeHaan1](https://avatars.discourse-cdn.com/v4/letter/m/5e9695/32.png) [@Michael\_DeHaan1](https://forum.ansible.com/u/Michael_DeHaan1)\
**Post date:** [March 27, 2014, 6:03pm UTC](https://forum.ansible.com/t/special-shell-for-special-users-on-special-host/14870/3 "2014-03-27T18:03:23Z")

</div>

Hi folks,

When posting YAML it greatly helps if things are well formatted.

If you are posting in an mail editor that doesn’t allow proper whitespace, I’d recommend using something like [gist.github.com](http://gist.github.com).

Otherwise it’s pretty hard to read the above.

Thanks!

---

<div class="post-metadata">

**Author:** ![Petr\_Sukharev](https://avatars.discourse-cdn.com/v4/letter/p/3ab097/32.png) [@Petr\_Sukharev](https://forum.ansible.com/u/Petr_Sukharev)\
**Post date:** [March 31, 2014, 5:03pm UTC](https://forum.ansible.com/t/special-shell-for-special-users-on-special-host/14870/4 "2014-03-31T17:03:01Z")

</div>

Hi, Bruce!  
Yes, it is exactly what i am looking for! Working like charm!

Michael, i will use this source in next time, thanks

Thanks so much!
