Horizon not show flavor details in instance and resize is not possible - Flavor ID is not supported by nova
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Dashboard (Horizon) |
Fix Released
|
High
|
Vadym Markov | ||
Ubuntu Cloud Archive |
Fix Released
|
Undecided
|
Unassigned | ||
Ussuri |
Fix Released
|
High
|
Unassigned | ||
Victoria |
Fix Released
|
High
|
Unassigned | ||
Wallaby |
Fix Released
|
High
|
Unassigned | ||
Xena |
Fix Released
|
High
|
Unassigned | ||
horizon (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned | ||
Focal |
Fix Released
|
High
|
Unassigned | ||
Impish |
Fix Released
|
High
|
Unassigned |
Bug Description
In horizon on Wallaby and Victoria release, there are some view and function which are using ID value from Instance's Flavor part of JSON. The main issue is when you want to resize instance, you are receiving output below. The issue is also on Instance detail is specs, where Flavor is Not available. But on all instances view, this is working fine and base on detail of instance object and it's details, it looks like this view is using different methods based on older API.
We are running Wallaby dashboard with openstack-helm project with nova-api 2.88
Nova version:
{"versions": [{"id": "v2.0", "status": "SUPPORTED", "version": "", "min_version": "", "updated": "2011-01-
For example for resize initialization the log output is:
2021-08-23 12:20:30.308473 Internal Server Error: /project/
2021-08-23 12:20:30.308500 Traceback (most recent call last):
2021-08-23 12:20:30.308503 File "/var/lib/
2021-08-23 12:20:30.308505 value = cache[key] = cache.pop(key)
2021-08-23 12:20:30.308507 KeyError: ((<weakref at 0x7fba91b35228; to 'ResizeView' at 0x7fba91b407b8>,), ())
2021-08-23 12:20:30.308509
2021-08-23 12:20:30.308512 During handling of the above exception, another exception occurred:
2021-08-23 12:20:30.308513
2021-08-23 12:20:30.308515 Traceback (most recent call last):
2021-08-23 12:20:30.308517 File "/var/lib/
2021-08-23 12:20:30.308519 response = get_response(
2021-08-23 12:20:30.308521 File "/var/lib/
2021-08-23 12:20:30.308523 response = self.process_
2021-08-23 12:20:30.308525 File "/var/lib/
2021-08-23 12:20:30.308527 response = wrapped_
2021-08-23 12:20:30.308529 File "/var/lib/
2021-08-23 12:20:30.308531 return view_func(request, *args, **kwargs)
2021-08-23 12:20:30.308533 File "/var/lib/
2021-08-23 12:20:30.308534 return view_func(request, *args, **kwargs)
2021-08-23 12:20:30.308536 File "/var/lib/
2021-08-23 12:20:30.308538 return view_func(request, *args, **kwargs)
2021-08-23 12:20:30.308540 File "/var/lib/
2021-08-23 12:20:30.308542 return view_func(request, *args, **kwargs)
2021-08-23 12:20:30.308543 File "/var/lib/
2021-08-23 12:20:30.308545 return view_func(request, *args, **kwargs)
2021-08-23 12:20:30.308547 File "/var/lib/
2021-08-23 12:20:30.308549 return self.dispatch(
2021-08-23 12:20:30.308551 File "/var/lib/
2021-08-23 12:20:30.308553 return handler(request, *args, **kwargs)
2021-08-23 12:20:30.308554 File "/var/lib/
2021-08-23 12:20:30.308556 context = self.get_
2021-08-23 12:20:30.308559 File "/var/lib/
2021-08-23 12:20:30.308561 context = super()
2021-08-23 12:20:30.308563 File "/var/lib/
2021-08-23 12:20:30.308565 workflow = self.get_workflow()
2021-08-23 12:20:30.308567 File "/var/lib/
2021-08-23 12:20:30.308570 extra_context = self.get_initial()
2021-08-23 12:20:30.308571 File "/var/lib/
2021-08-23 12:20:30.308573 _object = self.get_object()
2021-08-23 12:20:30.308575 File "/var/lib/
2021-08-23 12:20:30.308577 value = cache[key] = func(*args, **kwargs)
2021-08-23 12:20:30.308578 File "/var/lib/
2021-08-23 12:20:30.308583 flavor_id = instance.
2021-08-23 12:20:30.308586 KeyError: 'id'
For older version e.g. by this command:
curl -s -H "X-Auth-Token: $OS_TOKEN" -H "X-OpenStack-
"flavor": {
"id": "2",
{
}
]
}
For current and >=2.47
curl -s -H "X-Auth-Token: $OS_TOKEN" -H "X-OpenStack-
"flavor": {
"disk": 20,
"ram": 2048,
"swap": 0,
}
This change in Nova is described:
https:/
Steps for reproduce:
1) init resize on Wallaby release with nova-api larger then 2.47
We are running the Horizon based on e.g. openstackhelm/
with these versions:
python-
python-
python-
python-
python-
python-
python-
python-
python-
openstacksdk=
*******
SRU Information:
== Begin SRU Template ==
[Impact]
Not possible to resize an instance from OpenStack dashbaord.
[Test Case]
1. Login to OpenStack dashboard
2. Click on Project -> Compute -> Instances
3. Select an instance and click on "Resize Instance" in Actions column.
A popup should appear asking for New Flavor.
[Regression Potential]
In order to mitigate the regression potential, selenium tests are added as
part of patch which tests different Nova API versions.
description: | updated |
tags: | added: sts |
Changed in horizon: | |
importance: | Undecided → High |
description: | updated |
Changed in horizon (Ubuntu): | |
milestone: | none → focal-updates |
milestone: | focal-updates → none |
tags: | added: sts-sru-needed |
Changed in cloud-archive: | |
status: | New → Fix Released |
Changed in horizon (Ubuntu): | |
status: | Confirmed → Fix Released |
Changed in horizon (Ubuntu Focal): | |
status: | Confirmed → Triaged |
importance: | Undecided → High |
Changed in horizon (Ubuntu Impish): | |
status: | Confirmed → Triaged |
importance: | Undecided → High |
tags: |
added: verification-xena-done removed: verification-xena-needed |
Working on issue. Problem started since Nova API v2.47 (introduced about Pike), which changed flavor response format