You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@jclouds.apache.org by Zack Shoylev <no...@github.com> on 2013/07/26 21:34:45 UTC

[jclouds] Adds trove api support to jclouds (#75)

Adds rackspace providers for trove
https://issues.apache.org/jira/browse/JCLOUDS-102
You can merge this Pull Request by running:

  git pull https://github.com/rackspace/jclouds add-trove-support

Or you can view, comment on it, or merge it online at:

  https://github.com/jclouds/jclouds/pull/75

-- Commit Summary --

  * Adds trove api support to jclouds

-- File Changes --

    A apis/openstack-trove/pom.xml (129)
    A apis/openstack-trove/src/main/java/org/jclouds/openstack/trove/v1/TroveApi.java (87)
    A apis/openstack-trove/src/main/java/org/jclouds/openstack/trove/v1/TroveApiMetadata.java (96)
    A apis/openstack-trove/src/main/java/org/jclouds/openstack/trove/v1/binders/BindCreateDatabaseToJson.java (58)
    A apis/openstack-trove/src/main/java/org/jclouds/openstack/trove/v1/binders/BindCreateInstanceToJson.java (50)
    A apis/openstack-trove/src/main/java/org/jclouds/openstack/trove/v1/binders/BindCreateUserToJson.java (69)
    A apis/openstack-trove/src/main/java/org/jclouds/openstack/trove/v1/binders/BindGrantUserToJson.java (61)
    A apis/openstack-trove/src/main/java/org/jclouds/openstack/trove/v1/config/TroveHttpApiModule.java (82)
    A apis/openstack-trove/src/main/java/org/jclouds/openstack/trove/v1/config/TroveParserModule.java (32)
    A apis/openstack-trove/src/main/java/org/jclouds/openstack/trove/v1/domain/Flavor.java (169)
    A apis/openstack-trove/src/main/java/org/jclouds/openstack/trove/v1/domain/Instance.java (302)
    A apis/openstack-trove/src/main/java/org/jclouds/openstack/trove/v1/domain/User.java (234)
    A apis/openstack-trove/src/main/java/org/jclouds/openstack/trove/v1/features/DatabaseApi.java (109)
    A apis/openstack-trove/src/main/java/org/jclouds/openstack/trove/v1/features/FlavorApi.java (92)
    A apis/openstack-trove/src/main/java/org/jclouds/openstack/trove/v1/features/InstanceApi.java (163)
    A apis/openstack-trove/src/main/java/org/jclouds/openstack/trove/v1/features/UserApi.java (237)
    A apis/openstack-trove/src/main/java/org/jclouds/openstack/trove/v1/filters/EncodeDotsForUserGet.java (49)
    A apis/openstack-trove/src/main/java/org/jclouds/openstack/trove/v1/functions/ParseDatabaseListForUser.java (54)
    A apis/openstack-trove/src/main/java/org/jclouds/openstack/trove/v1/functions/ParsePasswordFromRootedInstance.java (49)
    A apis/openstack-trove/src/main/java/org/jclouds/openstack/trove/v1/handlers/TroveErrorHandler.java (69)
    A apis/openstack-trove/src/main/java/org/jclouds/openstack/trove/v1/internal/Volume.java (32)
    A apis/openstack-trove/src/main/java/org/jclouds/openstack/trove/v1/predicates/InstancePredicates.java (144)
    A apis/openstack-trove/src/main/java/org/jclouds/openstack/trove/v1/utils/TroveUtils.java (107)
    A apis/openstack-trove/src/main/resources/META-INF/services/org.jclouds.apis.ApiMetadata (18)
    A apis/openstack-trove/src/test/java/org/jclouds/openstack/trove/v1/domain/FlavorTest.java (55)
    A apis/openstack-trove/src/test/java/org/jclouds/openstack/trove/v1/domain/InstanceTest.java (53)
    A apis/openstack-trove/src/test/java/org/jclouds/openstack/trove/v1/domain/UserTest.java (47)
    A apis/openstack-trove/src/test/java/org/jclouds/openstack/trove/v1/features/DatabaseApiExpectTest.java (161)
    A apis/openstack-trove/src/test/java/org/jclouds/openstack/trove/v1/features/DatabaseApiLiveTest.java (114)
    A apis/openstack-trove/src/test/java/org/jclouds/openstack/trove/v1/features/FlavorApiExpectTest.java (111)
    A apis/openstack-trove/src/test/java/org/jclouds/openstack/trove/v1/features/FlavorApiLiveTest.java (87)
    A apis/openstack-trove/src/test/java/org/jclouds/openstack/trove/v1/features/InstanceApiExpectTest.java (217)
    A apis/openstack-trove/src/test/java/org/jclouds/openstack/trove/v1/features/InstanceApiLiveTest.java (136)
    A apis/openstack-trove/src/test/java/org/jclouds/openstack/trove/v1/features/UserApiExpectTest.java (433)
    A apis/openstack-trove/src/test/java/org/jclouds/openstack/trove/v1/features/UserApiLiveTest.java (207)
    A apis/openstack-trove/src/test/java/org/jclouds/openstack/trove/v1/internal/BaseTroveApiExpectTest.java (27)
    A apis/openstack-trove/src/test/java/org/jclouds/openstack/trove/v1/internal/BaseTroveApiLiveTest.java (43)
    A apis/openstack-trove/src/test/java/org/jclouds/openstack/trove/v1/internal/BaseTroveExpectTest.java (78)
    A apis/openstack-trove/src/test/java/org/jclouds/openstack/trove/v1/parse/ParseFlavorListTest.java (108)
    A apis/openstack-trove/src/test/java/org/jclouds/openstack/trove/v1/parse/ParseInstanceListTest.java (95)
    A apis/openstack-trove/src/test/java/org/jclouds/openstack/trove/v1/parse/ParseUserListTest.java (66)
    A apis/openstack-trove/src/test/java/org/jclouds/openstack/trove/v1/utils/TroveUtilsExpectTest.java (67)
    A apis/openstack-trove/src/test/resources/access_rax_us.json (168)
    A apis/openstack-trove/src/test/resources/database_create_request.json (9)
    A apis/openstack-trove/src/test/resources/database_create_simple_request.json (7)
    A apis/openstack-trove/src/test/resources/database_list.json (19)
    A apis/openstack-trove/src/test/resources/flavor_get.json (17)
    A apis/openstack-trove/src/test/resources/flavor_list.json (94)
    A apis/openstack-trove/src/test/resources/instance_create.json (35)
    A apis/openstack-trove/src/test/resources/instance_create_request.json (9)
    A apis/openstack-trove/src/test/resources/instance_get.json (37)
    A apis/openstack-trove/src/test/resources/instance_get_bad_instance.json (37)
    A apis/openstack-trove/src/test/resources/instance_is_rooted.json (3)
    A apis/openstack-trove/src/test/resources/instance_is_rooted_false.json (3)
    A apis/openstack-trove/src/test/resources/instance_list.json (66)
    A apis/openstack-trove/src/test/resources/instance_root.json (6)
    A apis/openstack-trove/src/test/resources/logback-test.xml (69)
    A apis/openstack-trove/src/test/resources/logback.xml (69)
    A apis/openstack-trove/src/test/resources/trove_user_list.json (35)
    A apis/openstack-trove/src/test/resources/user_create_request.json (35)
    A apis/openstack-trove/src/test/resources/user_create_simple_request.json (13)
    A apis/openstack-trove/src/test/resources/user_create_with_host_simple_request.json (14)
    A apis/openstack-trove/src/test/resources/user_get.json (14)
    A apis/openstack-trove/src/test/resources/user_get_withhost.json (14)
    A apis/openstack-trove/src/test/resources/user_grant_request.json (10)
    A apis/openstack-trove/src/test/resources/user_grant_simple_request.json (7)
    A apis/openstack-trove/src/test/resources/user_list_access.json (10)
    A apis/openstack-trove/src/test/resources/user_password_request.json (12)
    M apis/pom.xml (1)
    M providers/pom.xml (2)
    A providers/rackspace-clouddatabases-uk/pom.xml (150)
    A providers/rackspace-clouddatabases-uk/src/main/java/org/jclouds/rackspace/clouddatabases/uk/CloudDatabasesUKProviderMetadata.java (112)
    A providers/rackspace-clouddatabases-uk/src/main/resources/META-INF/services/org.jclouds.providers.ProviderMetadata (1)
    A providers/rackspace-clouddatabases-uk/src/test/java/org/jclouds/rackspace/clouddatabases/uk/CloudDatabasesUKProviderMetadataExpectTest.java (64)
    A providers/rackspace-clouddatabases-uk/src/test/java/org/jclouds/rackspace/clouddatabases/uk/CloudDatabasesUKProviderTest.java (32)
    A providers/rackspace-clouddatabases-uk/src/test/java/org/jclouds/rackspace/clouddatabases/uk/features/CloudDatabasesUKDatabaseApiLiveTest.java (30)
    A providers/rackspace-clouddatabases-uk/src/test/java/org/jclouds/rackspace/clouddatabases/uk/features/CloudDatabasesUKFlavorApiLiveTest.java (30)
    A providers/rackspace-clouddatabases-uk/src/test/java/org/jclouds/rackspace/clouddatabases/uk/features/CloudDatabasesUKInstanceApiLiveTest.java (30)
    A providers/rackspace-clouddatabases-uk/src/test/java/org/jclouds/rackspace/clouddatabases/uk/features/CloudDatabasesUKUserApiLiveTest.java (30)
    A providers/rackspace-clouddatabases-uk/src/test/resources/access_rax_uk.json (129)
    A providers/rackspace-clouddatabases-uk/src/test/resources/logback.xml (69)
    A providers/rackspace-clouddatabases-us/pom.xml (150)
    A providers/rackspace-clouddatabases-us/src/main/java/org/jclouds/rackspace/clouddatabases/us/CloudDatabasesUSProviderMetadata.java (115)
    A providers/rackspace-clouddatabases-us/src/main/resources/META-INF/services/org.jclouds.providers.ProviderMetadata (1)
    A providers/rackspace-clouddatabases-us/src/test/java/org/jclouds/rackspace/clouddatabases/us/CloudDatabasesUSProviderMetadataExpectTest.java (64)
    A providers/rackspace-clouddatabases-us/src/test/java/org/jclouds/rackspace/clouddatabases/us/CloudDatabasesUSProviderTest.java (32)
    A providers/rackspace-clouddatabases-us/src/test/java/org/jclouds/rackspace/clouddatabases/us/features/CloudDatabasesUSDatabaseApiLiveTest.java (30)
    A providers/rackspace-clouddatabases-us/src/test/java/org/jclouds/rackspace/clouddatabases/us/features/CloudDatabasesUSFlavorApiLiveTest.java (30)
    A providers/rackspace-clouddatabases-us/src/test/java/org/jclouds/rackspace/clouddatabases/us/features/CloudDatabasesUSInstanceApiLiveTest.java (30)
    A providers/rackspace-clouddatabases-us/src/test/java/org/jclouds/rackspace/clouddatabases/us/features/CloudDatabasesUSUserApiLiveTest.java (30)
    A providers/rackspace-clouddatabases-us/src/test/resources/logback.xml (69)

-- Patch Links --

https://github.com/jclouds/jclouds/pull/75.patch
https://github.com/jclouds/jclouds/pull/75.diff


Re: [jclouds] Adds trove api support to jclouds (#75)

Posted by BuildHive <no...@github.com>.
[jclouds » jclouds #230](https://buildhive.cloudbees.com/job/jclouds/job/jclouds/230/) FAILURE
Looks like there's a problem with this pull request
[(what's this?)](https://www.cloudbees.com/what-is-buildhive)

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/75#issuecomment-21645632

Re: [jclouds] Adds trove api support to jclouds (#75)

Posted by Zack Shoylev <no...@github.com>.
Here are some relevant links:
Quickstart docs: https://github.com/jclouds/jclouds-site/pull/4
Examples: https://github.com/jclouds/jclouds-examples/pull/6


---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/75#issuecomment-21741314

Re: [jclouds] Adds trove api support to jclouds (#75)

Posted by Zack Shoylev <no...@github.com>.
Re: RDS - I don't have any code for it at this time. It seems conceptually it is very similar, so an abstraction layer between the two should make sense. However this could be a few months away.

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/75#issuecomment-21741824

Re: [jclouds] Adds trove api support to jclouds (#75)

Posted by CloudBees pull request builder plugin <no...@github.com>.
[jclouds-pull-requests #81](https://jclouds.ci.cloudbees.com/job/jclouds-pull-requests/81/) FAILURE
Looks like there's a problem with this pull request

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/75#issuecomment-21643445

Re: [jclouds] Adds trove api support to jclouds (#75)

Posted by CloudBees pull request builder plugin <no...@github.com>.
[jclouds-java-7-pull-requests #539](https://jclouds.ci.cloudbees.com/job/jclouds-java-7-pull-requests/539/) SUCCESS
This pull request looks good

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/75#issuecomment-21646638

Re: [jclouds] Adds trove api support to jclouds (#75)

Posted by Matt Stephenson <no...@github.com>.
Please send links to docs, examples, anyone who is using this in their existing software.  Also, do you have the Amazon RDS stuff in a similar state?  It makes more sense to do both in tandem up to jclouds proper.  We should also consider opening a mailing list discussion on this before throwing the pull request out, otherwise that discussion will likely happen in this pull request.

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/75#issuecomment-21647546

Re: [jclouds] Adds trove api support to jclouds (#75)

Posted by Andrew Phillips <no...@github.com>.
> +    See the License for the specific language governing permissions and
> +    limitations under the License.
> +
> +-->
> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
> +  <modelVersion>4.0.0</modelVersion>
> +  <parent>
> +    <groupId>org.apache.jclouds</groupId>
> +    <artifactId>jclouds-project</artifactId>
> +    <version>1.7.0-SNAPSHOT</version>
> +    <relativePath>../../project/pom.xml</relativePath>
> +  </parent>
> +  
> +  <groupId>org.apache.jclouds.api</groupId>
> +  <artifactId>openstack-trove</artifactId>
> +  <version>1.7.0-SNAPSHOT</version>

Not required any more since the version can be inherited from the parent?

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/75/files#r5438322

Re: [jclouds] Adds trove api support to jclouds (#75)

Posted by Andrew Phillips <no...@github.com>.
> +    <test.jclouds.keystone.credential-type>passwordCredentials</test.jclouds.keystone.credential-type>
> +
> +    <jclouds.osgi.export>org.jclouds.openstack.trove.v1_0*;version="${project.version}"</jclouds.osgi.export>
> +    <jclouds.osgi.import>
> +      org.jclouds.rest.internal;version="${jclouds.version}",
> +      org.jclouds.labs*;version="${project.version}",
> +      org.jclouds*;version="${jclouds.version}",
> +      *
> +    </jclouds.osgi.import>
> +  </properties>
> +
> +  <dependencies>
> +    <dependency>
> +      <groupId>org.apache.jclouds.api</groupId>
> +      <artifactId>openstack-keystone</artifactId>
> +      <version>${project.parent.version}</version>

Can use `${project.version}` for all of these - see e.g. [the S3 POM](https://github.com/jclouds/jclouds/blob/master/apis/s3/pom.xml#L54)

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/75/files#r5438327

Re: [jclouds] Adds trove api support to jclouds (#75)

Posted by Andrew Phillips <no...@github.com>.
> +    <test.rackspace-clouddatabases-uk.credential>${test.rackspace-uk.credential}</test.rackspace-clouddatabases-uk.credential>
> +    <test.rackspace-clouddatabases-uk.template />
> +    <jclouds.osgi.export>org.jclouds.rackspace.clouddatabases.uk*;version="${project.version}"</jclouds.osgi.export>
> +    <jclouds.osgi.import>
> +      org.jclouds.compute.internal;version="${project.version}",
> +      org.jclouds.rest.internal;version="${project.version}",
> +      org.jclouds*;version="${project.version}",
> +      *
> +    </jclouds.osgi.import>
> +  </properties>
> +
> +  <dependencies>
> +    <dependency>
> +      <groupId>org.apache.jclouds</groupId>
> +      <artifactId>jclouds-core</artifactId>
> +      <version>${project.parent.version}</version>

See comment for API POM

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/75/files#r5438332

Re: [jclouds] Adds trove api support to jclouds (#75)

Posted by Andrew Phillips <no...@github.com>.
> +    See the License for the specific language governing permissions and
> +    limitations under the License.
> +
> +-->
> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
> +  <modelVersion>4.0.0</modelVersion>
> +  <parent>
> +    <groupId>org.apache.jclouds</groupId>
> +    <artifactId>jclouds-project</artifactId>
> +    <version>1.7.0-SNAPSHOT</version>
> +    <relativePath>../../project/pom.xml</relativePath>
> +  </parent>
> +  
> +  <groupId>org.apache.jclouds.provider</groupId>
> +  <artifactId>rackspace-clouddatabases-uk</artifactId>
> +  <version>1.7.0-SNAPSHOT</version>

See comment for API POM

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/75/files#r5438331

Re: [jclouds] Adds trove api support to jclouds (#75)

Posted by Andrew Phillips <no...@github.com>.
> +    See the License for the specific language governing permissions and
> +    limitations under the License.
> +
> +-->
> +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
> +  <modelVersion>4.0.0</modelVersion>
> +  <parent>
> +    <groupId>org.apache.jclouds</groupId>
> +    <artifactId>jclouds-project</artifactId>
> +    <version>1.7.0-SNAPSHOT</version>
> +    <relativePath>../../project/pom.xml</relativePath>
> +  </parent>
> +  
> +  <groupId>org.apache.jclouds.provider</groupId>
> +  <artifactId>rackspace-clouddatabases-us</artifactId>
> +  <version>1.7.0-SNAPSHOT</version>

See comment for API POM

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/75/files#r5438335

Re: [jclouds] Adds trove api support to jclouds (#75)

Posted by Andrew Phillips <no...@github.com>.
> +    <test.rackspace-clouddatabases-us.credential>${test.rackspace-us.credential}</test.rackspace-clouddatabases-us.credential>
> +    <test.rackspace-clouddatabases-us.template />
> +    <jclouds.osgi.export>org.jclouds.rackspace.clouddatabases.us*;version="${project.version}"</jclouds.osgi.export>
> +    <jclouds.osgi.import>
> +      org.jclouds.compute.internal;version="${project.version}",
> +      org.jclouds.rest.internal;version="${project.version}",
> +      org.jclouds*;version="${project.version}",
> +      *
> +    </jclouds.osgi.import>
> +  </properties>
> +
> +  <dependencies>
> +    <dependency>
> +      <groupId>org.apache.jclouds</groupId>
> +      <artifactId>jclouds-core</artifactId>
> +      <version>${project.parent.version}</version>

See comment for API POM

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/75/files#r5438336

Re: [jclouds] Adds trove api support to jclouds (#75)

Posted by BuildHive <no...@github.com>.
[jclouds » jclouds #231](https://buildhive.cloudbees.com/job/jclouds/job/jclouds/231/) SUCCESS
This pull request looks good
[(what's this?)](https://www.cloudbees.com/what-is-buildhive)

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/75#issuecomment-21761465

Re: [jclouds] Adds trove api support to jclouds (#75)

Posted by CloudBees pull request builder plugin <no...@github.com>.
[jclouds-java-7-pull-requests #538](https://jclouds.ci.cloudbees.com/job/jclouds-java-7-pull-requests/538/) FAILURE
Looks like there's a problem with this pull request

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/75#issuecomment-21643366

Re: [jclouds] Adds trove api support to jclouds (#75)

Posted by CloudBees pull request builder plugin <no...@github.com>.
[jclouds-pull-requests #82](https://jclouds.ci.cloudbees.com/job/jclouds-pull-requests/82/) SUCCESS
This pull request looks good

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/75#issuecomment-21646663

Re: [jclouds] Adds trove api support to jclouds (#75)

Posted by Matt Stephenson <no...@github.com>.
This doesn't feel ready for promotion in my opinion, we have an implementation started for rds here : https://github.com/jclouds/jclouds-labs-aws/tree/master/aws-rds I would rather see this mature in labs a bit more.  This is why we should have a discuss thread on dev@, I've not seen anything like this yet.

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/75#issuecomment-21742846

Re: [jclouds] Adds trove api support to jclouds (#75)

Posted by Zack Shoylev <no...@github.com>.
This is a copy of the code from openstack labs (documentation updates included).
Ideally this will also be backported for next release.

---
Reply to this email directly or view it on GitHub:
https://github.com/jclouds/jclouds/pull/75#issuecomment-21643326