>I don't know what "stopped working" means, so when you say something 
doesn't work, I'd need to see output.

I posted about that issue over at 
https://groups.google.com/forum/?utm_medium=email&utm_source=footer#!msg/ansible-project/Fd8HJ2bgTeE/a51DBhXmavgJ
 
- the problem is the variable in the playbook include.


>I'm also unclear what the value for playbook was and would need to see the 
file in context, whereas it seems to be an incomplete snippet above, so 
it's hard to say what I should suggest.

The include playbook does not include more than a list of roles I want to 
apply. The use case is the following:
 - We have multiple projects/apps in our company, where each project 
requires some different roles as environment. So in additiona to a file 
with custom variables, I want to be able to define the roles being 
necessary for the project. Right now we have a simple playbook which only 
consists of a short list of required roles for that (see first example 
playbook). Then, this playbook is picked up to provision different machines 
for the project, e.g. a vagrant box or some staging environment. For that 
we've got different master playbooks (vagrant, staging, ..) where it 
provisions the environment + includes the project specific playbook to take 
care of project specifics.

For that, having a simple playbook which only consists of a short list of 
required roles seems a good fit here. Having the roles specified in some 
sort of variable would be possible as well, but I'd prefer to not have to 
pre-define the list of possible roles somewhere.


It sounds like you are applying the same role to the same hosts in more 
> than one play, in which case they will run twice, basically because they 
> were asked to do so :)
>

If the project specific playbook contains role A depending on role B and 
the environment-provision playbook (e.g. staging) contains role C depending 
on role B, role B will unnecessarily run twice as it runs in two different 
plays. If I could merge the list of roles into a single play, ansible would 
detect the shared dependency and run role B only once. That would be 
optimal then - that's why I'm asking whether there is a way the roles 
somehow?


Thanks for your help!



Am Freitag, 5. September 2014 03:36:38 UTC+2 schrieb Michael DeHaan:
>
> I don't know what "stopped working" means, so when you say something 
> doesn't work, I'd need to see output.   I'm also unclear what the value for 
> playbook was and would need to see the file in context, whereas it seems to 
> be an incomplete snippet above, so it's hard to say what I should suggest.
>
> I also do not understand this part of the equation:  "Besides that, the 
> solution isn't optimal as afterwards I've to run some more roles on the 
> same hosts, but if the dependencies of both roles overlap the dependencies 
> get now executed twice."
>
> It sounds like you are applying the same role to the same hosts in more 
> than one play, in which case they will run twice, basically because they 
> were asked to do so :)
>
>
>
>
> On Thu, Sep 4, 2014 at 3:59 PM, Wolfgang Ziegler <[email protected] 
> <javascript:>> wrote:
>
>> I've a setup of multiple projects, where each project specified the roles 
>> it works with via a playbook like the following:
>>
>> # Ansible playbook.
>> # Has to be included in a top level playbook and the hosts variable set.
>> ---
>> - hosts: "{{ hosts }}"
>>   roles:
>>     - { role: somerole }
>> Code hier eingeben...
>>
>> Now I include this in the main playbook like the following:
>>
>>   include: "{{ playbook }} hosts=some-hosts"
>>
>> Now, there is the problem that in 1.7.1 this stopped working due to the 
>> variable in the include, which I already mentioned over at 
>> https://groups.google.com/forum/#!searchin/ansible-project/playbook$20include/ansible-project/Fd8HJ2bgTeE/QZM9QwBqEEMJ
>> .
>>
>> Besides that, the solution isn't optimal as afterwards I've to run some 
>> more roles on the same hosts, but if the dependencies of both roles overlap 
>> the dependencies get now executed twice. Instead, I'd love to be able to 
>> merge both playbooks into one or have a way to include some additional 
>> roles in one main play - that way the dependencies would be properly 
>> handled.
>>
>> I'd tried something like following:
>>
>> # Ansible playbook.
>> ---
>> - hosts: my-hosts
>>   vars_files:
>>     - "{{ vars-with-roles-specified }}"
>>   roles: defined_roles +
>>     - { role: another_role }
>> Code hier eingeben...
>>
>> However it seems that roles cannot be specified using variables at all. 
>> Any suggestions on how to achieve that best?
>>  
>> -- 
>> 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/8e55db1f-acba-40d2-b0a8-618e57d41ff2%40googlegroups.com
>>  
>> <https://groups.google.com/d/msgid/ansible-project/8e55db1f-acba-40d2-b0a8-618e57d41ff2%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/6181a5fb-4977-4901-9f33-eba631752e6c%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to