X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=lib%2Fpython%2Fapex%2Fdeploy_settings.py;h=2a9d5a67caf3d0dd3b031a9bd53f6e52fc8ef072;hb=8f38df4d1c7be93822f2f8ec7f385d98d172a613;hp=963520a62579ed9348997f96c10dfbb529dc39f6;hpb=9131b0a81c22e713b4d4798d7ff32254be3b99e3;p=apex.git diff --git a/lib/python/apex/deploy_settings.py b/lib/python/apex/deploy_settings.py index 963520a6..2a9d5a67 100644 --- a/lib/python/apex/deploy_settings.py +++ b/lib/python/apex/deploy_settings.py @@ -11,6 +11,8 @@ import yaml import logging +from .common import utils + REQ_DEPLOY_SETTINGS = ['sdn_controller', 'odl_version', 'sdn_l3', @@ -19,9 +21,11 @@ REQ_DEPLOY_SETTINGS = ['sdn_controller', 'dataplane', 'sfc', 'vpn', - 'vpp'] + 'vpp', + 'ceph', + 'gluon'] -OPT_DEPLOY_SETTINGS = ['performance', 'vsperf', 'ceph_device'] +OPT_DEPLOY_SETTINGS = ['performance', 'vsperf', 'ceph_device', 'yardstick'] VALID_ROLES = ['Controller', 'Compute', 'ObjectStorage'] VALID_PERF_OPTS = ['kernel', 'nova', 'vpp'] @@ -66,6 +70,15 @@ class DeploySettings(dict): if not isinstance(deploy_options, dict): raise DeploySettingsException("deploy_options should be a list") + if ('gluon' in self['deploy_options'] and + 'vpn' in self['deploy_options']): + if (self['deploy_options']['gluon'] is True and + self['deploy_options']['vpn'] is False): + raise DeploySettingsException( + "Invalid deployment configuration: " + "If gluon is enabled, " + "vpn also needs to be enabled") + for setting, value in deploy_options.items(): if setting not in REQ_DEPLOY_SETTINGS + OPT_DEPLOY_SETTINGS: raise DeploySettingsException("Invalid deploy_option {} " @@ -81,6 +94,8 @@ class DeploySettings(dict): if req_set not in deploy_options: if req_set == 'dataplane': self['deploy_options'][req_set] = 'ovs' + elif req_set == 'ceph': + self['deploy_options'][req_set] = True else: self['deploy_options'][req_set] = False @@ -162,12 +177,7 @@ class DeploySettings(dict): if 'performance' in self['deploy_options']: bash_str += self._dump_performance() bash_str += self._dump_deploy_options_array() - - if path: - with open(path, 'w') as file: - file.write(bash_str) - else: - print(bash_str) + utils.write_str(bash_str, path) class DeploySettingsException(Exception):