Details
-
Bug
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
1.9.1, 2.0.0
-
None
-
None
Description
Using devstack
Nova API not returning FloatingIPApi even though the ExtensionApi was listing "os-floating-ips".
Upon inspection, it is found out that the namespace for this extension is changed to a fake xml.
Ex: Extension
{id=os-floating-ips, name=FloatingIps, links=[], namespace=http://docs.openstack.org/compute/ext/fake_xml, alias=os-floating-ips, updated=Tue Dec 02 16:00:00 PST 2014, description=Floating IPs support.}(notice fake_xml in the namespace URI)
However, org.jclouds.openstack.nova.v2_0.extensions.ExtensionNamespaces is listing it with the previous namespace:
//Floating IPs support
public static final String FLOATING_IPS = "http://docs.openstack.org/ext/floating_ips/api/v1.1";
Similar issue: http://stackoverflow.com/questions/31417247/jcloud-nova-unable-to-find-floating-ip-pool-extension
https://github.com/jclouds/jclouds/pull/813
Relevant comment from /opt/stack/nova/api/openstack/compute/extension_info.py :
- V2.1 does not support XML but we need to keep an entry in the # /extensions information returned to the user for backwards # compatibility FAKE_XML_URL = "http://docs.openstack.org/compute/ext/fake_xml"
After changing the extension namespace in ExtensionNamespaces.java, I was able to make it work.
//Floating IPs support
//public static final String FLOATING_IPS = "http://docs.openstack.org/ext/floating_ips/api/v1.1";
public static final String FLOATING_IPS = "http://docs.openstack.org/compute/ext/fake_xml";
All extensions are returning the fake xml namespace.
So, all of them would fail lookup.