Sha256: 3d18d64957bbc3aa402ee02e8dd0518a946f2833e8338a6d3e0fea3213e62d13

Contents?: true

Size: 1.71 KB

Versions: 1

Compression:

Stored size: 1.71 KB

Contents

require "timber/cli/installer"
require "timber/cli/io/messages"

module Timber
  class CLI
    module Installers
      class Other < Installer
        def run(app)
          if app.heroku?
            install_stdout
          else
            api_key_storage_preference = get_api_key_storage_preference
            api_key_code = get_api_key_code(api_key_storage_preference)
            install_http(api_key_code)
          end

          io.puts ""
          io.puts IO::Messages.separator
          io.puts ""
          io.puts "We're going to send a few test messages to ensure communication is working."
          io.puts ""
          io.ask_to_proceed
          io.puts ""
        end

        private
          def install_stdout
            io.puts ""
            io.puts IO::Messages.separator
            io.puts ""
            io.puts "To integrate Timber, simply use the Timber::Logger. Just set your"
            io.puts "global logger to something like this:"
            io.puts ""
            io.puts IO::ANSI.colorize("    LOGGER = Timber::Logger.new(STDOUT)", :blue)
            io.puts ""
            io.ask_to_proceed
          end

          def install_http(api_key_code)
            io.puts ""
            io.puts IO::Messages.separator
            io.puts ""
            io.puts "To integrate Timber, simply use the Timber::Logger. Just set your"
            io.puts "global logger to something like this:"
            io.puts ""
            io.puts IO::ANSI.colorize("    log_device = Timber::LogDevices::HTTP.new(#{api_key_code})", :blue)
            io.puts IO::ANSI.colorize("    LOGGER = Timber::Logger.new(log_device)", :blue)
            io.puts ""
            io.ask_to_proceed
          end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
timber-2.1.0.rc3 lib/timber/cli/installers/other.rb