~citrix-openstack/glance/xenapi

« back to all changes in this revision

Viewing changes to bin/glance-api

  • Committer: Tarmac
  • Author(s): jaypipes at gmail
  • Date: 2011-02-10 01:16:58 UTC
  • mfrom: (62.3.16 use-paste-deploy)
  • Revision ID: tarmac-20110210011658-bjzu8qo36iach4mg
Removes lockfile and custom python-daemon server initialization
in favour of paste.deploy.

Show diffs side-by-side

added added

removed removed

Lines of Context:
32
32
 
33
33
from glance import version
34
34
from glance.common import config
35
 
from glance.common import server
36
 
import glance.store
 
35
from glance.common import wsgi
37
36
 
38
37
 
39
38
def create_options(parser):
43
42
 
44
43
    :param parser: The option parser
45
44
    """
46
 
    parser.add_option('-H', '--host',
47
 
                      dest="host", metavar="ADDRESS",
48
 
                      default="0.0.0.0",
49
 
                      help="Address of Glance API server. "
50
 
                           "Default: %default")
51
 
    parser.add_option('-p', '--port',
52
 
                      dest="port", metavar="PORT", type=int,
53
 
                      default=9292,
54
 
                      help="Port the Glance API server listens on. "
55
 
                           "Default: %default")
56
 
    parser.add_option('--registry-host',
57
 
                      dest="registry_host", metavar="ADDRESS",
58
 
                      default="0.0.0.0",
59
 
                      help="Address of a Glance Registry server. "
60
 
                           "Default: %default")
61
 
    parser.add_option('--registry-port',
62
 
                      dest="registry_port", metavar="PORT", type=int,
63
 
                      default=9191,
64
 
                      help="Port a Glance Registry server listens on. "
65
 
                           "Default: %default")
66
 
 
67
 
    glance.store.add_options(parser)
68
45
    config.add_common_options(parser)
69
 
    config.add_daemon_options(parser)
70
46
    config.add_log_options('glance-api', parser)
71
47
 
72
48
 
73
 
def main(_args):
74
 
    # NOTE(sirp): importing in main so that eventlet is imported AFTER
75
 
    # daemonization.  See https://bugs.launchpad.net/bugs/687661
76
 
    from glance.common import wsgi
77
 
    from glance.server import API
78
 
    server = wsgi.Server()
79
 
    server.start(API(options), options['port'], host=options['host'])
80
 
    server.wait()
81
 
 
82
 
 
83
49
if __name__ == '__main__':
84
50
    oparser = optparse.OptionParser(version='%%prog %s'
85
51
                                    % version.version_string())
86
52
    create_options(oparser)
87
 
    conf_options = config.get_config_file_options()
88
 
    (options, args) = config.parse_options(oparser, defaults=conf_options)
 
53
    (options, args) = config.parse_options(oparser)
89
54
 
90
55
    try:
91
56
        config.setup_logging(options)
92
 
        server.serve('glance-api', main, options, args)
 
57
        conf, app = config.load_paste_app('glance-api', options, args)
 
58
 
 
59
        server = wsgi.Server()
 
60
        server.start(app, int(conf['bind_port']), conf['bind_host'])
 
61
        server.wait()
93
62
    except RuntimeError, e:
94
63
        sys.exit("ERROR: %s" % e)