- From: Joshua Miller <
>
- To:
- Subject: [chef] Re: Re: Re: Conditional resource creation / script execution
- Date: Wed, 13 Jan 2010 13:39:15 -0800
- Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=from:mime-version:content-type:subject:date:in-reply-to:to :references:message-id:x-mailer; b=aHhacz8uWNSUTvQscqwq4OeEfFtRTZDZkrZUriIORPYytVM9G2ulkZnUJwnKwi78wQ ZBS1/3XFplC71jjvWUEd/qbPZWM4fLAFEALhl7uVwRg3aWxFjEv4WftFeDLDGVG+bpxb zjd3qgfAZY4ffwnnZnJnSxDoWs65jfrjtSCR4=
Something like this, only part I am not sure about is HOME, but based on I see it should work.
script "ssh-keygen" do interpreter "bash" user "manage" cwd (HOME) code "mkdir ssh-temp" code "ssh-keygen -t dsa -f ssh-temp/id_dsa << EOF\n\nEOF" code "mv ssh-temp/* .ssh/" not_if do File .exists?(HOME + "/.ssh/id_dsa.pub") end end
On Jan 13, 2010, at 1:32 PM, Sébastien Pierre wrote: Thanks,
I don't know much of Ruby, so how would I chain the script to this _expression_ ?
-- Sébastien 2010/1/13 Joshua Miller <
">
>
Something like this should work ...
not_if do File .exists?(HOME + "/.ssh/id_dsa.pub") end
http://wiki.opscode.com/display/chef/Resources#Resources-Script
On Jan 13, 2010, at 12:56 PM, Sébastien Pierre wrote: Hello,
I would like to know how to write "conditional" parts for recipies.
For instance, I would like to check if there is a "~/.ssh/id_dsa.pub" file and create it if necessary. Right now, the solution is rather inelegant
script "ssh-keygen" do interpreter "bash"
user "manage"
cwd (HOME)
code "mkdir ssh-temp"
code "ssh-keygen -t dsa -f ssh-temp/id_dsa << EOF\n\nEOF"
code <<-EOH
if [ ! -f .ssh/id_dsa.pub ]; then
mv ssh-temp/* .ssh/
fi
rm -rf ssh-temp
EOH
end
while I would prefer
unless (File exists (HOME + "/.ssh/id_dsa.pub") script do
interpreter "bash"
user "manage"
cwd (HOME)
code "ssh-keygen -t dsa -f ssh-temp/id_dsa << EOF\n\nEOF"
end
Is there a way to do this properly ?
-- Sébastien
|
Archive powered by MHonArc 2.6.16.