[chef] Re: Re: Re: Re: Re: Force service start at end of recipe.


Chronological Thread 
  • From: Adam Jacob < >
  • To:
  • Subject: [chef] Re: Re: Re: Re: Re: Force service start at end of recipe.
  • Date: Fri, 13 May 2011 21:47:47 -0700

An easier way would be to just call the code that's in the ticket I
linked earlier, so that the new data is available instantly.

Adam

On Fri, May 13, 2011 at 9:35 PM, Jason J. W. Williams
< >
 wrote:
> Hi Adam,
>
> Was actually just getting ready to write back. I'd discovered the same 
> thing in the linux man page  for nsswitch.conf(5):
>
> "Within each process that uses nsswitch.conf, the entire file is read only 
> once; if the file is later changed, the process will continue using the old 
> configuration.
> With Solaris, it isn't possible to link programs using the NSS Service 
> statically. With Linux, this is no problem."
>
> Thinking about writing a knife plugin that wraps bootstrap to call once 
> with the first cookbook in the run list and then connect a second time to 
> run chef-client after adding the rest of the cookbooks to the run list.
>
> Thank you very much for your help.
>
> -J
>
>
> Sent via iPhone
>
> Is your e-mail Premiere?
>
> On May 13, 2011, at 21:54, Adam Jacob 
> < >
>  wrote:
>
>> Chef isn't caching it, but RedHat/CentOS is:
>>
>http://tickets.opscode.com/browse/CHEF-1699?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16783#comment-16783
>>
>> Best,
>> Adam
>>
>> On Fri, May 13, 2011 at 3:38 PM, Jason J. W. Williams
>> < >
>>  wrote:
>>> Hi Adam,
>>>
>>> Well...it looks like the services are starting, however Chef still
>>> bombs out with this error that it can't find the user:
>>> https://gist.github.com/971425
>>>
>>> This only seems to happen during bootstrapping a system. It loads my
>>> ldap_auth recipe and later my redis recipe (which crashes complaining
>>> it can't find the redis user). If I run "getent passwd | grep redis"
>>> before it hits the redis cookbook (but after it runs the ldap_auth
>>> cookbook) the system shows it is seeing the user:
>>>
>>> redis:*:997:997:redis:<redacted_path>:/bin/false
>>>
>>> However, I still get the error:
>>>
>>> /usr/lib/ruby/1.8/chef/provider/file.rb:82:in `getpwnam': can't find
>>> user for redis
>>>
>>> Now if I run chef-client again manually after the failed bootstrap,
>>> the redis recipe completes successfully (it's almost as if Chef is
>>> caching the user/group list at the start of the run). Any help is
>>> greatly appreciated.
>>>
>>> -J
>>>
>>>
>>>
>>> On Fri, May 13, 2011 at 11:18 AM, Adam Jacob 
>>> < >
>>>  wrote:
>>>> You can add a simple:
>>>>
>>>> service "YOUR-DAEMON-HERE" do
>>>>  action :start
>>>> end
>>>>
>>>> Or similar to the end of the LDAP client recipe, to ensure it gets 
>>>> started.
>>>>
>>>> On Fri, May 13, 2011 at 9:57 AM, Jason J. W. Williams
>>>> < >
>>>>  wrote:
>>>>> Besides putting :immediately on the service restart notifies in the 
>>>>> template commands, is there a way to force a new service to start at 
>>>>> the end of a recipe?
>>>>>
>>>>> My problem is I have a recipe that correctly installs ldap 
>>>>> authentication for the OS, but since it doesn't immediately start the 
>>>>> client daemon, subsequent recipes fail when they reference users 
>>>>> defined in the ldap directory. Any pointers are greatly appreciated.
>>>>>
>>>>> -J
>>>>>
>>>>> Sent via iPhone
>>>>>
>>>>> Is your e-mail Premiere?
>>>>
>>>>
>>>>
>>>> --
>>>> Opscode, Inc.
>>>> Adam Jacob, Chief Product Officer
>>>> T: (206) 619-7151 E: 
>>>> 
>>>>
>>>
>>
>>
>>
>> --
>> Opscode, Inc.
>> Adam Jacob, Chief Product Officer
>> T: (206) 619-7151 E: 
>
>



-- 
Opscode, Inc.
Adam Jacob, Chief Product Officer
T: (206) 619-7151 E: 




Archive powered by MHonArc 2.6.16.

§