Sha256: 7b8784e439d18635a8a1c5b1845e7dfb7b7d0fed4d348f13befb46f838ead9b8

Contents?: true

Size: 1.35 KB

Versions: 23

Compression:

Stored size: 1.35 KB

Contents

class StoragePool < CloudstackCli::Base

  desc 'list', 'list storage_pool'
  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
    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

23 entries across 23 versions & 1 rubygems

Version Path
cloudstack-cli-0.15.1 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-0.15.0 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-0.14.1 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-0.14.0 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-0.13.1 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-0.13.0 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-0.12.3 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-0.12.2 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-0.12.1 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-0.12.0 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-0.11.2 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-0.11.1 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-0.11.0 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-0.10.2 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-0.10.1 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-0.10.0 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-0.9.1 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-0.9.0 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-0.8.3 lib/cloudstack-cli/commands/storage_pool.rb
cloudstack-cli-0.8.2 lib/cloudstack-cli/commands/storage_pool.rb