Method: HPE3PAR_API#create_volume

Defined in:
lib/puppet/util/hpe3par_api.rb

#create_volume(volume_name, cpg_name, size, size_unit, type = 'thin', compression = false, snap_cpg = nil, debug = false) ⇒ Object



420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
# File 'lib/puppet/util/hpe3par_api.rb', line 420

def create_volume(volume_name, cpg_name, size, size_unit, type = 'thin',
                  compression = false, snap_cpg = nil, debug = false)
  cl = Hpe3parSdk::Client.new(@rest_url, debug: debug, app_type: 'puppet-3par')
  size_MiB = convert_to_binary_multiple(size, size_unit)
  tpvv = false
  tdvv = false
  if type == 'thin'
    tpvv = true
  elsif type == 'thin_dedupe'
    tdvv = true
  end

  optional_hash= {
      :tpvv => tpvv,
      :tdvv => tdvv,
      :compression => compression,
      :snapCPG => snap_cpg
  }

  begin
    cl.(@url.user, @url.password)
    cl.create_volume(volume_name, cpg_name, size_MiB,
                     optional_hash)
  rescue Hpe3parSdk::HPE3PARException => ex
    raise ex
  ensure
    cl.logout
  end
end