e0dae50dc8
This change enables H305, H307 included in newly updated hacking 0.9 all violations are fixed. H305, H307 will check if imports are grouped in stdlib, 3rd libs and OpenStack components. Change-Id: I612cae64982450a9be5207dbe26a2b52da49dac6
80 lines
2.7 KiB
Python
Executable File
80 lines
2.7 KiB
Python
Executable File
#!/usr/bin/env python
|
|
# Copyright 2010 United States Government as represented by the
|
|
# Administrator of the National Aeronautics and Space Administration.
|
|
# All Rights Reserved.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License"); you may
|
|
# not use this file except in compliance with the License. You may obtain
|
|
# a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
# License for the specific language governing permissions and limitations
|
|
# under the License.
|
|
|
|
"""Starter script for Cinder Volume."""
|
|
|
|
import os
|
|
|
|
import eventlet
|
|
|
|
if os.name == 'nt':
|
|
# eventlet monkey patching the os module causes subprocess.Popen to fail
|
|
# on Windows when using pipes due to missing non-blocking IO support.
|
|
eventlet.monkey_patch(os=False)
|
|
else:
|
|
eventlet.monkey_patch()
|
|
|
|
import sys
|
|
import warnings
|
|
|
|
warnings.simplefilter('once', DeprecationWarning)
|
|
|
|
from oslo.config import cfg
|
|
|
|
# If ../cinder/__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, 'cinder', '__init__.py')):
|
|
sys.path.insert(0, possible_topdir)
|
|
|
|
from cinder import i18n
|
|
i18n.enable_lazy()
|
|
|
|
# Need to register global_opts
|
|
from cinder.common import config # noqa
|
|
from cinder.openstack.common import log as logging
|
|
from cinder import service
|
|
from cinder import utils
|
|
from cinder import version
|
|
|
|
|
|
host_opt = cfg.StrOpt('host',
|
|
help='Backend override of host value.')
|
|
CONF = cfg.CONF
|
|
|
|
|
|
if __name__ == '__main__':
|
|
CONF(sys.argv[1:], project='cinder',
|
|
version=version.version_string())
|
|
logging.setup("cinder")
|
|
utils.monkey_patch()
|
|
launcher = service.get_launcher()
|
|
if CONF.enabled_backends:
|
|
for backend in CONF.enabled_backends:
|
|
CONF.register_opts([host_opt], group=backend)
|
|
backend_host = getattr(CONF, backend).host
|
|
host = "%s@%s" % (backend_host or CONF.host, backend)
|
|
server = service.Service.create(host=host,
|
|
service_name=backend)
|
|
launcher.launch_service(server)
|
|
else:
|
|
server = service.Service.create(binary='cinder-volume')
|
|
launcher.launch_service(server)
|
|
launcher.wait()
|