summaryrefslogtreecommitdiffstats
path: root/bin
diff options
context:
space:
mode:
authorCerberus <matt.dietz@rackspace.com>2011-03-09 13:47:21 -0600
committerCerberus <matt.dietz@rackspace.com>2011-03-09 13:47:21 -0600
commitaf894c1f171212e722f5d0b8042e2c205df2aee4 (patch)
tree3b173bd609b53ee08b98ad847c229c526a4baad4 /bin
parent80a6dc5504378ae3d96829d96c02f50b9daa3029 (diff)
parent52a623a2a991e0e091852f8db0317aae9898cf6c (diff)
downloadnova-af894c1f171212e722f5d0b8042e2c205df2aee4.tar.gz
nova-af894c1f171212e722f5d0b8042e2c205df2aee4.tar.xz
nova-af894c1f171212e722f5d0b8042e2c205df2aee4.zip
Merge from trunk
Diffstat (limited to 'bin')
-rwxr-xr-xbin/nova-api49
1 files changed, 5 insertions, 44 deletions
diff --git a/bin/nova-api b/bin/nova-api
index 0b2a44c88..06bb855cb 100755
--- a/bin/nova-api
+++ b/bin/nova-api
@@ -36,51 +36,15 @@ gettext.install('nova', unicode=1)
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
+
LOG = logging.getLogger('nova.api')
FLAGS = flags.FLAGS
-flags.DEFINE_string('paste_config', "api-paste.ini",
- 'File name for the paste.deploy config for nova-api')
-flags.DEFINE_string('ec2_listen', "0.0.0.0",
- 'IP address for EC2 API to listen')
-flags.DEFINE_integer('ec2_listen_port', 8773, 'port for ec2 api to listen')
-flags.DEFINE_string('osapi_listen', "0.0.0.0",
- 'IP address for OpenStack API to listen')
-flags.DEFINE_integer('osapi_listen_port', 8774, 'port for os api to listen')
-flags.DEFINE_flag(flags.HelpFlag())
-flags.DEFINE_flag(flags.HelpshortFlag())
-flags.DEFINE_flag(flags.HelpXMLFlag())
-
-API_ENDPOINTS = ['ec2', 'osapi']
-
-
-def run_app(paste_config_file):
- LOG.debug(_("Using paste.deploy config at: %s"), paste_config_file)
- apps = []
- for api in API_ENDPOINTS:
- config = wsgi.load_paste_configuration(paste_config_file, api)
- if config is None:
- LOG.debug(_("No paste configuration for app: %s"), api)
- continue
- LOG.debug(_("App Config: %(api)s\n%(config)r") % locals())
- LOG.info(_("Running %s API"), api)
- app = wsgi.load_paste_app(paste_config_file, api)
- apps.append((app, getattr(FLAGS, "%s_listen_port" % api),
- getattr(FLAGS, "%s_listen" % api)))
- if len(apps) == 0:
- LOG.error(_("No known API applications configured in %s."),
- paste_config_file)
- return
-
- server = wsgi.Server()
- for app in apps:
- server.start(*app)
- server.wait()
-
if __name__ == '__main__':
utils.default_flagfile()
@@ -92,9 +56,6 @@ if __name__ == '__main__':
for flag in FLAGS:
flag_get = FLAGS.get(flag, None)
LOG.debug("%(flag)s : %(flag_get)s" % locals())
- conf = wsgi.paste_config_file(FLAGS.paste_config)
- if conf:
- run_app(conf)
- else:
- LOG.error(_("No paste configuration found for: %s"),
- FLAGS.paste_config)
+
+ service = service.serve_wsgi(service.ApiService)
+ service.wait()