From e82370a26d15181b6c3b17b25c2349752e41ed38 Mon Sep 17 00:00:00 2001 From: Dan Bode Date: Tue, 26 Jul 2011 15:27:42 -0700 Subject: (#8628) Add append_line native type This commit adds a native type that can check if a line exists and append it to a file. This use case seems common enough to warrant its inclusion into stdlib. Reviewed-by: Jeff McCune --- lib/puppet/provider/append_line/ruby.rb | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 lib/puppet/provider/append_line/ruby.rb (limited to 'lib/puppet/provider') diff --git a/lib/puppet/provider/append_line/ruby.rb b/lib/puppet/provider/append_line/ruby.rb new file mode 100644 index 0000000..5e78659 --- /dev/null +++ b/lib/puppet/provider/append_line/ruby.rb @@ -0,0 +1,15 @@ +Puppet::Type.type(:append_line).provide(:ruby) do + + def exists? + File.readlines(resource[:path]).find do |line| + line.chomp == resource[:line].chomp + end + end + + def create + File.open(resource[:path], 'a') do |fh| + fh.puts resource[:line] + end + end + +end -- cgit v1.2.3