jinja2 - Ansible global variable in template -


i having trouble getting jinja2 template ansible able read global variable set in group_vars/all.yml.

** question **: how can j2 template able see global variables set within group_vars/all.yml? understanding, group_vars/all should apply groups.

my ansible project follows:

group_vars/   all.yml  playbooks/   roles/     some-role/       tasks/         main.yml       templates/         template.conf.j2   my-playbook.yml 

tasks/main.yml

--- - name:   template:     src: template.conf.j2     dest: ... 

templates/template.conf.j2

the global variable is: {{ globalvariable }} 

group_vars/all.yml

globalvariable: 

when run playbook, error when trying write template.

ansibleundefinedvariable: 1 or more undefined variables: 'globalvariable' undefined 

place group_vars folder inside playbooks folder , should solve problem.

something that:

playbooks/   group_vars/     all.yml   roles/     some-role/       tasks/         main.yml       templates/         template.conf.j2   my-playbook.yml 

then no matter executing ansible-playbook -i hosts my-playbook.yml command (outside of playbook or inside) should work

here little more explanation reference source-code

   """     loads variables group_vars/<groupname> , host_vars/<hostname> in directories parallel     inventory base directory or in same directory playbook.  variables in playbook     dir win on inventory dir if files in both.     """ 

Comments