Pass tempest return code back to caller

Use case: I'm running refstack-client in a tox job, which always appears
to succeed, even when the test fails.

Currently, unless it throws a backtrace on it's own, the refstack-client
script always returns successfully, even when the tempest job it's
running fails.

This change simply passes non-zero return codes back through as the
refstack-client's return code.

Only the test() method was affected here, because it's the only
externally callable function that uses subprocess. Other functions can
now return non-zero return codes as well.

Change-Id: I0ce786babcbee47da1c038a3478bcd4de0dff16e
This commit is contained in:
Dolph Mathews 2016-02-04 15:19:07 +00:00
parent 165026d771
commit 1b7f413b60
2 changed files with 2 additions and 1 deletions

View File

@ -28,4 +28,4 @@ from refstack_client import refstack_client
if __name__ == '__main__':
args = refstack_client.parse_cli_args()
test = refstack_client.RefstackClient(args)
getattr(test, args.func)()
raise SystemExit(getattr(test, args.func)())

View File

@ -459,6 +459,7 @@ class RefstackClient:
else:
self.logger.error("Problem executing Tempest script. Exit code %d",
process.returncode)
return process.returncode
def upload(self):
'''Perform upload to RefStack URL.'''