Return non-zero exit code on failures

Launcher.wait() does not raise, it returns an integer code. Propagate it
to sys.exit() so that failures are correctly recognized.

Change-Id: I38bf39e4e4845415640b3468e9fb3029f70dcded
This commit is contained in:
Dmitry Tantsur 2022-01-26 14:39:16 +01:00
parent 16dc23c3c5
commit e841fa0545
4 changed files with 8 additions and 3 deletions

@ -39,7 +39,7 @@ def main():
launcher = ironic_service.process_launcher()
server = wsgi_service.WSGIService('ironic_api', CONF.api.enable_ssl_api)
launcher.launch_service(server, workers=server.workers)
launcher.wait()
sys.exit(launcher.wait())
if __name__ == '__main__':

@ -67,7 +67,7 @@ def main():
issue_startup_warnings(CONF)
launcher = service.launch(CONF, mgr, restart_method='mutate')
launcher.wait()
sys.exit(launcher.wait())
if __name__ == '__main__':

@ -49,4 +49,4 @@ def main():
wsgi = wsgi_service.WSGIService('ironic_api', CONF.api.enable_ssl_api)
launcher.launch_service(wsgi)
launcher.wait()
sys.exit(launcher.wait())

@ -0,0 +1,5 @@
---
fixes:
- |
Services (``ironic``, ``ironic-api``, ``ironic-conductor``) now correctly
return a non-zero exit code on start-up failures.