For option arguments that must be members of an array, do the check in the option parsing by providing an array of allowed option arguments (e.g. vm create -s bad). Emit better errors for options arguments that should be integers (e.g. fw add-rule -s/-e), and for regular arguments that should be integers (e.g. lb create src-port/dst-port). Include help output in additional cases: * invalid id formats with slashes * invalid/duplicate/missing fields used when multiple fields separated by a comma is allowed * invalid object references when using post subcommands * invalid location for list -l option
16 lines
376 B
Ruby
16 lines
376 B
Ruby
# frozen_string_literal: true
|
|
|
|
UbiCli.on("fw").run_on("delete-rule") do
|
|
desc "Remove a firewall rule"
|
|
|
|
banner "ubi fw (location/fw-name | fw-id) delete-rule rule-id"
|
|
|
|
args 1
|
|
|
|
run do |rule_id, _, cmd|
|
|
check_no_slash(rule_id, "invalid rule id format", cmd)
|
|
sdk_object.delete_rule(rule_id)
|
|
response("Firewall rule, if it existed, has been deleted")
|
|
end
|
|
end
|