Module: Pvectl::Commands::VmLifecycleCommand
- Includes:
- ResourceLifecycleCommand
- Defined in:
- lib/pvectl/commands/vm_lifecycle_command.rb,
sig/pvectl/commands/vm_lifecycle_command.rbs
Overview
VM-specific lifecycle command hooks.
Provides VM repository, selector, service, and presenter to ResourceLifecycleCommand's template methods.
Class Method Summary collapse
-
.included(base) ⇒ void
Extends the including class with ClassMethods from ResourceLifecycleCommand.
Instance Method Summary collapse
-
#build_presenter ⇒ Presenters::VmOperationResult
Builds VM operation result presenter.
-
#build_repository(connection) ⇒ Repositories::Vm
Builds VM repository.
-
#build_selector(strings) ⇒ Selectors::Vm
Builds VM selector from strings.
-
#build_service(repo, task_repo, options) ⇒ Services::VmLifecycle
Builds VM lifecycle service.
-
#resource_id_label ⇒ String
Human label for VM IDs.
-
#resource_label ⇒ String
Human label for VM resources.
-
#supported_resources ⇒ Array<String>
Supported resource types.
Methods included from ResourceLifecycleCommand
#apply_selectors, #confirm_operation, #determine_exit_code, #execute, #initialize, #load_config, #no_resources_found, #operation_name, #output_results, #perform_operation, #resolve_resources, #selector_strings, #service_options, #usage_error
Class Method Details
.included(base) ⇒ void
This method returns an undefined value.
Extends the including class with ClassMethods from ResourceLifecycleCommand.
22 23 24 |
# File 'lib/pvectl/commands/vm_lifecycle_command.rb', line 22 def self.included(base) base.extend(ResourceLifecycleCommand::ClassMethods) end |
Instance Method Details
#build_presenter ⇒ Presenters::VmOperationResult
Builds VM operation result presenter.
64 65 66 |
# File 'lib/pvectl/commands/vm_lifecycle_command.rb', line 64 def build_presenter Pvectl::Presenters::VmOperationResult.new end |
#build_repository(connection) ⇒ Repositories::Vm
Builds VM repository.
47 48 49 |
# File 'lib/pvectl/commands/vm_lifecycle_command.rb', line 47 def build_repository(connection) Pvectl::Repositories::Vm.new(connection) end |
#build_selector(strings) ⇒ Selectors::Vm
Builds VM selector from strings.
72 73 74 |
# File 'lib/pvectl/commands/vm_lifecycle_command.rb', line 72 def build_selector(strings) Pvectl::Selectors::Vm.parse_all(strings) end |
#build_service(repo, task_repo, options) ⇒ Services::VmLifecycle
Builds VM lifecycle service.
57 58 59 |
# File 'lib/pvectl/commands/vm_lifecycle_command.rb', line 57 def build_service(repo, task_repo, ) Pvectl::Services::VmLifecycle.new(repo, task_repo, ) end |
#resource_id_label ⇒ String
Returns human label for VM IDs.
39 40 41 |
# File 'lib/pvectl/commands/vm_lifecycle_command.rb', line 39 def resource_id_label "VMID" end |
#resource_label ⇒ String
Returns human label for VM resources.
34 35 36 |
# File 'lib/pvectl/commands/vm_lifecycle_command.rb', line 34 def resource_label "VM" end |
#supported_resources ⇒ Array<String>
Returns supported resource types.
29 30 31 |
# File 'lib/pvectl/commands/vm_lifecycle_command.rb', line 29 def supported_resources %w[vm] end |