Port on creation is returned without the fixed_ips field populated
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
neutron |
Expired
|
Undecided
|
Unassigned |
Bug Description
I ran into an issue with port creation when using the openstack-terraform provider (which then uses Gophercloud) to access the Neutron API..... https:/
In short a port is created, but that port does not have the `fixed_ips` field populated.
This is the response to the create request:
```
{
"ports": [
{
"
"
{
}
],
"
"created_at": "2023-08-
"
"device_id": "",
"
"
"dns_name": "",
"
"fixed_ips": [],
"id": "9b37978b-
"
"name": "vpn",
"network_id": "f946cedc-
"
"project_id": "REDACTED",
"
"
],
"status": "DOWN",
"tags": [],
"tenant_id": "REDACTED",
"updated_at": "2023-08-
}
]
}
```
If you look at my attempt to dive into the mechanics at https:/
All in all I just kindly as for a qualified comment if this is expected behavior (needs handing within the terraform provider) or a bug (can be fixed on the Neutron side).
IP allocation might be deferred in a routed network configuration where it is unknown where the port is going to "live" since we don't want to assign an IP that will not work on a particular compute node.
This state is normally shown in the POST response, but I believe you have to have the ip_allocation extension loaded.
This document has more information:
https:/ /docs.openstack .org/neutron/ latest/ admin/config- routed- networks. html
That is the most likely reason fixed_ips is empty.
You can check in /etc/neutron/ plugins/ ml2/ml2_ conf.ini to see what extension_drivers is set to, if you add this extension and restart neutron-server the API call should have that field (and value).
That's where I would start.