1234567891011121314151617181920212223242526272829303132333435 |
- require 'chef/util/file_edit'
- action :replace do
- if ::File.exists? new_resource.name
- old_content = Chef::Util::FileEdit.new new_resource.name
- old_content.search_file_replace(new_resource.before, new_resource.after)
- old_content.write_file
- else
- Chef::Log.debug("replace action couldn't be performed. #{new_resource.name} does not exist")
- end
- end
- action :add do
- if ::File.exists? new_resource.name
- new_file = Chef::Util::FileEdit.new new_resource.name
- new_file.insert_line_if_no_match(new_resource.pattern, new_resource.new_line)
- new_file.write_file
- else
- file new_resource.name do
- content new_resource.new_line + "\n"
- owner new_resource.owner
- group new_resource.group
- action :create
- end
- end
- end
- action :remove do
- if ::File.exists? new_resource.name
- new_file = Chef::Util::FileEdit.new new_resource.name
- new_file.search_file_delete_line(new_resource.pattern)
- new_file.write_file
- end
- end
|