# optimize playbook

**URL:** <https://forum.ansible.com/t/optimize-playbook/15121>\
**Category:** Ansible Project\
**Tags:** galaxy-ng\
**Created:** [April 30, 2014, 1:56pm UTC](https://forum.ansible.com/t/optimize-playbook/15121 "2014-04-30T13:56:01Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Alexey\_Lesovsky](https://avatars.discourse-cdn.com/v4/letter/a/ed8c4c/32.png) [@Alexey\_Lesovsky](https://forum.ansible.com/u/Alexey_Lesovsky)\
**Post date:** [April 30, 2014, 1:56pm UTC](https://forum.ansible.com/t/optimize-playbook/15121/1 "2014-04-30T13:56:01Z")

</div>

Hi all!  
I write role for Ansible Galaxy, and have a little problem. I have 2 host groups and need execute different tasks for this groups. At this moment I doing it with the following configuration, this is the root playbook.yml

`

- hosts: all  
sudo: yes  
sudo\_user: root  
vars\_files:

- ‘defaults/main.yml’ # main configuration

- ‘defaults/repo.yml’ # repositories which must not be changed in normal case  
tasks:

- include: ‘tasks/install.yml’

- hosts: streaming-master  
sudo: yes  
sudo\_user: root  
vars\_files:

- ‘defaults/main.yml’

- ‘defaults/repo.yml’  
tasks:

- include: ‘tasks/configure-master.yml’

- include: ‘tasks/users.yml’

- include: ‘tasks/databases.yml’

- hosts: streaming-slaves  
sudo: yes  
sudo\_user: root  
vars\_files:

- ‘defaults/main.yml’

- ‘defaults/repo.yml’  
tasks:

- include: ‘tasks/configure-slaves.yml’  
`

Аs you can see, there are many duplicate information (sudo/sudo\_user/vars\_files), how to avoid it?

---

<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:** [April 30, 2014, 4:56pm UTC](https://forum.ansible.com/t/optimize-playbook/15121/2 "2014-04-30T16:56:31Z")

</div>

Put in in ansible.cfg file, with contain default values for ansible. Like remote user or sudo. And many others 🙂
