def help
puts "#{$0} package [opts] [list]"
puts "#{$0} package [opts] create <new-package-name>"
- puts "#{$0} package [opts] update <numeric-package-id> [name]"
- puts "#{$0} package [opts] delete <numeric-package-id>"
+ puts "#{$0} package [opts] update [numeric-package-id] [name]"
+ puts "#{$0} package [opts] delete [numeric-package-id]"
puts "Options:"
puts " -f --format=<pretty|json> Set output format"
puts " -p --project=<project> Target project (numeric id or name)"
end
def update
- target_id = ARGV.shift
- args = {name: ARGV.shift}
+ _set_package_id
+ args = {}
+ if ARGV[1].to_s != ""
+ args[:name] = ARGV[1]
+ end
if @visibility
args[:visibility] = @visibility
end
- p = api.update_package target_proj, target_id, args
- logger.info "Package #{target_id} has been updated."
+ logger.debug "Updating package #{target_package} as #{args.inspect}"
+ p = api.update_package target_proj, target_package, args
+ logger.info "Package #{target_package} has been updated."
puts format_package(p)
end
def delete
- target_id = ARGV.shift
- p = api.delete_package target_proj, target_id
- logger.info "Package #{target_id} has been deleted."
+ _set_package_id
+ p = api.delete_package target_proj, target_package
+ logger.info "Package #{target_package} has been deleted."
+ end
+
+ def _set_package_id
+ return if ARGV[0].to_i == 0
+ @target_package = ARGV[0].to_i
end
end