I’m using vagrant and I have this structure
-
controller
-
roles
-
ansible
-
tasks
-
main.yml
-
inventories
-
playbooks
-
master.yml
-
environment
-
provisioning
-
ansible.cfg
-
vagrant.yml
-
Vagrantfile
The environment
directory is supposed to be where the vagrant machine runs. And the controller
directory is where all my Ansible scripts are found.
Under my ansible.cfg I have these settings:
environment/provisioning/ansible.cfg
[defaults]
hostfile = …/…/controller/inventories/development
roles_path = …/…/controller/roles
environment
However, when I try to run my Vagrant. It doesn’t seem to detect where the external roles path were. I used to have the roles inside my provisioning
directory but decided to transfer it under the controller directory because it is also used in that directory where all my Ansible playbooks are… I can ran using master.yml with the ansible role without problem.
2 things:
- The error is
ERROR! the role 'ansible' was not found in /environment/provisioning/roles
Looks like it’s still looking for the default path without taking my ansible.cfg into consideration. - How do I print out the default configs in the terminal and debug the values if what I put in the ansible.cfg has been read correctly?