[chef] Re: Re: How to add ruby lib as depend at LWRP


Chronological Thread 
  • From: Juan Jesús Ojeda Croissier < >
  • To:
  • Subject: [chef] Re: Re: How to add ruby lib as depend at LWRP
  • Date: Tue, 13 Dec 2011 15:23:18 +0100

On Tue, Dec 13, 2011 at 1:08 PM, Bryan Berry 
< >
 wrote:
> juanje
>
> how about this?
>
> # at beginning of lwrp
> f = package "foo" do
>   action :install
> end
> f.run_action(:install)
>
> this might trigger the install action immediately
>
> this is just an idea. I have done something similar w/ execute resources but
> not with package resources
>

Like that, doesn't work, but I think is good start. After some tries I got:

f = Chef::Resource::AptPackage.new "libsqlite3-ruby" do
  action :install
end
f.run_action(:install)

But it ask me for the run_context:

FATAL: ArgumentError: apt_package[libsqlite3-ruby] (dynamically
defined) had an error: Cannot find the provider for a resource with no
run context set

I tried this:
f = Chef::Resource::AptPackage.new("libsqlite3-ruby",
        Chef::RunContext.new(@node,
Chef::CookbookCollection.new(Chef::CookbookLoader.new(Chef::Config[:cookbook_path]))))
f.run_action(:install)

Still no luck:
NoMethodError: undefined method `cookbook_collection=' for nil:NilClass

But getting close. I think...

Thanks for the help :-)

> 2011/12/13 Juan Jesús Ojeda Croissier 
> < >
>>
>> Hi :-)
>>
>> I was tring to find a example or doc about how to do it and I didn't
>> find. Maybe I didn't know where to search...
>>
>> My problem is that I have a LWRP that need a Ruby library ( require
>> 'sqlite3' ) and I don't know how to be sure that the library is
>> already installed.
>> Is there any way to install the package from the cookbook before the
>> provider (LWRP) be loaded?
>>
>> Any pointers will help. I'm already trying at
>> $COOKBOOK/libraries/default.rb with no much luck. At least I don't
>> know how to call properly from there the 'package' provider.
>>
>> Thanks :-)
>>
>> --
>> Juanje
>
>



-- 
Juanje



Archive powered by MHonArc 2.6.16.

§