module Bundler::Thor::Actions

def gsub_file(path, flag, *args, &block)


end
match << " no more. Use thor!"
gsub_file 'README', /rake/, :green do |match|

gsub_file 'app/controllers/application_controller.rb', /#\s*(filter_parameter_logging :password)/, '\1'

==== Example

:force => true, to force the replacement regardless of runner behavior.
config:: give :verbose => false to not log the status, and
replacement:: the replacement, can be also given as a block
flag:: the regexp or string to be replaced
path:: path of the file to be changed
==== Parameters

Run a regular expression replacement on a file.
def gsub_file(path, flag, *args, &block)
  config = args.last.is_a?(Hash) ? args.pop : {}
  return unless behavior == :invoke || config.fetch(:force, false)
  path = File.expand_path(path, destination_root)
  say_status :gsub, relative_to_original_destination_root(path), config.fetch(:verbose, true)
  unless options[:pretend]
    content = File.binread(path)
    content.gsub!(flag, *args, &block)
    File.open(path, "wb") { |file| file.write(content) }
  end
end