d47ea9da12
Newly introduced in oslo.config is the PortOpt which is a subclass of IntOpt with the min=1 and max=65535. Change-Id: Ib6a95d738f8604497752daf1f646201ce7d99c30
72 lines
2.8 KiB
Python
72 lines
2.8 KiB
Python
# Copyright 2014 VMware, Inc.
|
|
#
|
|
# 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.
|
|
|
|
from oslo_config import cfg
|
|
from oslo_vmware import api
|
|
|
|
dvs_opts = [
|
|
cfg.StrOpt('host_ip',
|
|
help='Hostname or IP address for connection to VMware vCenter '
|
|
'host.'),
|
|
cfg.PortOpt('host_port', default=443,
|
|
help='Port for connection to VMware vCenter host.'),
|
|
cfg.StrOpt('host_username',
|
|
help='Username for connection to VMware vCenter host.'),
|
|
cfg.StrOpt('host_password',
|
|
help='Password for connection to VMware vCenter host.',
|
|
secret=True),
|
|
cfg.FloatOpt('task_poll_interval',
|
|
default=0.5,
|
|
help='The interval used for polling of remote tasks.'),
|
|
cfg.StrOpt('ca_file',
|
|
help='Specify a CA bundle file to use in verifying the '
|
|
'vCenter server certificate.'),
|
|
cfg.BoolOpt('insecure',
|
|
default=False,
|
|
help='If true, the vCenter server certificate is not '
|
|
'verified. If false, then the default CA truststore is '
|
|
'used for verification. This option is ignored if '
|
|
'"ca_file" is set.'),
|
|
cfg.IntOpt('api_retry_count',
|
|
default=10,
|
|
help='The number of times we retry on failures, e.g., '
|
|
'socket error, etc.'),
|
|
cfg.StrOpt('dvs_name',
|
|
help='The name of the preconfigured DVS.'),
|
|
]
|
|
|
|
CONF = cfg.CONF
|
|
CONF.register_opts(dvs_opts, 'dvs')
|
|
|
|
|
|
def dvs_is_enabled():
|
|
"""Returns the configured DVS status."""
|
|
return bool(CONF.dvs.host_ip and CONF.dvs.host_username and
|
|
CONF.dvs.host_password and CONF.dvs.dvs_name)
|
|
|
|
|
|
def dvs_create_session():
|
|
return api.VMwareAPISession(CONF.dvs.host_ip,
|
|
CONF.dvs.host_username,
|
|
CONF.dvs.host_password,
|
|
CONF.dvs.api_retry_count,
|
|
CONF.dvs.task_poll_interval,
|
|
port=CONF.dvs.host_port,
|
|
cacert=CONF.dvs.ca_file,
|
|
insecure=CONF.dvs.insecure)
|
|
|
|
|
|
def dvs_name_get():
|
|
return CONF.dvs.dvs_name
|