<p>I use ansible to send jobs / configurations to my k8s cluster via the kubectl command on my local machine. I have my inventory file setup so that each cluster is it's own group and each cluster is basically a connection to localhost .</p>

<pre><code># Inventory File
#
[east.k.example.com]
localhost              ansible_connection=local

[east2.k.example.com]
localhost              ansible_connection=local
</code></pre>

<p>Then in my group_vars directory I have a different file with the name of my group from my inventory file that holds all the different variables for each cluster.</p>

<p>I limit my runs to target only one cluster with the limit option:
<code>ansible-playbook -vv create.yaml -l east2.k.example.com --tags ingress-generate-only</code></p>

<p>The problem is that when I attempt to use variables in my templates I get variables from the other groups. I'm thinking because each group includes localhost.  </p>

<p>Is there a better way to solve this issue?  Can I set a flag so that groups only include the variables from the group_var files?</p>

<p>thanks,</p>

<p>Refactor your inventory to use distinct names:</p>

<pre><code># Inventory File
#
[east.k.example.com]
east ansible_connection=local

[east2.k.example.com]
east2 ansible_connection=local
</code></pre>

<p>This way Ansible will treat them as different hosts, thus not merging variables from different groups.</p>
