Class: ChefMetal::Transport::SSH::SSHResult

Inherits:
Object
  • Object
show all
Defined in:
lib/chef_metal/transport/ssh.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(command, options, stdout, stderr, exitstatus) ⇒ SSHResult

Returns a new instance of SSHResult.



188
189
190
191
192
193
194
# File 'lib/chef_metal/transport/ssh.rb', line 188

def initialize(command, options, stdout, stderr, exitstatus)
  @command = command
  @options = options
  @stdout = stdout
  @stderr = stderr
  @exitstatus = exitstatus
end

Instance Attribute Details

#commandObject (readonly)

Returns the value of attribute command.



196
197
198
# File 'lib/chef_metal/transport/ssh.rb', line 196

def command
  @command
end

#exitstatusObject (readonly)

Returns the value of attribute exitstatus.



200
201
202
# File 'lib/chef_metal/transport/ssh.rb', line 200

def exitstatus
  @exitstatus
end

#optionsObject (readonly)

Returns the value of attribute options.



197
198
199
# File 'lib/chef_metal/transport/ssh.rb', line 197

def options
  @options
end

#stderrObject (readonly)

Returns the value of attribute stderr.



199
200
201
# File 'lib/chef_metal/transport/ssh.rb', line 199

def stderr
  @stderr
end

#stdoutObject (readonly)

Returns the value of attribute stdout.



198
199
200
# File 'lib/chef_metal/transport/ssh.rb', line 198

def stdout
  @stdout
end

Instance Method Details

#error!Object



202
203
204
205
206
207
208
# File 'lib/chef_metal/transport/ssh.rb', line 202

def error!
  if exitstatus != 0
    # TODO stdout/stderr is already printed at info/debug level.  Let's not print it twice, it's a lot.
    msg = "Error: command '#{command}' exited with code #{exitstatus}.\n"
    raise msg
  end
end