TL;DR: vcloud is older but more complete. vcloud-director is Work in Progress but supports the 1.5 API and thus works with most 5.0 and 5.1 installations.

Seems that you have some vCloud vs. vCloud Director implementation(in labs
package); so the natural question that comes to mind is :

Why the duplicates?. Isn't vCloud Director an implementation of vCloud
APIs?.

So which should or intended to be used in what usage context?.

Just want some clarification.

Logical question, BJ. I'm not the expert here, but I can try to provide what background I know.

The vcloud API in jclouds is the older implementation, based on the 1.0 API [1], although it may be partially compatible with newer versions.

The vcloud-director API in jclouds-labs was/is intended as a replacement for the revamped API, starting with version 1.5 [2], although any further work on it should obviously take the newer 5.0 and 5.1 versions into account.

Which one to use is thus not a straightforward question to answer: vcloud is more complete in that it implements the portable ComputeService abstraction, but doesn't work (from what I know) with 5.0 and 5.1 installations.

vcloud-director can work with those installations (since they usually support 1.5 in a backwards-compatible mode), but requires you to program against the API directly, since it does not yet implement ComputeService.

Any intended contributions towards further 5.0 and 5.1 support should thus probably be made on the basis of the vcloud-director API. If you're interested in tackling anything in this area, please hop on IRC and let us know!

Hope this helps

ap

[1] https://github.com/jclouds/jclouds/blob/master/apis/vcloud/src/main/java/org/jclouds/vcloud/VCloudApiMetadata.java [2] https://github.com/jclouds/jclouds-labs/blob/master/vcloud-director/src/main/java/org/jclouds/vcloud/director/v1_5/VCloudDirectorApiMetadata.java

Reply via email to