from tests import cached_yaml as yaml
from tests.structures import Resource
from .helpers import validates
+from .utils.nested_iterables import is_pseudo_param
VERSION = "1.0.0"
pytest.skip("No resources specified in the heat template")
invalid_parameters = []
-
"""
checking if property: { get_param: parameter }, then property == parameter
if isinstance(parameter, list):
parameter = parameter[0]
+ if is_pseudo_param(parameter):
+ continue
+
if k1 != parameter:
invalid_parameters.append(
{
#
+def is_pseudo_param(parameter):
+ pseudo_parameters = ["OS::stack_name", "OS::stack_id", "OS::project_id"]
+ return parameter in pseudo_parameters
+
+
def parse_nested_dict(d, key=""):
"""
parse the nested dictionary and return values of
Recursively find all referenced parameters in a parsed yaml body
and return a list of parameters
"""
- os_pseudo_parameters = ["OS::stack_name", "OS::stack_id", "OS::project_id"]
if not hasattr(yml, "items"):
return []
params = []
for k, v in yml.items():
- if k == "get_param" and v not in os_pseudo_parameters:
+ if k == "get_param" and not is_pseudo_param(v):
if isinstance(v, list) and not isinstance(v[0], dict):
params.append(v[0])
elif not isinstance(v, dict) and isinstance(v, str):