- From: Jeremy Voorhis <
>
- To:
- Subject: [chef] Re: What is the difference between the following following 2 gem installation methods?
- Date: Thu, 8 Mar 2012 17:21:51 +0000
In the compilation phase, you can just use the Ruby language directly.
def should_install_right_aws? # your custom logic here... end
r = gem_package "right_aws" do version node['aws']['right_aws_version'] action :nothing end
r.run_action(:install) if should_install_right_aws?
Best,
Jeremy Voorhis On Mar 8, 2012, at 2:44 PM, Sachin Sagar Rai wrote:
Thanks Guys! for clarifying.
Is there any way to make the gem installation conditional? Like `only_if` ? So that the chef-client doesn't install those gems in each run?
-------------------------------------------
On Thursday, March 8, 2012 at 8:23 PM, Bryan McLellan wrote:
On Thu, Mar 8, 2012 at 4:43 AM, Sachin Sagar Rai <
">
> wrote: What is the difference between the following following 2 gem installation methods?
gem_package "mysql" do action :install end
This is used to install a gem to your system, such as when you're installing a Ruby application to run as a service.
r = gem_package "right_aws" do version node['aws']['right_aws_version'] action :nothing end
r.run_action(:install)
require 'rubygems' Gem.clear_paths
This is used to install a gem immediately so you can use the gem in a Chef recipe. In Chef 0.10.10+ this will be replaced by:
chef_gem "right_aws" do version node['aws']['right_aws_version'] end
Bryan
|
Archive powered by MHonArc 2.6.16.