summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ironic/cmd/singleprocess.py6
-rw-r--r--releasenotes/notes/allinone-4ca71f150a718811.yaml6
2 files changed, 9 insertions, 3 deletions
diff --git a/ironic/cmd/singleprocess.py b/ironic/cmd/singleprocess.py
index 675bd1bc2..28100efe9 100644
--- a/ironic/cmd/singleprocess.py
+++ b/ironic/cmd/singleprocess.py
@@ -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())
diff --git a/releasenotes/notes/allinone-4ca71f150a718811.yaml b/releasenotes/notes/allinone-4ca71f150a718811.yaml
new file mode 100644
index 000000000..e99091fe1
--- /dev/null
+++ b/releasenotes/notes/allinone-4ca71f150a718811.yaml
@@ -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.