class Chef::Knife::JoyentTagCreate

Public Instance Methods

run() click to toggle source
# File lib/chef/knife/joyent_tag_create.rb, line 11
def run
  server = name_args[0]
  tagkey = name_args[1]
  tagvalue = name_args[2]

  unless server || tagkey || tagvalue
    show_usage
    exit 1
  end

  tags = [
    ui.color('Name', :bold),
    ui.color('Value', :bold),
  ]

  self.connection.servers.get(server).add_tags({tagkey => tagvalue}).each do |k, v|
    tags << k
    tags << v
  end

  puts ui.color("Updated tags for #{server}", :cyan)
  puts ui.list(tags, :uneven_columns_across, 2)
  exit 0
rescue => e
  output_error(e)
  exit 1
end