[extension] blueprint version 0.3.2 - Expect <class 'str'>, got ['Owner', 'Contributor', 'Reader'] (<class 'list'>)
- Dominant language
- Python
- Stars
- 4.6k
- Forks
- 3.5k
- Avg merge
- 3d 2h
- Merged PRs (30d)
- 60
Description
### Describe the bug
the problem is only in the latest extention version of blueprint v0.3.2
no issue in v0.3.1
### Related command
```
az blueprint version list -m --blueprint-name
```
### Errors
When the blueprint version stays as old version, such as `0.3.1`, the command is fine
```
$ az version
{
"azure-cli": "2.51.0",
"azure-cli-core": "2.51.0",
"azure-cli-telemetry": "1.1.0",
"extensions": {
"aks-preview": "0.5.149",
"automation": "0.2.1",
"azure-devops": "0.26.0",
"bastion": "0.2.5",
"blueprint": "0.3.1",
"communication": "1.7.2b1",
"express-route-cross-connection": "0.1.1",
"interactive": "0.5.1",
"logic": "0.1.7",
"ssh": "2.0.0",
"virtual-wan": "0.2.17"
}
}
```
But after I upgrade to latest,
```
az extension add -y --upgrade --name blueprint
Extension 'blueprint' 0.3.1 is already installed.
It will be overridden with version 0.3.2.
```
The command `az blueprint version list xxx` failed with an unexpected error. Here is the traceback:
```
Expect , got ['Owner', 'Contributor', 'Reader'] ()
Traceback (most recent call last):
File "/usr/local/lib/python3.11/site-packages/knack/cli.py", line 233, in invoke
cmd_result = self.invocation.execute(args)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/azure/cli/core/commands/__init__.py", line 663, in execute
raise ex
File "/usr/local/lib/python3.11/site-packages/azure/cli/core/commands/__init__.py", line 726, in _run_jobs_serially
results.append(self._run_job(expanded_arg, cmd_copy))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/azure/cli/core/commands/__init__.py", line 710, in _run_job
result = list(result)
^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/azure/cli/core/aaz/_paging.py", line 87, in __next__
return next(self._page_iterator)
^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/azure/cli/core/aaz/_paging.py", line 43, in __next__
self._executor(self._next_link)
File "/usr/local/lib/python3.11/site-packages/azure/cli/core/aaz/_command.py", line 249, in executor_wrapper
executor()
File "/Users/bill/.azure/cliextensions/blueprint/azext_blueprint/aaz/latest/blueprint/version/_list.py", line 66, in _execute_operations
self.PublishedBlueprintsList(ctx=self.ctx)()
File "/Users/bill/.azure/cliextensions/blueprint/azext_blueprint/aaz/latest/blueprint/version/_list.py", line 89, in __call__
return self.on_200(session)
^^^^^^^^^^^^^^^^^^^^
File "/Users/bill/.azure/cliextensions/blueprint/azext_blueprint/aaz/latest/blueprint/version/_list.py", line 144, in on_200
self.ctx.set_var(
File "/usr/local/lib/python3.11/site-packages/azure/cli/core/aaz/_command_ctx.py", line 84, in set_var
self.vars[name] = data
~~~~~~~~~^^^^^^
File "/usr/local/lib/python3.11/site-packages/azure/cli/core/aaz/_field_value.py", line 76, in __setitem__
self._data[name] = attr_schema.process_data(data, key=name)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/azure/cli/core/aaz/_field_type.py", line 234, in process_data
value[key] = sub_data
~~~~~^^^^^
File "/usr/local/lib/python3.11/site-packages/azure/cli/core/aaz/_field_value.py", line 76, in __setitem__
self._data[name] = attr_schema.process_data(data, key=name)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/azure/cli/core/aaz/_field_type.py", line 409, in process_data
value[idx] = sub_data
~~~~~^^^^^
File "/usr/local/lib/python3.11/site-packages/azure/cli/core/aaz/_field_value.py", line 363, in __setitem__
self._data[idx] = item_schema.process_data(data, key=idx)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/azure/cli/core/aaz/_field_type.py", line 234, in process_data
value[key] = sub_data
~~~~~^^^^^
File "/usr/local/lib/python3.11/site-packages/azure/cli/core/aaz/_field_value.py", line 76, in __setitem__
self._data[name] = attr_schema.process_data(data, key=name)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/azure/cli/core/aaz/_field_type.py", line 234, in process_data
value[key] = sub_data
~~~~~^^^^^
File "/usr/local/lib/python3.11/site-packages/azure/cli/core/aaz/_field_value.py", line 76, in __setitem__
self._data[name] = attr_schema.process_data(data, key=name)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/azure/cli/core/aaz/_field_type.py", line 311, in process_data
value[key] = sub_data
~~~~~^^^^^
File "/usr/local/lib/python3.11/site-packages/azure/cli/core/aaz/_field_value.py", line 241, in __setitem__
self._data[key] = item_schema.process_data(data, key=key)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/azure/cli/core/aaz/_field_type.py", line 234, in process_data
value[key] = sub_data
~~~~~^^^^^
File "/usr/local/lib/python3.11/site-packages/azure/cli/core/aaz/_field_value.py", line 76, in __setitem__
self._data[name] = attr_schema.process_data(data, key=name)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/lib/python3.11/site-packages/azure/cli/core/aaz/_field_type.py", line 48, in process_data
raise AAZInvalidValueError('Expect {}, got {} ({})'.format(self.DataType, data, type(data)))
azure.cli.core.aaz.exceptions.AAZInvalidValueError: Expect , got ['Owner', 'Contributor', 'Reader'] ()
```
### Issue script & Debug output
```
Expect , got ['Owner', 'Contributor', 'Reader'] ()
```
### Expected behavior
should work
### Environment Summary
```
$ az version
{
"azure-cli": "2.51.0",
"azure-cli-core": "2.51.0",
"azure-cli-telemetry": "1.1.0",
"extensions": {
"aks-preview": "0.5.149",
"automation": "0.2.1",
"azure-devops": "0.26.0",
"bastion": "0.2.5",
"blueprint": "0.3.1",
"communication": "1.7.2b1",
"express-route-cross-connection": "0.1.1",
"interactive": "0.5.1",
"logic": "0.1.7",
"ssh": "2.0.0",
"virtual-wan": "0.2.17"
}
}
```
### Additional context
If I remove the latest version and install the old version, it works without issue again
```
az extension add --yes --name blueprint --version 0.3.1
```
Contributor guide
Assessment
This issue has not been assessed yet.