diff options
author | Daniel Pittman <daniel@rimspace.net> | 2012-02-09 11:45:20 -0800 |
---|---|---|
committer | Daniel Pittman <daniel@rimspace.net> | 2012-02-09 11:45:20 -0800 |
commit | 966a4bf9067bffcfa73c664ba419894d783afdba (patch) | |
tree | 055da1b961bd251965112ceeefbaad160b6374fb /lib/puppet/provider/file_line | |
parent | d6fdfaba11aeff35604f1d5a917823f145a1cb76 (diff) | |
parent | fc5cfc8cca2d9650d0b7e1dcafe92bf69aedadf9 (diff) | |
download | puppet-stdlib-966a4bf9067bffcfa73c664ba419894d783afdba.tar.gz puppet-stdlib-966a4bf9067bffcfa73c664ba419894d783afdba.tar.bz2 |
Merge pull request #36 from duritong/tickets/11017
implement #11017 - make file_line type ensurable
Diffstat (limited to 'lib/puppet/provider/file_line')
-rw-r--r-- | lib/puppet/provider/file_line/ruby.rb | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/lib/puppet/provider/file_line/ruby.rb b/lib/puppet/provider/file_line/ruby.rb index 63bbd8e..f5d3a32 100644 --- a/lib/puppet/provider/file_line/ruby.rb +++ b/lib/puppet/provider/file_line/ruby.rb @@ -1,7 +1,7 @@ Puppet::Type.type(:file_line).provide(:ruby) do def exists? - File.readlines(resource[:path]).find do |line| + lines.find do |line| line.chomp == resource[:line].chomp end end @@ -12,4 +12,16 @@ Puppet::Type.type(:file_line).provide(:ruby) do end end + def destroy + local_lines = lines + File.open(resource[:path],'w') do |fh| + fh.write(local_lines.reject{|l| l.chomp == resource[:line] }.join('')) + end + end + + private + def lines + @lines ||= File.readlines(resource[:path]) + end + end |