[pve-devel] [PATCH v8 common 2/2] tools: download_file_from_url: adapt error messages to start at new line
Lorenz Stechauner
l.stechauner at proxmox.com
Wed Jun 16 10:46:14 CEST 2021
On 15.06.21 16:23, Thomas Lamprecht wrote:
> On 15.06.21 16:08, Lorenz Stechauner wrote:
>> the front end expects the error message to be the first part of the
>> last line.
>> ---
>> src/PVE/Tools.pm | 10 ++++++----
>> 1 file changed, 6 insertions(+), 4 deletions(-)
>>
>> diff --git a/src/PVE/Tools.pm b/src/PVE/Tools.pm
>> index c90810c..c02c259 100644
>> --- a/src/PVE/Tools.pm
>> +++ b/src/PVE/Tools.pm
>> @@ -1869,11 +1869,12 @@ sub download_file_from_url {
>> my $checksum_got = get_file_hash($checksum_algorithm, $dest);
>>
>> if (lc($checksum_got) eq lc($checksum_expected)) {
>> - print "OK, got correct file already, no need to download\n";
>> + print " OK, got correct file already, no need to download\n";
> this was done by design, as there's a ".." before that
>
>> return;
>> } else {
>> + print "\n";
>> # we could re-download, but may not be safe so just abort for now..
>> - die "mismatch (got '$checksum_got' != expect '$checksum_expected'), aborting\n";
>> + die "checksum mismatch: got '$checksum_got' != expect '$checksum_expected', aborting\n";
> ok, slightly nicer
>
>> }
>> }
>>
>> @@ -1906,9 +1907,10 @@ sub download_file_from_url {
>> my $checksum_got = get_file_hash($checksum_algorithm, $tmpdest);
>>
>> if (lc($checksum_got) eq lc($checksum_expected)) {
>> - print "OK, checksum verified\n";
>> + print " OK, checksum verified\n";
> as above, the previous print has a ".." at the end so I left any whitespace out.
>
>> } else {
>> - die "ERROR, checksum mismatch: got '$checksum_got' != expect '$checksum_expected'\n";
>> + print "\n";
> If, we could just include the "\n" in the start of the die, but we do not really
> add such newlines for separating errors in general in task logs, so I'd rather
> leave this one out.
The new line at the beginning of die does not work either :(
calculating checksum of existing file...TASK ERROR: checksum mismatch:
got '73e74eef3d998d522f92295016d92fdc' != expect 'asdf', aborting
The new line was converted to an additional space and the message was
prefixed with "TASK ERROR: "
The only way I can come up with to make this work for the frontend, is
to use a print statement before the die...
>
>> + die "checksum mismatch: got '$checksum_got' != expect '$checksum_expected'\n";
>
>
>> }
>> }
>>
>>
More information about the pve-devel
mailing list