Class: Mccloud::Provider::Host::Provider
- Inherits:
-
Core::Provider
- Object
- Core::Provider
- Mccloud::Provider::Host::Provider
- Includes:
- ProviderCommand
- Defined in:
- lib/mccloud/provider/host/provider.rb
Instance Attribute Summary collapse
-
#flavor ⇒ Object
Returns the value of attribute flavor.
-
#name ⇒ Object
Returns the value of attribute name.
-
#options ⇒ Object
Returns the value of attribute options.
-
#vms ⇒ Object
Returns the value of attribute vms.
Attributes inherited from Core::Provider
Instance Method Summary collapse
- #bootstrap(selection, script, options) ⇒ Object
- #destroy(selection, options) ⇒ Object
- #halt(selection, options) ⇒ Object
-
#initialize(name, options, env) ⇒ Provider
constructor
A new instance of Provider.
- #provision(selection, options) ⇒ Object
- #raw ⇒ Object
- #ssh(selection, command, options) ⇒ Object
- #up(selection, options) ⇒ Object
Methods included from ProviderCommand
Methods inherited from Core::Provider
#check_gem_availability, #filter, #get_component, #hosts, #method_missing, #on_selected_components
Constructor Details
#initialize(name, options, env) ⇒ Provider
Returns a new instance of Provider.
20 21 22 23 24 25 26 27 28 29 |
# File 'lib/mccloud/provider/host/provider.rb', line 20 def initialize(name,,env) super(name,,env) @vms=Hash.new @options= @flavor=self.class.to_s.split("::")[-2] @name=name end |
Dynamic Method Handling
This class handles dynamic methods through the method_missing method in the class Mccloud::Provider::Core::Provider
Instance Attribute Details
#flavor ⇒ Object
Returns the value of attribute flavor.
11 12 13 |
# File 'lib/mccloud/provider/host/provider.rb', line 11 def flavor @flavor end |
#name ⇒ Object
Returns the value of attribute name.
10 11 12 |
# File 'lib/mccloud/provider/host/provider.rb', line 10 def name @name end |
#options ⇒ Object
Returns the value of attribute options.
13 14 15 |
# File 'lib/mccloud/provider/host/provider.rb', line 13 def @options end |
#vms ⇒ Object
Returns the value of attribute vms.
15 16 17 |
# File 'lib/mccloud/provider/host/provider.rb', line 15 def vms @vms end |
Instance Method Details
#bootstrap(selection, script, options) ⇒ Object
41 42 43 44 45 46 |
# File 'lib/mccloud/provider/host/provider.rb', line 41 def bootstrap(selection,script,) on_selected_components("vm",selection) do |id,vm| vm._bootstrap(script,) end end |
#destroy(selection, options) ⇒ Object
48 49 50 51 52 53 54 |
# File 'lib/mccloud/provider/host/provider.rb', line 48 def destroy(selection,) on_selected_components("vm",selection) do |id,vm| vm.destroy() end end |
#halt(selection, options) ⇒ Object
74 75 76 77 78 79 80 |
# File 'lib/mccloud/provider/host/provider.rb', line 74 def halt(selection,) on_selected_components("vm",selection) do |id,vm| env.ui.info "Matched #{vm.name}" vm.halt() end end |
#provision(selection, options) ⇒ Object
66 67 68 69 70 71 72 |
# File 'lib/mccloud/provider/host/provider.rb', line 66 def provision(selection,) on_selected_components("vm",selection) do |id,vm| vm._provision() end end |
#raw ⇒ Object
31 32 33 34 |
# File 'lib/mccloud/provider/host/provider.rb', line 31 def raw # We don't use this @raw=nil end |
#ssh(selection, command, options) ⇒ Object
56 57 58 59 60 61 62 |
# File 'lib/mccloud/provider/host/provider.rb', line 56 def ssh(selection,command,) on_selected_components("vm",selection) do |id,vm| vm.ssh(command,) end end |
#up(selection, options) ⇒ Object
35 36 37 38 39 |
# File 'lib/mccloud/provider/host/provider.rb', line 35 def up(selection,) on_selected_components("vm",selection) do |id,vm| vm.up() end end |