module Morpheus::Cli::StorageVolumesHelper

Mixin for Morpheus::Cli command classes Provides common methods for storage volume management including storage volumes and storage volume types

Public Class Methods

included(klass) click to toggle source
# File lib/morpheus/cli/mixins/storage_volumes_helper.rb, line 9
def self.included(klass)
  klass.send :include, Morpheus::Cli::PrintHelper
end

Public Instance Methods

format_storage_volume_source(storage_volume) click to toggle source
# File lib/morpheus/cli/mixins/storage_volumes_helper.rb, line 72
def format_storage_volume_source(storage_volume)
  storage_volume['source']
end
format_storage_volume_status(record, return_color=cyan) click to toggle source
# File lib/morpheus/cli/mixins/storage_volumes_helper.rb, line 57
def format_storage_volume_status(record, return_color=cyan)
  out = ""
  status_string = record['status']
  if status_string.nil? || status_string.empty? || status_string == "unknown"
    out << "#{white}UNKNOWN#{return_color}"
  elsif status_string == 'provisioned' || status_string == 'unattached'
    out << "#{cyan}#{status_string.capitalize}#{return_color}"
  elsif status_string == 'syncing'
    out << "#{yellow}#{status_string.capitalize}#{return_color}"
  else
    out << "#{red}#{status_string ? status_string.capitalize : 'N/A'}#{record['statusMessage'] ? "#{return_color} - #{record['statusMessage']}" : ''}#{return_color}"
  end
  out
end
storage_volume_label() click to toggle source
# File lib/morpheus/cli/mixins/storage_volumes_helper.rb, line 33
def storage_volume_label
  'Storage Volume'
end
storage_volume_label_plural() click to toggle source
# File lib/morpheus/cli/mixins/storage_volumes_helper.rb, line 37
def storage_volume_label_plural
  'Storage Volume'
end
storage_volume_list_key() click to toggle source
# File lib/morpheus/cli/mixins/storage_volumes_helper.rb, line 29
def storage_volume_list_key
  'storageVolumes'
end
storage_volume_object_key() click to toggle source
# File lib/morpheus/cli/mixins/storage_volumes_helper.rb, line 25
def storage_volume_object_key
  'storageVolume'
end
storage_volume_type_label() click to toggle source
# File lib/morpheus/cli/mixins/storage_volumes_helper.rb, line 49
def storage_volume_type_label
  'Storage Volume Type'
end
storage_volume_type_label_plural() click to toggle source
# File lib/morpheus/cli/mixins/storage_volumes_helper.rb, line 53
def storage_volume_type_label_plural
  'Storage Volume Types'
end
storage_volume_type_list_key() click to toggle source
# File lib/morpheus/cli/mixins/storage_volumes_helper.rb, line 45
def storage_volume_type_list_key
  'storageVolumeTypes'
end
storage_volume_type_object_key() click to toggle source
# File lib/morpheus/cli/mixins/storage_volumes_helper.rb, line 41
def storage_volume_type_object_key
  'storageVolumeType'
end
storage_volume_types_interface() click to toggle source
# File lib/morpheus/cli/mixins/storage_volumes_helper.rb, line 19
def storage_volume_types_interface
  # @api_client.storage_volume_types
  raise "#{self.class} has not defined @storage_volume_types_interface" if @storage_volume_types_interface.nil?
  @storage_volume_types_interface
end
storage_volumes_interface() click to toggle source
# File lib/morpheus/cli/mixins/storage_volumes_helper.rb, line 13
def storage_volumes_interface
  # @api_client.storage_volumes
  raise "#{self.class} has not defined @storage_volumes_interface" if @storage_volumes_interface.nil?
  @storage_volumes_interface
end