Class: Pvectl::Commands::CreateBackup
- Inherits:
-
Object
- Object
- Pvectl::Commands::CreateBackup
- Defined in:
- lib/pvectl/commands/create_backup.rb
Overview
Handler for the ‘pvectl create backup` command.
Creates backups for one or more VMs/containers. Supports multiple VMIDs with optional confirmation prompt.
Constant Summary collapse
- SUPPORTED_RESOURCES =
%w[backup].freeze
Class Method Summary collapse
-
.execute(resource_type, resource_ids, options, global_options) ⇒ Integer
Executes the create backup command.
Instance Method Summary collapse
-
#execute ⇒ Integer
Executes the create backup command.
-
#initialize(resource_type, resource_ids, options, global_options) ⇒ CreateBackup
constructor
Initializes a create backup command.
Constructor Details
#initialize(resource_type, resource_ids, options, global_options) ⇒ CreateBackup
Initializes a create backup command.
39 40 41 42 43 44 |
# File 'lib/pvectl/commands/create_backup.rb', line 39 def initialize(resource_type, resource_ids, , ) @resource_type = resource_type @resource_ids = Array(resource_ids).compact.map(&:to_i) @options = @global_options = end |
Class Method Details
.execute(resource_type, resource_ids, options, global_options) ⇒ Integer
Executes the create backup command.
29 30 31 |
# File 'lib/pvectl/commands/create_backup.rb', line 29 def self.execute(resource_type, resource_ids, , ) new(resource_type, resource_ids, , ).execute end |
Instance Method Details
#execute ⇒ Integer
Executes the create backup command.
49 50 51 52 53 54 55 56 |
# File 'lib/pvectl/commands/create_backup.rb', line 49 def execute return usage_error("Resource type required (backup)") unless @resource_type return usage_error("Unsupported resource: #{@resource_type}") unless SUPPORTED_RESOURCES.include?(@resource_type) return usage_error("At least one VMID is required") if @resource_ids.empty? return usage_error("--storage is required") unless @options[:storage] perform_operation end |