From: Ian Jackson Date: Thu, 1 Oct 2015 10:55:47 +0000 (+0100) Subject: ts-logs-capture: Actually do hard host reboot sometimes X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=76a6c0022234793fb49d3e54ca6deee0d0300372;p=people%2Fliuw%2Fosstest.git ts-logs-capture: Actually do hard host reboot sometimes The logic in try_fetch_logs for setting $ok was wrong. $ok would be set if we reached the end of any outer (pattern) loop iteration. If the host is actually dead all the pattern expansions would fail, but some of the patterns are literals and do not need expansion. The inner (logfile) loop would say `next' if the logfile fetch failed, but that just goes onto the next logfile. So this code would always set $ok. Instead, set $ok to 1 when we successfuly fetch any logfile or successfully expanded any pattern (even if it didn't match any files). Signed-off-by: Ian Jackson Acked-by: Ian Campbell --- diff --git a/ts-logs-capture b/ts-logs-capture index b99b1db..ab6750d 100755 --- a/ts-logs-capture +++ b/ts-logs-capture @@ -78,6 +78,8 @@ END logm("logfile $logfilepat pattern expansion failed: $@"); next; } + logm("at least one pattern expansion succeeded") if !$ok; + $ok= 1; next if $logfileslist eq $logfilepat; } foreach my $logfile (split / /, $logfileslist) { @@ -97,8 +99,9 @@ END logm("logfile $logfile fetch failed: $@"); next; } + logm("at least one logfile fetched") if !$ok; + $ok= 1; } - $ok= 1; } return $ok; }