I've tried that but I can't seem to get it to work. Here are the paths I've 
tried so far:
common/templates/iptables.j2
../common/templates/iptables.j2
../../common/templates/iptables.j2
../../../common/templates/iptables.j2
/absolute/path/to/common/templates/iptables.j2

I get the same error message for all of them. 

On Tuesday, October 28, 2014 10:13:37 AM UTC-4, Brian Coca wrote:
>
> assuming all roles are in the same directory, you could do relative paths 
> to other roles' template directory.
>
> On Tue, Oct 28, 2014 at 6:34 AM, Joe Adams <[email protected] 
> <javascript:>> wrote:
>
>> So is there no way of including or extending templates from other roles? 
>> It would seem that this is a really powerful feature of the templating 
>> language that would make many configurations more versatile and powerful. 
>> Is what I'm trying to do not possible with Ansible?
>>
>> On Monday, October 27, 2014 4:25:33 PM UTC-4, Brian Coca wrote:
>>>
>>> It looks for the file in the "base" directory or in the templates/ 
>>> subdirectory. The "base" directory is the directory of the current play or 
>>> role.
>>>
>>> On Mon, Oct 27, 2014 at 6:31 AM, Joe Adams <[email protected]> wrote:
>>>
>>>> Is there somewhere that documents what paths are searched when inside a 
>>>> template or in include calls from within a template? I can't find much 
>>>> information about this at all. 
>>>>
>>>> On Wednesday, October 22, 2014 9:22:05 AM UTC-4, Joe Adams wrote:
>>>>>
>>>>> I originally though it might be permissions, but both templates are 
>>>>> 0664 with my account being owner. 
>>>>>
>>>>> I'm using ansible version 1.7.2
>>>>>
>>>>> On Tuesday, October 21, 2014 11:51:08 PM UTC-4, Michael DeHaan wrote:
>>>>>>
>>>>>> For starters, what ansible version are you using?
>>>>>>
>>>>>> On Tue, Oct 21, 2014 at 6:02 PM, John Favorite <[email protected]> 
>>>>>> wrote:
>>>>>>
>>>>>>> permissions issue?
>>>>>>>
>>>>>>> On Tue, Oct 21, 2014 at 5:35 PM, Joe Adams <[email protected]> 
>>>>>>> wrote:
>>>>>>>
>>>>>>>> I tried asking the IRC channel but I didn't get any responses so I 
>>>>>>>> figure that the mailing list might be better suited to this question. 
>>>>>>>> I'm 
>>>>>>>> trying to build an extensible iptables template. All of my hosts will 
>>>>>>>> need 
>>>>>>>> some amount of custom rules to be added so I feel that extending a 
>>>>>>>> template 
>>>>>>>> would be a great way to achieve this. My base template looks like this:
>>>>>>>>
>>>>>>>> #roles/common/templates/iptables.j2
>>>>>>>> {% block nat %}
>>>>>>>> {% endblock nat %}
>>>>>>>> *filter
>>>>>>>> :INPUT ACCEPT [0:0]
>>>>>>>> :FORWARD ACCEPT [0:0]
>>>>>>>> :OUTPUT ACCEPT [0:0]
>>>>>>>> -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
>>>>>>>> -A INPUT -p icmp -j ACCEPT
>>>>>>>> -A INPUT -i lo -j ACCEPT
>>>>>>>> # SSH
>>>>>>>> -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
>>>>>>>> {% block role_rules %}
>>>>>>>> {% endblock role_rules %}
>>>>>>>> # Drop All
>>>>>>>> -A INPUT -j REJECT --reject-with icmp-host-prohibited
>>>>>>>> -A FORWARD -j REJECT --reject-with icmp-host-prohibited
>>>>>>>> COMMIT
>>>>>>>>
>>>>>>>>
>>>>>>>> So then I created a template for another host to add it's role 
>>>>>>>> specific information in. This template looks like this:
>>>>>>>>
>>>>>>>> {% extends "roles/common/templates/iptables.j2" %}
>>>>>>>> {% block role_rules %}
>>>>>>>> -A INPUT -m state --state NEW -m tcp -p tcp --dport 9000 -j ACCEPT
>>>>>>>> {% endblock role_rules %}
>>>>>>>>
>>>>>>>> This was working until I moved my playbooks into a folder to 
>>>>>>>> organize them. Now I can't seem to fix the path to make the template 
>>>>>>>> extends 
>>>>>>>> tag work. I even tried an absolute path. 
>>>>>>>> Here's my directory structure:
>>>>>>>>
>>>>>>>> ansible/
>>>>>>>>     ansible.cfg
>>>>>>>>     hosts/
>>>>>>>>         dev
>>>>>>>>         qa
>>>>>>>>         groupvars/
>>>>>>>>             dev
>>>>>>>>             qa
>>>>>>>>     playbooks/
>>>>>>>>         roles/
>>>>>>>>             common.yml
>>>>>>>>             roleA.yml
>>>>>>>>             roleB.yml
>>>>>>>>     roles/
>>>>>>>>         common/
>>>>>>>>             templates/
>>>>>>>>                 iptables.j2
>>>>>>>>             tasks/
>>>>>>>>                 main.yml
>>>>>>>>         roleA/
>>>>>>>>             templates/
>>>>>>>>                 iptables.j2
>>>>>>>>             tasks/
>>>>>>>>                 main.yml
>>>>>>>>
>>>>>>>>
>>>>>>>> I keep getting this error when I get to the play that templates the 
>>>>>>>> iptables file:
>>>>>>>> {'msg': 'AnsibleError: file: /path/to/ansible/roles/vickyva
>>>>>>>> le/templates/iptables.j2, error: Cannot find/not allowed to load 
>>>>>>>> (include) template 
>>>>>>>> /path/to/ansible/roles/common/templates/iptables.j2', 
>>>>>>>> 'failed': True}
>>>>>>>>
>>>>>>>> -- 
>>>>>>>> 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/77a802c6-
>>>>>>>> b3a5-4895-8430-700f99daf0f1%40googlegroups.com 
>>>>>>>> <https://groups.google.com/d/msgid/ansible-project/77a802c6-b3a5-4895-8430-700f99daf0f1%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>>>>>> .
>>>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>>>
>>>>>>>
>>>>>>>  -- 
>>>>>>> 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/CAKsMCEToh
>>>>>>> hhtbr79k8cgqm%2B%3DqxM-Fjytc-Kz_jbnimxQ456cJg%40mail.gmail.com 
>>>>>>> <https://groups.google.com/d/msgid/ansible-project/CAKsMCETohhhtbr79k8cgqm%2B%3DqxM-Fjytc-Kz_jbnimxQ456cJg%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>>>>>> .
>>>>>>>
>>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>>
>>>>>>
>>>>>>  -- 
>>>> 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/c2534bbb-8eaa-4875-9168-
>>>> d1d6df1d57f1%40googlegroups.com 
>>>> <https://groups.google.com/d/msgid/ansible-project/c2534bbb-8eaa-4875-9168-d1d6df1d57f1%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>> .
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>
>>>
>>>
>>> -- 
>>> Brian Coca
>>>  
>>  -- 
>> 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] <javascript:>.
>> To post to this group, send email to [email protected] 
>> <javascript:>.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/ansible-project/a1db82ee-fd0d-4fb4-8bc8-6c488df27a7a%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/ansible-project/a1db82ee-fd0d-4fb4-8bc8-6c488df27a7a%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>
>
> -- 
> Brian Coca
>  

-- 
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/d835065f-7aba-4299-9477-b080ac5fa749%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to