X-Git-Url: https://git.proxmox.com/?p=pve-common.git;a=blobdiff_plain;f=src%2FPVE%2FJSONSchema.pm;h=41a66528681e1c40812531798826462bb90c3c48;hp=f014dc3f15b5c73dbadb05f865d435f70e749916;hb=e97f807c388c10250f442b1f16c5315df2ffc2af;hpb=ff2bf45fab80f839a307d07a5ffa57a47b65b1aa diff --git a/src/PVE/JSONSchema.pm b/src/PVE/JSONSchema.pm index f014dc3..41a6652 100644 --- a/src/PVE/JSONSchema.pm +++ b/src/PVE/JSONSchema.pm @@ -1139,6 +1139,11 @@ my $default_schema_noref = { }, }, }, + print_width => { + type => "integer", + description => "For CLI context, this defines the maximal width to print before truncating", + optional => 1, + }, } }; @@ -1333,7 +1338,7 @@ sub method_get_child_link { # a way to parse command line parameters, using a # schema to configure Getopt::Long sub get_options { - my ($schema, $args, $arg_param, $fixed_param, $pwcallback, $param_mapping_hash) = @_; + my ($schema, $args, $arg_param, $fixed_param, $param_mapping_hash) = @_; if (!$schema || !$schema->{properties}) { raise("too many arguments\n", code => HTTP_BAD_REQUEST) @@ -1362,11 +1367,6 @@ sub get_options { # optional and call the mapping function afterwards. push @getopt, "$prop:s"; push @interactive, [$prop, $mapping->{func}]; - } elsif ($prop eq 'password' && $pwcallback) { - # we do not accept plain password on input line, instead - # we turn this into a boolean option and ask for password below - # using $pwcallback() (for security reasons). - push @getopt, "$prop"; } elsif ($pd->{type} eq 'boolean') { push @getopt, "$prop:s"; } else { @@ -1418,14 +1418,6 @@ sub get_options { } } - if (my $pd = $schema->{properties}->{password}) { - if ($pd->{type} ne 'boolean' && $pwcallback) { - if ($opts->{password} || !$pd->{optional}) { - $opts->{password} = &$pwcallback(); - } - } - } - foreach my $entry (@interactive) { my ($opt, $func) = @$entry; my $pd = $schema->{properties}->{$opt};