class Chef::Knife::JoyentFwCreate

Public Instance Methods

run() click to toggle source
# File lib/chef/knife/joyent_fw_create.rb, line 23
def run
  unless config[:rule]
    show_usage
    exit 1
  end

  res = self.connection.request(
    :method => "POST",
    :path => "/my/fwrules",
    :body => {
      "enabled" => config[:enabled],
      "rule" => config[:rule],
    }
  )

  unless res.status == 201
    output_error(res)
  else
    r = res.body

    ui.info "Created Firewall Rule: #{r["id"]}"
    msg_pair "RULE", r["rule"]
    msg_pair "ENABLED", (r["enabled"] ? ui.color("✓ YES", :cyan) : "✗ NO")
  end
rescue => e
  output_error(e)
end