For example, in old versions of our Chef API, when we supported Chef
10, we injected the right cookbook parsers depending on the api
version (see [1]). The same concept could be used in the Keystone
module to return the v2 or v3 API depending on the api version
configured when creating the context.


[1] 
https://github.com/jclouds/jclouds-chef/blob/1.7.x/core/src/main/java/org/jclouds/chef/config/ChefParserModule.java#L305-L319

On 13 February 2017 at 12:40, Ignasi Barrera <ignasi.barr...@gmail.com> wrote:
> I think we can have a smart Guice module that returns the right
> Keystone API depending on the value of the ApiVersion, so we can keep
> both implementations, each one with heir own packages.
>
> On 13 February 2017 at 12:29, Andrea Turli <andrea.tu...@gmail.com> wrote:
>> Thanks Ignasi,
>>
>> just wondering what does it mean for jclouds to support multiple versions
>> of the same API at the same time? For example, Keystone v3 may have
>> different API calls with different domain objects, so changing API version
>> property could be not enough. Do we need to inject the right objects using
>> Guice depending on the version?
>>
>> On Mon, Feb 13, 2017 at 12:09 PM, Ignasi Barrera <n...@apache.org> wrote:
>>
>>> HI!
>>>
>>> We definitely want to support the new versions of the OpenStack APIs,
>>> and would love to have some help writing them :) Any contribution in
>>> that direction is very welcome, and we'll be happy to provide advice
>>> and guidance.
>>>
>>> In order to do that and support recent OpenStack versions, though, we
>>> might need to first implement Keystone v3, which is missing too, but
>>> we haven't had yet the time and hands to tackle this. I'd be pleased
>>> to help making this happen too!
>>>
>>>
>>>
>>>
>>> On 10 February 2017 at 18:36, Valentin Aitken
>>> <valentin.ait...@cloudsoftcorp.com> wrote:
>>> > Hi,
>>> >
>>> > Currently you can use org.jclouds.openstack.nova.v2_0.NovaApi against
>>> v3 but
>>> > there are some differences which I wonder how to tackle.
>>> >
>>> > Basically I have two questions.
>>> >
>>> > 1. I'd like to check community's opinion regarding writing code for
>>> > OpenStack Nova v3 [1].
>>> >    What are people's thoughts, do you intend to drop v2 support and
>>> >    move classes from org.jclouds.openstack.nova.v2_0 to
>>> > org.jclouds.openstack.nova.v3_0 or you want to support both?
>>> >
>>> > 2. My 1st question comes from a problem I hit with destroying security
>>> > groups in v3 on destroyNode.
>>> >   It is that Createserverext ( os-create-server-ext API call) has been
>>> > removed from OpenStack v3 [2].
>>> >   Security groups are now available in NodeMetadata and for v3 that
>>> > extension is not needed.
>>> >
>>> >
>>> > Regards,
>>> > Valentin Aitken!
>>> >
>>> > [1]
>>> > https://github.com/jclouds/jclouds/blob/master/apis/
>>> openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_
>>> 0/NovaApi.java#L53
>>> > [2] https://wiki.openstack.org/wiki/NovaAPIv2tov3
>>>

Reply via email to