diff options
Diffstat (limited to 'moonv4/moon_utilities/moon_utilities/options.py')
-rw-r--r-- | moonv4/moon_utilities/moon_utilities/options.py | 300 |
1 files changed, 0 insertions, 300 deletions
diff --git a/moonv4/moon_utilities/moon_utilities/options.py b/moonv4/moon_utilities/moon_utilities/options.py deleted file mode 100644 index 8b8ccca4..00000000 --- a/moonv4/moon_utilities/moon_utilities/options.py +++ /dev/null @@ -1,300 +0,0 @@ -# Copyright 2015 Open Platform for NFV Project, Inc. and its contributors -# This software is distributed under the terms and conditions of the 'Apache-2.0' -# license which can be found in the file 'LICENSE' in this package distribution -# or at 'http://www.apache.org/licenses/LICENSE-2.0'. - -import os -import sys -from oslo_config import cfg -from oslo_log import log as logging -from moon_utilities import __version__ - -LOG = logging.getLogger(__name__) -CONF = cfg.CONF - -__CWD__ = os.path.dirname(os.path.abspath(__file__)) - - -def configure(domain="moon", version=__version__, usage=""): - # FIXME (dthom): put DEBUG as default log level doesn't work - extra_log_level_defaults = [ - '{}=DEBUG'.format(__name__), - ] - # LOG.setLevel(logging.DEBUG) - logging.set_defaults( - default_log_levels=logging.get_default_log_levels() + extra_log_level_defaults) - - logging.register_options(CONF) - logging.setup(CONF, domain) - - CONF.register_opts(get_opts()) - - # rabbit_group = cfg.OptGroup(name='messenger', - # title='Messenger options') - # CONF.register_group(rabbit_group) - # CONF.register_opts(get_messenger_opts(), group="messenger") - - slave_group = cfg.OptGroup(name='slave', - title='Messenger options') - CONF.register_group(slave_group) - CONF.register_opts(get_slave_opts(), group="slave") - - database_group = cfg.OptGroup(name='database', - title='Database options') - CONF.register_group(database_group) - CONF.register_opts(get_database_opts(), group="database") - - database_configuration_group = cfg.OptGroup(name='database_configuration', - title='Database configuration options') - CONF.register_group(database_configuration_group) - CONF.register_opts(get_database_configuration_opts(), group="database_configuration") - - orchestrator_group = cfg.OptGroup(name='orchestrator', - title='Orchestrator options') - CONF.register_group(orchestrator_group) - CONF.register_opts(get_orchestrator_opts(), group="orchestrator") - - secrouter_group = cfg.OptGroup(name='security_router', - title='Security Router options') - CONF.register_group(secrouter_group) - CONF.register_opts(get_security_router_opts(), group="security_router") - - manager_group = cfg.OptGroup(name='security_manager', - title='Manager options') - CONF.register_group(manager_group) - CONF.register_opts(get_manager_opts(), group="security_manager") - - secpolicy_group = cfg.OptGroup(name='security_policy', - title='Security policy options') - CONF.register_group(secpolicy_group) - CONF.register_opts(get_security_policy_opts(), group="security_policy") - - secfunction_group = cfg.OptGroup(name='security_function', - title='Security function options') - CONF.register_group(secfunction_group) - CONF.register_opts(get_security_function_opts(), group="security_function") - - interface_group = cfg.OptGroup(name='interface', - title='Interface options') - CONF.register_group(interface_group) - CONF.register_opts(get_interface_opts(), group="interface") - - keystone_group = cfg.OptGroup(name='keystone', - title='Keystone options') - CONF.register_group(keystone_group) - CONF.register_opts(get_keystone_opts(), group="keystone") - - filename = "moon.conf" - for _filename in ( - "/etc/moon/{}", - "conf/{}", - "../conf/{}", - ): - try: - default_config_files = (_filename.format(filename), ) - CONF(args=sys.argv[1:], - project=domain, - # version=pbr.version.VersionInfo('keystone').version_string(), - version=version, - usage=usage, - default_config_files=default_config_files) - except cfg.ConfigFilesNotFoundError: - continue - else: - LOG.info("Using {} configuration file".format(_filename.format(filename))) - return _filename.format(filename) - - -def get_opts(): - return [ - cfg.StrOpt('proxy', - default="", - help='Proxy server to use'), - cfg.StrOpt('dist_dir', - default="", - help='Directory where the python packages can be found'), - cfg.StrOpt('plugin_dir', - default="", - help='Directory where the python plugins can be found'), - cfg.StrOpt('docker_url', - default="unix://var/run/docker.sock", - help='Docker URL to connect to.'), - cfg.StrOpt('policy_directory', - default="/etc/moon/policies", - help='Directory containing all the intra-extension templates'), - cfg.StrOpt('root_policy_directory', - default="/etc/moon/policies/policy_root", - help='Directory containing the Root intra-extension template'), - cfg.StrOpt('master', - default="", - help='URL of the Moon Master'), - cfg.StrOpt('master_login', - default="", - help='Login to log into the Moon Master'), - cfg.StrOpt('master_password', - default="", - help='Password for the Moon Master'), - ] - - -# def get_messenger_opts(): -# return [ -# cfg.StrOpt('host', -# default="0.0.0.0", -# help='RabbitMQ server name or IP.'), -# cfg.IntOpt('port', -# default=8800, -# help='RabbitMQ server port.'), -# ] - - -def get_orchestrator_opts(): - return [ - cfg.StrOpt('host', - default="127.0.0.1", - help='Host binding'), - cfg.IntOpt('port', - default=38000, - help='Port number of the server'), - ] - - -def get_slave_opts(): - return [ - cfg.StrOpt('slave_name', - default="", - help='name of the slave'), - cfg.StrOpt('master_url', - default="", - help='URL of the RabbitMQ bus of the Master, ' - 'example: master_url=rabbit://moon:p4sswOrd1@messenger:5672/moon'), - cfg.StrOpt('master_login', - default="", - help='login name of the master administrator, example: master_login=admin'), - cfg.StrOpt('master_password', - default="", - help='password of the master administrator, example: master_password=XXXXXXX'), - ] - - -def get_security_router_opts(): - return [ - cfg.StrOpt('container', - default="", - help='Name of the container to download (if empty build from scratch)'), - cfg.StrOpt('host', - default="127.0.0.1", - help='Host binding'), - cfg.IntOpt('port', - default=38001, - help='Port number of the server'), - ] - - -def get_manager_opts(): - return [ - cfg.StrOpt('container', - default="", - help='Name of the container to download (if empty build from scratch)'), - cfg.StrOpt('host', - default="127.0.0.1", - help='Host binding'), - cfg.IntOpt('port', - default=38001, - help='Port number of the server'), - ] - - -def get_security_policy_opts(): - return [ - cfg.StrOpt('container', - default="", - help='Name of the container to download (if empty build from scratch)'), - ] - - -def get_security_function_opts(): - return [ - cfg.StrOpt('container', - default="", - help='Name of the container to download (if empty build from scratch)'), - ] - - -def get_interface_opts(): - return [ - cfg.StrOpt('container', - default="", - help='Name of the container to download (if empty build from scratch)'), - cfg.StrOpt('host', - default="127.0.0.1", - help='Host binding'), - cfg.IntOpt('port', - default=38002, - help='Port number of the server'), - ] - - -def get_database_opts(): - return [ - cfg.StrOpt('url', - default="mysql+pymysql://moonuser:password@localhost/moon", - help='URL of the database'), - cfg.StrOpt('driver', - default="sql", - help='Driver binding'), - ] - - -def get_database_configuration_opts(): - return [ - cfg.StrOpt('url', - default="", - help='URL of the database'), - cfg.StrOpt('driver', - default="memory", - help='Driver binding'), - ] - - -def get_keystone_opts(): - return [ - cfg.StrOpt('url', - default="http://localhost:35357", - help='URL of the Keystone manager.'), - cfg.StrOpt('user', - default="admin", - help='Username of the Keystone manager.'), - cfg.StrOpt('password', - default="nomoresecrete", - help='Password of the Keystone manager.'), - cfg.StrOpt('project', - default="admin", - help='Project used to connect to the Keystone manager.'), - cfg.StrOpt('domain', - default="Default", - help='Default domain for the Keystone manager.'), - cfg.StrOpt('check_token', - default="true", - help='If true, yes or strict, always check Keystone tokens against the server'), - cfg.StrOpt('server_crt', - default="", - help='If using Keystone in HTTPS mode, give a certificate filename here'), - ] - -filename = configure() - - -def get_docker_template_dir(templatename="template.dockerfile"): - path = os.path.dirname(os.path.abspath(filename)) - PATHS = ( - path, - os.path.join(path, "dockers"), - "/etc/moon/" - "~/.moon/" - ) - for _path in PATHS: - if os.path.isfile(os.path.join(_path, templatename)): - return _path - raise Exception("Configuration error, cannot find docker template in {}".format(PATHS)) - |