Method: Fog::OpenStack::Image::V2::Mock#create_image

Defined in:
lib/fog/openstack/image/v2/requests/create_image.rb

#create_image(attributes) ⇒ Object



22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
# File 'lib/fog/openstack/image/v2/requests/create_image.rb', line 22

def create_image(attributes)
  response = Excon::Response.new
  response.status = 201

  image_id = Fog::Mock.random_hex(32)
  image = data[:images][image_id] = {
    'tags'             => attributes[:tags] || [],
    'name'             => attributes[:name],
    'size'             => nil,
    'min_disk'         => attributes[:min_disk] || 0,
    'disk_format'      => attributes[:disk_format] || 'raw',
    'created_at'       => Time.now.strftime('%FT%T.%6N'),
    'container_format' => attributes[:container_format] || 'bare',
    'deleted_at'       => nil,
    'updated_at'       => Time.now.strftime('%FT%T.%6N'),
    'checksum'         => nil,
    'id'               => image_id,
    'visibility'       => attributes[:visibility] || 'public',
    'status'           => 'queued',
    'min_ram'          => attributes[:min_ram] || 0,
    'owner'            => attributes[:owner] || Fog::Mock.random_hex(32)
  }
  response.body = image
  response
end