iotests: avoid broken pipe with certtool
commit3e6f45446b11ccc20b4b751f70331f03d70369b8
authorDaniel P. Berrangé <berrange@redhat.com>
Wed, 20 Feb 2019 14:58:19 +0000 (20 14:58 +0000)
committerEric Blake <eblake@redhat.com>
Tue, 26 Feb 2019 16:45:37 +0000 (26 10:45 -0600)
treea92dc08d5e2b7f3a9e85d4b4adde02fcc05dc4f9
parent84f8b840a2d9ed248c80b3601d2d212cdf60cecf
iotests: avoid broken pipe with certtool

When we run "certtool 2>&1 | head -1" the latter command is likely to
complete and exit before certtool has written everything it wants to
stderr. In at least the RHEL-7 gnutls 3.3.29 this causes certtool to
quit with broken pipe before it has finished writing the desired
output file to disk. This causes non-deterministic failures of the
iotest 233 because the certs are sometimes zero length files.
If certtool fails the "head -1" means we also lose any useful error
message it would have printed.

Thus this patch gets rid of the pipe and post-processes the output in a
more flexible & reliable manner.

Reported-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
Message-Id: <20190220145819.30969-3-berrange@redhat.com>
Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Eric Blake <eblake@redhat.com>
tests/qemu-iotests/common.tls