When an incorrect parameter is passed, StackValidationException would be thrown, but this exception does not include parameter name. For example, see the following exception;
{
"message": "must begin with a letter and contain only alphanumeric characters.",
"traceback": "Traceback (most recent call last):\n\n File \"/opt/stack/heat/heat/engine/service.py\", line 62, in wrapped\n return func(self, ctx, *args, **kwargs)\n\n File \"/opt/stack/heat/heat/engine/service.py\", line 542, in create_stack\n stack = parser.Stack(cnxt, stack_name, tmpl, env, **common_params)\n\n File \"/opt/stack/heat/heat/engine/parser.py\", line 108, in __init__\n context=context)\n\n File \"/opt/stack/heat/heat/engine/parameters.py\", line 407, in validate\n\n File \"/opt/stack/heat/heat/engine/parameters.py\", line 220, in validate\n self._validate(self.default(), context)\n\n File \"/opt/stack/heat/heat/engine/parameters.py\", line 288, in _validate\n\n File \"/opt/stack/heat/heat/engine/parameters.py\", line 159, in validate_value\n if name == \"name\":\n\n File \"/opt/stack/heat/heat/engine/constraints.py\", line 169, in validate_constraints\n raise exception.StackValidationFailed(message=six.text_type(ex))\n\nStackValidationFailed: must begin with a letter and contain only alphanumeric characters.\n",
"type": "StackValidationFailed"
}
Including parameter name would be helpful in identifying the issue quickly.
When an incorrect parameter is passed, StackValidation Exception would be thrown, but this exception does not include parameter name. For example, see the following exception; stack/heat/ heat/engine/ service. py\", line 62, in wrapped\n return func(self, ctx, *args, **kwargs)\n\n File \"/opt/ stack/heat/ heat/engine/ service. py\", line 542, in create_stack\n stack = parser.Stack(cnxt, stack_name, tmpl, env, **common_ params) \n\n File \"/opt/ stack/heat/ heat/engine/ parser. py\", line 108, in __init__\n context= context) \n\n File \"/opt/ stack/heat/ heat/engine/ parameters. py\", line 407, in validate\n\n File \"/opt/ stack/heat/ heat/engine/ parameters. py\", line 220, in validate\n self._validate( self.default( ), context)\n\n File \"/opt/ stack/heat/ heat/engine/ parameters. py\", line 288, in _validate\n\n File \"/opt/ stack/heat/ heat/engine/ parameters. py\", line 159, in validate_value\n if name == \"name\":\n\n File \"/opt/ stack/heat/ heat/engine/ constraints. py\", line 169, in validate_ constraints\ n raise exception. StackValidation Failed( message= six.text_ type(ex) )\n\nStackValid ationFailed: must begin with a letter and contain only alphanumeric characters.\n", nFailed"
{
"message": "must begin with a letter and contain only alphanumeric characters.",
"traceback": "Traceback (most recent call last):\n\n File \"/opt/
"type": "StackValidatio
}
Including parameter name would be helpful in identifying the issue quickly.