diff options
| author | Josh Kearney <josh@jk0.org> | 2011-06-28 17:05:41 -0500 |
|---|---|---|
| committer | Josh Kearney <josh@jk0.org> | 2011-06-28 17:05:41 -0500 |
| commit | d59e576dfeccdbd7ee82ea2803b57e24dcba2c22 (patch) | |
| tree | ea8c17a46c7fe9f354e48aa6b9aa754586d13875 /bin/nova-api | |
| parent | d0ff8a737111e9155fd59816afa5c4fc2b34bb4c (diff) | |
| parent | 9ae4fbdef0a5f4c925c7e3d546edea06e608e39b (diff) | |
| download | nova-d59e576dfeccdbd7ee82ea2803b57e24dcba2c22.tar.gz nova-d59e576dfeccdbd7ee82ea2803b57e24dcba2c22.tar.xz nova-d59e576dfeccdbd7ee82ea2803b57e24dcba2c22.zip | |
Merged trunk
Diffstat (limited to 'bin/nova-api')
| -rwxr-xr-x | bin/nova-api | 53 |
1 files changed, 21 insertions, 32 deletions
diff --git a/bin/nova-api b/bin/nova-api index a1088c23d..ea99a1b48 100755 --- a/bin/nova-api +++ b/bin/nova-api @@ -1,5 +1,4 @@ #!/usr/bin/env python -# pylint: disable=C0103 # vim: tabstop=4 shiftwidth=4 softtabstop=4 # Copyright 2010 United States Government as represented by the @@ -18,44 +17,34 @@ # See the License for the specific language governing permissions and # limitations under the License. -"""Starter script for Nova API.""" +"""Starter script for Nova API. + +Starts both the EC2 and OpenStack APIs in separate processes. + +""" -import gettext -import os import sys -# If ../nova/__init__.py exists, add ../ to Python search path, so that -# it will override what happens to be installed in /usr/(local/)lib/python... -possible_topdir = os.path.normpath(os.path.join(os.path.abspath(sys.argv[0]), - os.pardir, - os.pardir)) -if os.path.exists(os.path.join(possible_topdir, 'nova', '__init__.py')): - sys.path.insert(0, possible_topdir) +import nova.service +import nova.utils + -gettext.install('nova', unicode=1) +def main(): + """Launch EC2 and OSAPI services.""" + nova.utils.Bootstrapper.bootstrap_binary(sys.argv) -from nova import flags -from nova import log as logging -from nova import service -from nova import utils -from nova import version -from nova import wsgi + ec2 = nova.service.WSGIService("ec2") + osapi = nova.service.WSGIService("osapi") + launcher = nova.service.Launcher() + launcher.launch_service(ec2) + launcher.launch_service(osapi) -LOG = logging.getLogger('nova.api') + try: + launcher.wait() + except KeyboardInterrupt: + launcher.stop() -FLAGS = flags.FLAGS if __name__ == '__main__': - utils.default_flagfile() - FLAGS(sys.argv) - logging.setup() - LOG.audit(_("Starting nova-api node (version %s)"), - version.version_string_with_vcs()) - LOG.debug(_("Full set of FLAGS:")) - for flag in FLAGS: - flag_get = FLAGS.get(flag, None) - LOG.debug("%(flag)s : %(flag_get)s" % locals()) - - service = service.serve_wsgi(service.ApiService) - service.wait() + sys.exit(main()) |
