Sha256: 0d850a53fc2a3dea06226556e382176a70d9452ec3c96f9a80e146b8f38cafc1

Contents?: true

Size: 1.37 KB

Versions: 27

Compression:

Stored size: 1.37 KB

Contents

class StoragePool < CloudstackCli::Base

  desc 'list', 'list storage_pools'
  option :zone, desc: "zone name for the storage pool"
  option :name, desc: "name of the storage pool"
  option :keyword, desc: "list by keyword"
  option :state, desc: "filter by state (Up, Maintenance)"
  def list
    resolve_zone
    storage_pools = client.list_storage_pools(options)
    if storage_pools.size < 1
      say "No storage pools found."
    else
      storage_pools = filter_by(storage_pools, "state", options[:state]) if options[:state]
      table = [%w(Name Pod State Zone)]
      table[0] << "Size [GB]"
      table[0] << "Used [GB]"
      table[0] << "Used [%]"
      table[0] << "Alocated [GB]"
      table[0] << "Alocated [%]"
      table[0] << "Type"
      storage_pools.each do |storage_pool|
        total = storage_pool['disksizetotal'] / 1024**3
        used = (storage_pool['disksizeused'] / 1024**3) rescue 0
        allocated = (storage_pool['disksizeallocated'] / 1024**3) rescue 0
        table << [
        	storage_pool['name'], storage_pool['podname'],
          storage_pool['state'], storage_pool['zonename'],
          total, used, (100.0 / total * used).round(0),
          allocated, (100.0 / total * allocated).round(0),
          storage_pool['type']
        ]
      end
      print_table table
      say "Total number of storage_pools: #{storage_pools.size}"
    end
  end

end

Version data entries

27 entries across 27 versions & 1 rubygems

Version Path
cloudstack-cli-1.4.1 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-1.4.0 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-1.3.3 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-1.3.2 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-1.3.1 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-1.3.0 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-1.2.7 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-1.2.6 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-1.2.5 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-1.2.4 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-1.2.3 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-1.2.1 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-1.2.0 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-1.1.0 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-1.0.8 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-1.0.7 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-1.0.6 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-1.0.5 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-1.0.4 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-1.0.3 lib/cloudstack-cli/commands/storage_pool.rb