Class: Gloo::Objs::SshExec
- Inherits:
-
GlooLang::Core::Obj
- Object
- GlooLang::Core::Obj
- Gloo::Objs::SshExec
- Defined in:
- lib/gloo/objs/system/ssh_exec.rb
Constant Summary collapse
- KEYWORD =
'ssh_exec'.freeze
- KEYWORD_SHORT =
'ssh'.freeze
- HOST =
'host'.freeze
- DEFAULT_HOST =
'localhost'.freeze
- CMD =
'cmd'.freeze
- RESULT =
'result'.freeze
- HOST_REQUIRED_ERR =
'The host is required!'.freeze
Class Method Summary collapse
-
.messages ⇒ Object
Get a list of message names that this object receives.
-
.short_typename ⇒ Object
The short name of the object type.
-
.typename ⇒ Object
The name of the object type.
Instance Method Summary collapse
-
#add_children_on_create? ⇒ Boolean
Does this object have children to add when an object is created in interactive mode? This does not apply during obj load, etc.
-
#add_default_children ⇒ Object
Add children to this object.
-
#msg_run ⇒ Object
SSH to the host and execute the command, then update result.
Class Method Details
.messages ⇒ Object
Get a list of message names that this object receives.
66 67 68 |
# File 'lib/gloo/objs/system/ssh_exec.rb', line 66 def self. return super + [ 'run' ] end |
.short_typename ⇒ Object
The short name of the object type.
30 31 32 |
# File 'lib/gloo/objs/system/ssh_exec.rb', line 30 def self.short_typename return KEYWORD_SHORT end |
.typename ⇒ Object
The name of the object type.
23 24 25 |
# File 'lib/gloo/objs/system/ssh_exec.rb', line 23 def self.typename return KEYWORD end |
Instance Method Details
#add_children_on_create? ⇒ Boolean
Does this object have children to add when an object is created in interactive mode? This does not apply during obj load, etc.
43 44 45 |
# File 'lib/gloo/objs/system/ssh_exec.rb', line 43 def add_children_on_create? return true end |
#add_default_children ⇒ Object
Add children to this object. This is used by containers to add children needed for default configurations.
52 53 54 55 56 57 |
# File 'lib/gloo/objs/system/ssh_exec.rb', line 52 def add_default_children fac = @engine.factory fac.create_string HOST, DEFAULT_HOST, self fac.create_string CMD, nil, self fac.create_string RESULT, nil, self end |
#msg_run ⇒ Object
SSH to the host and execute the command, then update result.
73 74 75 76 77 78 79 80 81 82 83 84 |
# File 'lib/gloo/objs/system/ssh_exec.rb', line 73 def msg_run h = host_value unless h @engine.err HOST_REQUIRED_ERR return end Net::SSH.start( h ) do |ssh| result = ssh.exec!( cmd_value ) update_result result end end |