Sha256: dafa9f1faf0c451b024626b80290d83d5d6fec6516cf3dbb0327da99c455f8a2

Contents?: true

Size: 1.11 KB

Versions: 31

Compression:

Stored size: 1.11 KB

Contents

module Suspenders
  module Actions
    def replace_in_file(relative_path, find, replace)
      path = File.join(destination_root, relative_path)
      contents = IO.read(path)
      unless contents.gsub!(find, replace)
        raise "#{find.inspect} not found in #{relative_path}"
      end
      File.open(path, "w") { |file| file.write(contents) }
    end

    def action_mailer_host(rails_env, host)
      host_config = "config.action_mailer.default_url_options = { host: '#{host}' }"
      configure_environment(rails_env, host_config)
    end

    def configure_environment(rails_env, config)
      inject_into_file(
        "config/environments/#{rails_env}.rb",
        "\n\n  #{config}",
        before: "\nend"
      )
    end

    def download_file(uri_string, destination)
      uri = URI.parse(uri_string)
      http = Net::HTTP.new(uri.host, uri.port)
      http.use_ssl = true if uri_string =~ /^https/
      request = Net::HTTP::Get.new(uri.path)
      contents = http.request(request).body
      path = File.join(destination_root, destination)
      File.open(path, "w") { |file| file.write(contents) }
    end
  end
end

Version data entries

31 entries across 31 versions & 4 rubygems

Version Path
os_suspenders-1.8.2 lib/suspenders/actions.rb
os_suspenders-0.0.1 lib/suspenders/actions.rb
suspenders-1.8.1 lib/suspenders/actions.rb
suspenders-1.8.0 lib/suspenders/actions.rb
re-rails-0.1.6 lib/suspenders/actions.rb
re-rails-0.1.3 lib/suspenders/actions.rb
re-rails-0.1.2 lib/suspenders/actions.rb
re-rails-0.1.1 lib/suspenders/actions.rb
re-rails-0.1.0 lib/suspenders/actions.rb
suspenders-1.7.0 lib/suspenders/actions.rb
suspenders-1.6.0 lib/suspenders/actions.rb