[chef] Re: Chef Recipe inserting a line before last line in fie


Chronological Thread 
  • From: Sean OMeara < >
  • To:
  • Subject: [chef] Re: Chef Recipe inserting a line before last line in fie
  • Date: Sun, 9 Dec 2012 03:55:56 -0500

Hi Charles!

This comes up ALL THE TIME, so...

I whipped up a line cookbook on the community site that'll help you out.

add depends 'line' in a cookbook's metadata.rb, then in a recipe you can say:

append_if_no_line "hello world" do
  file "/tmp/dangerfile"
  string "HI THERE I AM STRING"
end


It's alpha code cut at 4am, so let me know how it works =)
-s

On Sun, Dec 9, 2012 at 1:37 AM,  
< >
 wrote:
> Hello,
>
> I am new to Chef and Ruby and trying to figure out the proper way to add a 
> line
> to /etc/security/access.conf prior to the last line that denies everything 
> not
> already defined.
>
> Not sure yet whether the best way is to use a Chef command of a Ruby Block.
>
> I do not see a way in Chef to insert a new line searched for if the line 
> does
> not already exist in the file prior to another line in the file.
>
> I thought this would work:
>
> file.replace_line_if_no_match but that adds it after the last line in the 
> file.
>  In security, all the entries in access.conf that allow access have to be 
> prior
> to the line that denies everything not already allowed.
>
> Basically, I want to see if "+:mongod:cron crond\n" already exists.  If it
> does, do not do anything.  However, if it does not exist, insert it prior 
> to "-
> : ALL : ALL\n".
>
> What is the best way in a Chef Recipe to do this?
>
> Thank you.
>
> ----
> Charles Keagle
> 
> 425-417-3434



Archive powered by MHonArc 2.6.16.

§