[chef-dev] Re: Re: Re: Re: socket control for chef-client


Chronological Thread 
  • From:
  • To: John Vincent < >
  • Cc: " " < >
  • Subject: [chef-dev] Re: Re: Re: Re: socket control for chef-client
  • Date: Mon, 05 Mar 2012 18:49:46 +0100

John Vincent 
< >
 writes:

[...]
>> In my case i just want to be able to run one recipe instead of the
>> main huge centralised run_list.
>>
>> Again, I could work around this with a special cookbook that would
>> alter the run_list.
>> For example the special cookbook would read a json file (with either
>> recipes to run, or recipes to skip), alter chef-client run_list
>> accordingly and remove the json file eventually.

> What exactly is the concern here? If you don't trust your client runs
> to not undo something then you've got a much bigger problem.
>
> If the concern is time, then better effort is spent optimizing the 
> cookbooks.

concern is time :
1) about 35sec for 231 up to date resources (including the exec
   "apt-get update")
2) the 30 min interval

I use something like kill -SIGUSR1 $(</var/run/chef/client.pid) for
point 2. I'll use the run_list alter trick for point 1.

> Please also consider something like this:
>
> https://gist.github.com/1979216

yep, that's what i was thinking of when talking about a "special
cookbook"

> If you really need to ensure that something is a one time thing, add
> it to the runlist for a run and make sure it cleans itself up
> afterwards. You can even use the 'oneshot' cookbook that Matt Ray
> wrote for something more data driven.

I'me going to have a look at it, thanks.

-- 
Laurent



Archive powered by MHonArc 2.6.16.

§