Someone updating az CLI redis commands encountered the stack trace below. We assumed that they passed None for subnet_id when setting the RedisCreateParameters object. If this is true, msrest should not attempt to validate subnet_id, as it is None. A parameter set to none should not be validated unless it is required. @lmazuel and @marstr agree that this should be the case.
It turned out that None wasn't actually passed in for subnet_id, as parameters were passed in the wrong order. Nevertheless, I am opening this issue according to @lmazuel's request.
Stack trace:
Parameter 'RedisCreateParameters.subnet_id' must conform to the following pattern: '^/subscriptions/[^/]*/resourceGroups/[^/]*/providers/Microsoft.(ClassicNetwork|Network)/virtualNetworks/[^/]*/subnets/[^/]*$'.
Traceback (most recent call last):
File "D:\Depots\CLI20\azure-cli\devenv\lib\site-packages\knack\cli.py", line 206, in invoke cmd_result = self.invocation.execute(args)
File "d:\depots\cli20\azure-cli\src\azure-cli-core\azure\cli\core\commands\__init__.py", line 328, in execute
raise ex
File "d:\depots\cli20\azure-cli\src\azure-cli-core\azure\cli\core\commands\__init__.py", line 386, in _run_jobs_serially
results.append(self._run_job(expanded_arg, cmd_copy))
File "d:\depots\cli20\azure-cli\src\azure-cli-core\azure\cli\core\commands\__init__.py", line 377, in _run_job
cmd_copy.exception_handler(ex)
File "d:\depots\cli20\azure-cli\src\command_modules\azure-cli-redis\azure\cli\command_modules\redis\custom.py", line 24, in wrong_vmsize_argument_exception_handler
raise ex
File "d:\depots\cli20\azure-cli\src\azure-cli-core\azure\cli\core\commands\__init__.py", line 356, in _run_job
result = cmd_copy(params)
File "d:\depots\cli20\azure-cli\src\azure-cli-core\azure\cli\core\commands\__init__.py", line 171, in __call__
return self.handler(*args, **kwargs)
File "d:\depots\cli20\azure-cli\src\azure-cli-core\azure\cli\core\__init__.py", line 441, in default_command_handler
return op(**command_args)
File "d:\depots\cli20\azure-cli\src\command_modules\azure-cli-redis\azure\cli\command_modules\redis\custom.py", line 99, in cli_redis_create
return client.create(resource_group_name, name, params)
File "d:\depots\cli20\azure-cli\devenv\src\azure-mgmt-redis\azure-mgmt-redis\azure\mgmt\redis\operations\redis_operations.py", line 246, in create
**operation_config
File "d:\depots\cli20\azure-cli\devenv\src\azure-mgmt-redis\azure-mgmt-redis\azure\mgmt\redis\operations\redis_operations.py", line 194, in _create_initial
body_content = self._serialize.body(parameters, 'RedisCreateParameters')
File "D:\Depots\CLI20\azure-cli\devenv\lib\site-packages\msrest\serialization.py", line 579, in body
raise errors[0]
File "D:\Depots\CLI20\azure-cli\devenv\lib\site-packages\msrest\serialization.py", line 221, in validate
Serializer.validate(value, debug_name, **self._validation.get(attr_name, {}))
File "D:\Depots\CLI20\azure-cli\devenv\lib\site-packages\msrest\serialization.py", line 672, in validate
raise ValidationError(key, name, value) msrest.exceptions.ValidationError: Parameter 'RedisCreateParameters.subnet_id' must conform to the following pattern: '^/subscriptions/[^/]*/resourceGroups/[^/]*/providers/Microsoft.(ClassicNetwork|Network)/virtualNetworks/[^/]*/subnets/[^/]*$'.
Someone updating az CLI redis commands encountered the stack trace below. We assumed that they passed
None
for subnet_id when setting the RedisCreateParameters object. If this is true, msrest should not attempt to validatesubnet_id
, as it isNone
. A parameter set to none should not be validated unless it is required. @lmazuel and @marstr agree that this should be the case.It turned out that
None
wasn't actually passed in for subnet_id, as parameters were passed in the wrong order. Nevertheless, I am opening this issue according to @lmazuel's request.Stack trace: