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.



171
172
173
174
175
176
177
# File 'lib/chef_metal/transport/ssh.rb', line 171

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.



179
180
181
# File 'lib/chef_metal/transport/ssh.rb', line 179

def command
  @command
end

#exitstatusObject (readonly)

Returns the value of attribute exitstatus.



183
184
185
# File 'lib/chef_metal/transport/ssh.rb', line 183

def exitstatus
  @exitstatus
end

#optionsObject (readonly)

Returns the value of attribute options.



180
181
182
# File 'lib/chef_metal/transport/ssh.rb', line 180

def options
  @options
end

#stderrObject (readonly)

Returns the value of attribute stderr.



182
183
184
# File 'lib/chef_metal/transport/ssh.rb', line 182

def stderr
  @stderr
end

#stdoutObject (readonly)

Returns the value of attribute stdout.



181
182
183
# File 'lib/chef_metal/transport/ssh.rb', line 181

def stdout
  @stdout
end

Instance Method Details

#error!Object



185
186
187
188
189
190
191
# File 'lib/chef_metal/transport/ssh.rb', line 185

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