Roles Path not read from ansible.cfg

1,340 views
Skip to first unread message

jzarzoso

unread,
May 19, 2016, 1:23:36 PM5/19/16
to Ansible Project
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:

1. 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.
2. 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?

Johannes Kastl

unread,
May 23, 2016, 5:13:38 AM5/23/16
to ansible...@googlegroups.com
On 19.05.16 04:59 jzarzoso wrote:

> Under my ansible.cfg I have these settings:
>
> # environment/provisioning/ansible.cfg
> [defaults]
> hostfile = ../../controller/inventories/development
> roles_path = ../../controller/roles

Have you tried setting an absolute path here?

Is the hostfile set according to what you specify here?

> 1. 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.
> 2. 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?
>

ansible --version states some things.

Also running a playbook with 'ansible-playbook -v" states which
configuration file is used.

I would guess it is maybe vagrant that messes these things up. Did you
call ansible directly (just for testing)?

Johannes


signature.asc
Reply all
Reply to author
Forward
0 new messages