create_backup(_options = {})
click to toggle source
def create_backup(_options = {})
response = Excon::Response.new
response.status = 202
response.body = {
"backup" => {
"id" => "1",
"volume_id" => "2",
"name" => "backup 1",
"status" => "available",
"size" => 1,
"object_count" => 16,
"container" => "testcontainer",
}
}
response
end
create_volume_type(_options = {})
click to toggle source
def create_volume_type(_options = {})
response = Excon::Response.new
response.status = 202
response.body = {
"volume_type" => {
"id" => "6685584b-1eac-4da6-b5c3-555430cf68ff",
"name" => "vol-type-001",
"extra_specs" => {
"capabilities" => "gpu"
}
}
}
response
end
delete_backup(_backup_id)
click to toggle source
def delete_backup(_backup_id)
response = Excon::Response.new
response.status = 204
response
end
delete_snapshot(_snapshot_id)
click to toggle source
def delete_snapshot(_snapshot_id)
response = Excon::Response.new
response.status = 202
response
end
delete_volume(_volume_id)
click to toggle source
def delete_volume(_volume_id)
response = Excon::Response.new
response.status = 204
response
end
delete_volume_type(_volume_type_id)
click to toggle source
def delete_volume_type(_volume_type_id)
response = Excon::Response.new
response.status = 204
response
end
extend_volume(_volume_id, _size)
click to toggle source
def extend_volume(_volume_id, _size)
response = Excon::Response.new
response.status = 202
response
end
get_backup_details(_backup_id)
click to toggle source
def get_backup_details(_backup_id)
response = Excon::Response.new
response.status = 200
response.body = {
"backup" => {
"id" => "1",
"volume_id" => "2",
"name" => "backup 1",
"status" => "available",
"size" => 1,
"object_count" => 16,
"container" => "testcontainer",
}
}
response
end
get_quota(tenant_id)
click to toggle source
def get_quota(tenant_id)
response = Excon::Response.new
response.status = 200
response.body = {
'quota_set' => (data[:quota_updated] || data[:quota]).merge('id' => tenant_id)
}
response
end
get_quota_defaults(tenant_id)
click to toggle source
def get_quota_defaults(tenant_id)
response = Excon::Response.new
response.status = 200
response.body = {
'quota_set' => data[:quota].merge('id' => tenant_id)
}
response
end
get_quota_usage(tenant_id)
click to toggle source
def get_quota_usage(tenant_id)
response = Excon::Response.new
response.status = 200
response.body = {
'quota_set' => {
'gigabytes' => {
'reserved' => 0,
'limit' => -1,
'in_use' => 160
},
'snapshots' => {
'reserved' => 0,
'limit' => 50,
'in_use' => 3
},
'volumes' => {
'reserved' => 0,
'limit' => 50,
'in_use' => 5
},
'id' => tenant_id
}
}
response
end
get_volume_type_details(_volume_type_id)
click to toggle source
def get_volume_type_details(_volume_type_id)
response = Excon::Response.new
response.status = 200
response.body = {
"volume_type" => {
"id" => "1",
"name" => "type 1",
"extra_specs" => {
"volume_backend_name" => "type 1 backend name"
}
}
}
response
end
list_backups_detailed(_options = {})
click to toggle source
def list_backups_detailed(_options = {})
response = Excon::Response.new
response.status = 200
data[:backups] ||= [
{
"id" => "1",
"volume_id" => "2",
"name" => "backup 1",
"status" => "available",
"size" => 1,
"object_count" => 16,
"container" => "testcontainer",
},
{
"id" => "2",
"volume_id" => "2",
"name" => "backup 2",
"status" => "available",
"size" => 1,
"object_count" => 16,
"container" => "testcontainer",
}
]
response.body = { 'backups' => data[:backups] }
response
end
list_snapshots(_detailed = true, _options = {})
click to toggle source
def list_snapshots(_detailed = true, _options = {})
response = Excon::Response.new
response.status = 200
response.body = {
'snapshots' => [get_snapshot_details.body["snapshot"]]
}
response
end
list_snapshots_detailed(_options = {})
click to toggle source
def list_snapshots_detailed(_options = {})
response = Excon::Response.new
response.status = 200
response.body = {
'snapshots' => [get_snapshot_details.body["snapshot"]]
}
response
end
list_volume_types(_options = {})
click to toggle source
def list_volume_types(_options = {})
response = Excon::Response.new
response.status = 200
data[:volume_types] ||= [
{
"id" => "1",
"name" => "type 1",
"extra_specs" => {
"volume_backend_name" => "type 1 backend name"
}
},
{
"id" => "2",
"name" => "type 2",
"extra_specs" => {
"volume_backend_name" => "type 2 backend name"
}
}
]
response.body = {'volume_types' => data[:volume_types]}
response
end
list_zones(_options = {})
click to toggle source
def list_zones(_options = {})
Excon::Response.new(
:body => {
"availabilityZoneInfo" => [
{
"zoneState" => {"available" => true},
"zoneName" => "nova"
}
]
},
:status => 200
)
end
set_tenant(_tenant)
click to toggle source
def set_tenant(_tenant)
true
end
update_quota(_tenant_id, options = {})
click to toggle source
def update_quota(_tenant_id, options = {})
data[:quota_updated] = data[:quota].merge options
response = Excon::Response.new
response.status = 200
response.body = {'quota_set' => data[:quota_updated]}
response
end
update_snapshot(snapshot_id, options = {})
click to toggle source
def update_snapshot(snapshot_id, options = {})
unless snapshot_id
raise ArgumentError, 'snapshot_id is required'
end
response = Excon::Response.new
if snapshot = data[:snapshots][snapshot_id]
response.status = 200
snapshot['display_name'] = options['display_name'] if options['display_name']
snapshot['display_description'] = options['display_description'] if options['display_description']
snapshot['name'] = options['name'] if options['name']
snapshot['description'] = options['description'] if options['description']
snapshot['metadata'] = options['metadata'] if options['metadata']
response.body = {'snapshot' => snapshot}
response
else
raise Fog::HP::BlockStorageV2::NotFound
end
end
update_volume(volume_id, data = {})
click to toggle source
def update_volume(volume_id, data = {})
response = Excon::Response.new
response.status = 200
response.body = {'volume' => data.merge('id' => volume_id)}
response
end
update_volume_type(_volume_type_id, _options = {})
click to toggle source
def update_volume_type(_volume_type_id, _options = {})
response = Excon::Response.new
response.status = 202
response.body = {
"volume_type" => {
"id" => "6685584b-1eac-4da6-b5c3-555430cf68ff",
"name" => "vol-type-001",
"extra_specs" => {
"capabilities" => "gpu"
}
}
}
response
end