class Chef::Knife::JoyentServerMetadataUpdate

Public Instance Methods

run() click to toggle source
# File lib/chef/knife/joyent_server_metadata_update.rb, line 18
def run
  if config[:metadata].empty?
    show_usage
    exit 1
  end

  unless name_args.size === 1
    show_usage
    exit 1
  end

  id = name_args.first

  server = self.connection.servers.get(id)
  unless server
    puts ui.error("Server with id: #{id} not found")
    exit 1
  end

  if server.update_metadata(config[:metadata])
    puts ui.color("Updated metadata on #{id}", :cyan)
    exit 0
  else
    puts ui.error("Metadata update failed")
    exit 1
  end
rescue => e
  output_error(e)
end