[chef] RE: Re: stopping recipe execution early


Chronological Thread 
  • From: "Pitucha, Stanislaw Izaak" < >
  • To: " " < >
  • Subject: [chef] RE: Re: stopping recipe execution early
  • Date: Wed, 17 Oct 2012 10:48:26 +0000
  • Accept-language: en-GB, en-US

Thanks, I tried 'return' in shef, which failed, so I assumed it would fail in 
chef-client too. Apparently that's not the case.

chef:recipe > return
ThreadError: return can't jump across threads
        from (irb#1):1

Regards,
StanisÅ‚aw Pitucha
Cloud Services 
Hewlett Packard


-----Original Message-----
From: AJ Christensen 
[mailto:
 
Sent: Wednesday, October 17, 2012 11:41 AM
To: 

Subject: [chef] Re: stopping recipe execution early

To expand; apologies: occasionally we'd skip the entire execution of a recipe 
depending solely upon the results from our Discovery [0] library cookbook.

A common (gated) execution pattern is:

return unless discovery_search("a_servers_role_that_ineed",
  :empty_ok => false,
  :environment_aware => true)

Cheers,

--AJ

[0] https://github.com/hw-cookbooks/discovery

On 17 October 2012 23:38, AJ Christensen 
< >
 wrote:
> you can 'return' from the recipe DSL mid-compilation.
>
> cheers,
>
> --AJ
>
> On 17 October 2012 23:11, Pitucha, Stanislaw Izaak 
> < >
>  wrote:
>> Hi all,
>> Is there some official (or at least working) way to stop execution of 
>> a recipe early? (without affecting the rest of the run list) For 
>> example if I have the whole recipe depending on a single switch, I 
>> could just put it inside of:
>>
>> if node[:switch]
>>   ....
>> end
>>
>> but that would be spanning a couple of screens of code - not the 
>> cleanest solution. Is there a good way to stop execution without 
>> throwing an exception, so that I can do:
>>
>> some_stop_function unless node[:switch]
>>
>> Regards,
>> StanisÅ‚aw Pitucha
>> Cloud Services
>> Hewlett Packard
>>
>>

Attachment: smime.p7s
Description: S/MIME cryptographic signature




Archive powered by MHonArc 2.6.16.

§