# Add Host to Group dynamically (or better: design question regarding a hacky solution)

**URL:** <https://forum.ansible.com/t/add-host-to-group-dynamically-or-better-design-question-regarding-a-hacky-solution/28951>\
**Category:** Ansible Project\
**Created:** [November 6, 2018, 9:32am UTC](https://forum.ansible.com/t/add-host-to-group-dynamically-or-better-design-question-regarding-a-hacky-solution/28951 "2018-11-06T09:32:53Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![Daniel1](https://avatars.discourse-cdn.com/v4/letter/d/b19c9b/32.png) [@Daniel1](https://forum.ansible.com/u/Daniel1)\
**Post date:** [November 6, 2018, 9:32am UTC](https://forum.ansible.com/t/add-host-to-group-dynamically-or-better-design-question-regarding-a-hacky-solution/28951/1 "2018-11-06T09:32:53Z")

</div>

Hi everyone,

I have a playbook that installs a web application on multiple hosts (one host per customer).

The following variable hierarchy would be perfect for my environment:

- common.yml

- $environment

- $environment-$version.yml (because environment configuration can change with each new version)

- fqdn.yml

In my playbook I have solved this via host\_vars, group\_vars and include\_vars:

./group\_vars  
./group\_vars/devel.yml

./group\_vars/test.yml

./group\_vars/production.yml

./host\_vars

./host\_vars/customer1.yml

./host\_vars/customer2.yml

./host\_vars/customer3.yml

```auto
- fail:
    msg: "app_version is not defined (application not yet deployed?)."
  when: app_version is not defined

- name: Include common vars
  include_vars:
    file: "common.yml"

- name: Include system type specific vars
  include_vars:
    file: "{{ app_version }}/{{ app_environment }}.yml"

```

```auto

```
