class Serverkit::Backends::BaseBackend
Public Class Methods
new(log_level: nil)
click to toggle source
# File lib/serverkit/backends/base_backend.rb, line 13 def initialize(log_level: nil) @log_level = log_level end
Public Instance Methods
host()
click to toggle source
@note Override me @return [String] @example “localhost”
# File lib/serverkit/backends/base_backend.rb, line 20 def host raise NotImplementedError end
logger()
click to toggle source
@return [Serverkit::Logger]
# File lib/serverkit/backends/base_backend.rb, line 25 def logger @logger ||= Serverkit::Logger.new($stdout).tap do |_logger| _logger.level = @log_level end end
run_command(command)
click to toggle source
@param [String] command one-line shell script to be executed on remote machine @return [Specinfra::CommandResult]
# File lib/serverkit/backends/base_backend.rb, line 33 def run_command(command) logger.debug("Running #{command} on #{host}") specinfra_backend.run_command(command).tap do |result| logger.debug(result.stdout) unless result.stdout.empty? logger.debug(result.stderr) unless result.stderr.empty? logger.debug("Finished with #{result.exit_status} on #{host}") end end
send_file(from, to)
click to toggle source
# File lib/serverkit/backends/base_backend.rb, line 42 def send_file(from, to) logger.debug("Sending file #{from} to #{to}") specinfra_backend.send_file(from, to) end
Private Instance Methods
specinfra_backend()
click to toggle source
@note Override me @return [Specinfra::Backend::Base]
# File lib/serverkit/backends/base_backend.rb, line 51 def specinfra_backend raise NotImplementedError end