We have two SCM repos for our Ansible code-base (1)Core and (2)Platform. 
The Core SCM contains application specific playbooks (ex: nginx, fluentd 
etc) while the Platform SCM contains basic platform specific roles (ex: 
ntp, apt etc). Our entry-point is a playbook from within Core. The Core 
playbook would then first include 'roles' from within the Platform SCM (to 
build the server/OS to a specific standard) and then do the app config. Our 
directory structure on an 'Ansible' workstation is as below

|----- Core
|      |--- Nginx
|           |--- templates
|           |--- meta
|           |--- tasks
|           |--- defaults
|           |--- nginx.yml
|      |--- Fluentd
|           |--- templates
|           |--- meta
|           |--- tasks
|           |--- defaults
|           |--- fluentd.yml
|      |--- Platform -> ../Platform
|      |--- ansible.cfg
|----- Platform
|      |--- ntp
|      |--- sysstat
|      |--- sudo
|      |--- platform
|           |--- server
|                |--- meta
|                     |-- main.yml


As you can see we symlink Platform -> Platform within core. 

A sample playbook(fluentd.yml) from within Core would look like

- name: fluentd

  hosts: fluentd-server-nodes

  sudo: true

  vars:

     x:y
     p:q

  roles:
    - role: Platform/platform/server

    - role: Fluentd


Also, we have ansible.cfg that sets the `roles_path = .` under Core. This 
way when we run play from the Ansible Workstation, it is able to find the 
roles both in Core and Platform.

Not sure how we achieve this in Tower ? 

We can't seem to see how we can checkout an SCM under a specific location 
(we can change the base path but not the end checkout path). 

Also does Tower support ansible.cfg ?

Thanks.

-- 




*This e-mail and any attachments are confidential and intended solely for 
the use of the addressee only. If you have received this message in error, 
you must not copy, distribute or disclose the contents; please notify the 
sender immediately and delete the message.This message is attributed to the 
sender and may not necessarily reflect the view of Travis Perkins Trading 
Company Limited, 733503, Lodge Way House, Lodge Way, Harlestone Road, 
Northampton, NN5 7UG or its parent company Travis Perkins plc (Registered 
in England No. 824821; Lodge Way House, Lodge Way, Harlestone Road, 
Northampton, NN5 7UG; VAT number 408556737) and any of its subsidiaries. 
Agreements binding Travis Perkins Trading Company Limited may not be 
concluded by means of e-mail communication.E-mail transmissions are not 
secure and Travis Perkins Trading accepts no responsibility for changes 
made to this message after it was sent. Whilst steps have been taken to 
ensure that this message is virus free, Travis Perkins Trading accepts no 
liability for infection and recommends that you scan this e-mail and any 
attachments.*

-- 
You received this message because you are subscribed to the Google Groups 
"Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/bb3ea2df-c66c-41ab-9d1c-20500e812908%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to