X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=ice_validator%2Ftests%2Ftest_environment_file_parameters.py;h=69485bc697e11eb2bbc07140004086fbf5dea36c;hb=refs%2Fchanges%2F84%2F94384%2F1;hp=100e4a1bab12af75cfbf9b327fc3e4b3f40daa0b;hpb=940ae7b0283191d590de40b71a9136bebc80e83c;p=vvp%2Fvalidation-scripts.git diff --git a/ice_validator/tests/test_environment_file_parameters.py b/ice_validator/tests/test_environment_file_parameters.py index 100e4a1..69485bc 100644 --- a/ice_validator/tests/test_environment_file_parameters.py +++ b/ice_validator/tests/test_environment_file_parameters.py @@ -218,16 +218,22 @@ def run_test_parameter(yaml_file, resource_type, *prop, **kwargs): assert not invalid_parameters, "\n".join(invalid_parameters) -def get_preload_excluded_parameters(yaml_file): +def get_preload_excluded_parameters(yaml_file, persistent_only=False, env_spec=None): """ Returns set of all parameters that should not be included in the preload's vnf parameters/tag-values section. + + if persistent_only only parameters that are marked as persistent will + be excluded """ + env_spec = env_spec or ENV_PARAMETER_SPEC results = [] - for resource_type, specs in ENV_PARAMETER_SPEC.items(): + for resource_type, specs in env_spec.items(): # apply to all resources if not in the format of an OpenStack resource all_resources = "::" not in resource_type for spec in specs: + if persistent_only and not spec.get("persistent"): + continue results.extend(get_template_parameters(yaml_file, resource_type, spec, all_resources)) return {item["param"] for item in results} @@ -268,10 +274,11 @@ def env_violation(yaml_file, parameter, persistent): env_yaml = environment_pair.get("eyml") parameters = env_yaml.get("parameters", {}) in_env = False - for param, value in parameters.items(): - if re.match(parameter, parameter): - in_env = True - break + if parameters: # env file can be just parameters: + for param, value in parameters.items(): + if re.match(parameter, param): + in_env = True + break # confusing return. This function is looking for a violation. return not persistent == in_env