[SRU] Cannot Create Port with Fixed IP Address
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Dashboard (Horizon) |
Fix Released
|
High
|
Akihiro Motoki | ||
Ubuntu Cloud Archive |
Fix Released
|
Undecided
|
Unassigned | ||
Ussuri |
New
|
Undecided
|
Unassigned | ||
Victoria |
Fix Released
|
Undecided
|
Unassigned | ||
Wallaby |
Fix Released
|
Undecided
|
Unassigned | ||
Xena |
Fix Released
|
Undecided
|
Unassigned | ||
horizon (Ubuntu) |
Fix Released
|
Undecided
|
Unassigned | ||
Focal |
New
|
Undecided
|
Unassigned | ||
Groovy |
Fix Released
|
Undecided
|
Unassigned | ||
Hirsute |
Fix Released
|
Undecided
|
Unassigned | ||
Impish |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
[Impact]
Fixes python 3.8 compatibility issue with port creation code.
[Test Plan]
* deploy openstack ussuri
* create a network port on horizon
* ensure creation successful
[Regression Potential]
No unexpected behaviour is anticipated from this patch since it is minor and does not impact any code outside of the feature that it fixes.
=======
With Ussuri on Ubuntu 20.04, I can create port with fixed IP address by CLI but I cannot do the same by Horizon GUI. I find some error like following on /var/log/
openstack_
By more inspection, I can find that horizon never send that create port request to neutron. So I think it is horizon problem. Is this expected result or is this horizon bug? Is this related to policy?
Following debug logs maybe related too.
[Wed Oct 21 17:48:06.123807 2020] [wsgi:error] [pid 3095280:tid 140002354386688] [remote 192.168.
[Wed Oct 21 17:48:06.125925 2020] [wsgi:error] [pid 3095280:tid 140002354386688] [remote 192.168.
[Wed Oct 21 17:48:06.126064 2020] [wsgi:error] [pid 3095280:tid 140002354386688] [remote 192.168.
Related branches
- Corey Bryant: Disapprove
-
Diff: 120 lines (+98/-0)3 files modifieddebian/changelog (+7/-0)
debian/patches/Fix-create-update_port-with-python3.patch (+90/-0)
debian/patches/series (+1/-0)
Changed in horizon: | |
importance: | Undecided → High |
assignee: | nobody → Akihiro Motoki (amotoki) |
tags: | added: victoria-backport-potential |
Changed in horizon: | |
status: | In Progress → Fix Released |
Changed in horizon (Ubuntu Impish): | |
status: | New → Fix Released |
Changed in horizon (Ubuntu Hirsute): | |
status: | New → Fix Released |
Changed in horizon (Ubuntu Groovy): | |
status: | New → Fix Released |
description: | updated |
summary: |
- Cannot Create Port with Fixed IP Address + [SRU] Cannot Create Port with Fixed IP Address |
I got the same error adding a port using horizon and was also able to create that port using CLI.
Google suggested the problem might be python3 related so I tried one of the suggested solutions: using a copy of the keys of the dictionary for the iteration. With that change I could create ports in Horizon again.
Horizon 18.3.2, Ubuntu 20.10 (groovy), python 3.8
Solution: python3/ dist-packages/ openstack_ dashboard/ api/neutron. py.bak /usr/lib/ python3/ dist-packages/ openstack_ dashboard/ api/neutron. py python3/ dist-packages/ openstack_ dashboard/ api/neutron. py.bak 2020-11-14 13:54:14.495049228 +0000 python3/ dist-packages/ openstack_ dashboard/ api/neutron. py 2020-11-14 14:04:38.716062069 +0000
# diff -Nur /usr/lib/
--- /usr/lib/
+++ /usr/lib/
@@ -1362,7 +1362,8 @@
def unescape_ port_kwargs( **kwargs) : keys())
kwargs[ ':'.join( key.split( '__'))] = kwargs.pop(key)
- for key in kwargs:
+ key_copy = tuple(kwargs.
+ for key in key_copy:
if '__' in key:
return kwargs