fluke/devops-client/lib/devops-client/options/image_options.rb

48 lines
1.2 KiB
Ruby
Raw Normal View History

2014-05-08 15:34:26 +04:00
require "devops-client/options/common_options"
class ImageOptions < CommonOptions
commands :create, :delete, :list, :show, :update
2018-04-04 22:44:39 +03:00
COMMAND_NAME = "image"
2014-05-08 15:34:26 +04:00
def initialize args, def_options
super(args, def_options)
self.header = I18n.t("headers.image")
2018-04-04 22:44:39 +03:00
self.list_params = ["[PROVIDER]"]
2014-05-08 15:34:26 +04:00
self.show_params = ["IMAGE"]
2018-04-04 22:44:39 +03:00
self.create_params = []
self.delete_params = ["IMAGE" ]
2014-05-08 15:34:26 +04:00
self.update_params = ["IMAGE", "FILE"]
end
def create_options
self.options do |parser, options|
parser.banner << self.create_banner
parser.resource_name = :image
parser.recognize_option_value(:provider)
2018-04-04 22:44:39 +03:00
parser.recognize_option_value(:provider_account)
parser.recognize_option_value(:image_id)
parser.recognize_option_value(:ssh_username)
2014-05-08 15:34:26 +04:00
end
end
def list_options
self.options do |parser, options|
parser.banner << self.list_banner
parser.recognize_option_value(:provider_account, resource_name: :image)
end
end
2015-04-14 15:29:02 +03:00
extend_options_method :list_options do |options|
if args[2] == "provider" and args[3]
options[:given_provider] = args[3]
elsif args[2]
options[:given_provider] = args[2]
end
end
2014-05-08 15:34:26 +04:00
end