class Chef::Knife::OneandoneServerHddAdd
Public Instance Methods
run()
click to toggle source
# File lib/chef/knife/oneandone_server_hdd_add.rb, line 20 def run $stdout.sync = true init_client server = OneAndOne::Server.new begin server.get(server_id: config[:id]) rescue StandardError => e if e.message.include? 'NOT_FOUND' ui.error("Server ID #{config[:id]} not found") else ui.error(e.message) end exit 1 end hdds = [] name_args.each do |size| hdds << { 'size' => size, 'is_main' => false } end if hdds.empty? ui.error('At least one value for HDD size must be specified.') else server.add_hdds(hdds: hdds) if config[:wait] puts ui.color('Adding, wait for the operation to complete...', :cyan).to_s server.wait_for puts "New HDD(s) is/are #{ui.color('added', :bold)}" else puts "New HDD(s) is/are #{ui.color('being added', :bold)}" end end end