Start API after conductor is started in the combined executable

Change-Id: Icaffb5d346001d62e5c9522708dd44f01faeb3a6
This commit is contained in:
Dmitry Tantsur 2022-03-24 18:07:51 +01:00
parent 30b0c56d23
commit c5ef4b9203
2 changed files with 9 additions and 3 deletions

View File

@ -46,12 +46,12 @@ def main():
conductor_cmd.issue_startup_warnings(CONF)
launcher.launch_service(mgr)
wsgi = wsgi_service.WSGIService('ironic_api', CONF.api.enable_ssl_api)
launcher.launch_service(wsgi)
# NOTE(dtantsur): handling start-up failures before launcher.wait() helps
# notify systemd about them. Otherwise the launcher will report successful
# service start-up before checking the threads.
mgr.wait_for_start()
wsgi = wsgi_service.WSGIService('ironic_api', CONF.api.enable_ssl_api)
launcher.launch_service(wsgi)
sys.exit(launcher.wait())

View File

@ -0,0 +1,6 @@
---
fixes:
- |
The combined ``ironic`` executable now starts the API only after the
built-in conductor starts. This avoids error 500 on requests while
the conductor is starting.