Fixes bug #805604 "Multiprocess nova-api does not handles SIGTERM correctly."
This commit is contained in:
1
.mailmap
1
.mailmap
@@ -51,3 +51,4 @@
|
|||||||
<ilyaalekseyev@acm.org> <ilya@oscloud.ru>
|
<ilyaalekseyev@acm.org> <ilya@oscloud.ru>
|
||||||
<reldan@oscloud.ru> <enugaev@griddynamics.com>
|
<reldan@oscloud.ru> <enugaev@griddynamics.com>
|
||||||
<kshileev@gmail.com> <kshileev@griddynamics.com>
|
<kshileev@gmail.com> <kshileev@griddynamics.com>
|
||||||
|
<nsokolov@griddynamics.com> <nsokolov@griddynamics.net>
|
||||||
|
|||||||
1
Authors
1
Authors
@@ -68,6 +68,7 @@ MORITA Kazutaka <morita.kazutaka@gmail.com>
|
|||||||
Muneyuki Noguchi <noguchimn@nttdata.co.jp>
|
Muneyuki Noguchi <noguchimn@nttdata.co.jp>
|
||||||
Nachi Ueno <ueno.nachi@lab.ntt.co.jp>
|
Nachi Ueno <ueno.nachi@lab.ntt.co.jp>
|
||||||
Naveed Massjouni <naveedm9@gmail.com>
|
Naveed Massjouni <naveedm9@gmail.com>
|
||||||
|
Nikolay Sokolov <nsokolov@griddynamics.com>
|
||||||
Nirmal Ranganathan <nirmal.ranganathan@rackspace.com>
|
Nirmal Ranganathan <nirmal.ranganathan@rackspace.com>
|
||||||
Paul Voccio <paul@openstack.org>
|
Paul Voccio <paul@openstack.org>
|
||||||
Renuka Apte <renuka.apte@citrix.com>
|
Renuka Apte <renuka.apte@citrix.com>
|
||||||
|
|||||||
@@ -24,8 +24,10 @@ Starts both the EC2 and OpenStack APIs in separate processes.
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
import os
|
import os
|
||||||
|
import signal
|
||||||
import sys
|
import sys
|
||||||
|
|
||||||
|
|
||||||
possible_topdir = os.path.normpath(os.path.join(os.path.abspath(
|
possible_topdir = os.path.normpath(os.path.join(os.path.abspath(
|
||||||
sys.argv[0]), os.pardir, os.pardir))
|
sys.argv[0]), os.pardir, os.pardir))
|
||||||
if os.path.exists(os.path.join(possible_topdir, "nova", "__init__.py")):
|
if os.path.exists(os.path.join(possible_topdir, "nova", "__init__.py")):
|
||||||
@@ -46,6 +48,8 @@ def main():
|
|||||||
launcher.launch_service(ec2)
|
launcher.launch_service(ec2)
|
||||||
launcher.launch_service(osapi)
|
launcher.launch_service(osapi)
|
||||||
|
|
||||||
|
signal.signal(signal.SIGTERM, lambda *_: launcher.stop())
|
||||||
|
|
||||||
try:
|
try:
|
||||||
launcher.wait()
|
launcher.wait()
|
||||||
except KeyboardInterrupt:
|
except KeyboardInterrupt:
|
||||||
|
|||||||
Reference in New Issue
Block a user