Class: Cyoi::Cli::Image::ImageCliOpenStack

Inherits:
ImageCliBase show all
Defined in:
lib/cyoi/cli/provider_image/image_cli_openstack.rb

Instance Attribute Summary

Attributes inherited from ImageCliBase

#attributes, #hl, #provider_client

Instance Method Summary collapse

Methods inherited from ImageCliBase

#display_confirmation, #export_attributes, #initialize, #perform_and_return_attributes, #valid?

Constructor Details

This class inherits a constructor from Cyoi::Cli::Image::ImageCliBase

Instance Method Details

#choose_image_idObject



8
9
10
11
12
13
14
15
16
# File 'lib/cyoi/cli/provider_image/image_cli_openstack.rb', line 8

def choose_image_id
  hl.choose do |menu|
    menu.prompt = "Choose image: "
    images.each do |image|
      label, code = image[:label], image[:code]
      menu.choice(label) { return code }
    end
  end
end

#image_idObject



4
5
6
# File 'lib/cyoi/cli/provider_image/image_cli_openstack.rb', line 4

def image_id
  choose_image_id
end

#imagesObject



18
19
20
# File 'lib/cyoi/cli/provider_image/image_cli_openstack.rb', line 18

def images
  provider_client.fog_compute.images.map { |image| { label: image.name, code: image.id }}
end