You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jclouds.apache.org by ad...@apache.org on 2014/10/05 19:28:04 UTC
[1/9] git commit: Remove carrenza-vcloud-director,
which hasn't been published in over a year.
Repository: jclouds-labs
Updated Branches:
refs/heads/master b91fd46cd -> 0cbcf181c
Remove carrenza-vcloud-director, which hasn't been published in over a year.
Project: http://git-wip-us.apache.org/repos/asf/jclouds-labs/repo
Commit: http://git-wip-us.apache.org/repos/asf/jclouds-labs/commit/6825ed3d
Tree: http://git-wip-us.apache.org/repos/asf/jclouds-labs/tree/6825ed3d
Diff: http://git-wip-us.apache.org/repos/asf/jclouds-labs/diff/6825ed3d
Branch: refs/heads/master
Commit: 6825ed3db723a2d64a917e882e1e0a51038bc287
Parents: b91fd46
Author: Adrian Cole <ad...@gmail.com>
Authored: Sun Oct 5 09:20:13 2014 -0700
Committer: Adrian Cole <ad...@apache.org>
Committed: Sun Oct 5 10:22:05 2014 -0700
----------------------------------------------------------------------
carrenza-vcloud-director/pom.xml | 139 ----------------
.../CarrenzaVCloudDirectorProviderMetadata.java | 92 -----------
...loudDirectorComputeServiceContextModule.java | 37 -----
.../CarrenzaVCloudDirectorRestClientModule.java | 28 ----
.../org.jclouds.providers.ProviderMetadata | 1 -
.../CarrenzaVCloudDirectorProviderTest.java | 29 ----
...nzaVCloudDirectorComputeServiceLiveTest.java | 31 ----
...zaVCloudDirectorTemplateBuilderLiveTest.java | 31 ----
...arrenzaVCloudDirectorCatalogApiLiveTest.java | 31 ----
.../CarrenzaVCloudDirectorMediaApiLiveTest.java | 31 ----
...arrenzaVCloudDirectorNetworkApiLiveTest.java | 31 ----
.../CarrenzaVCloudDirectorOrgApiLiveTest.java | 31 ----
.../CarrenzaVCloudDirectorQueryApiLiveTest.java | 31 ----
.../CarrenzaVCloudDirectorTaskApiLiveTest.java | 31 ----
...CarrenzaVCloudDirectorUploadApiLiveTest.java | 31 ----
.../CarrenzaVCloudDirectorVAppApiLiveTest.java | 31 ----
...zaVCloudDirectorVAppTemplateApiLiveTest.java | 31 ----
.../CarrenzaVCloudDirectorVdcApiLiveTest.java | 31 ----
...zaVCloudDirectorAdminCatalogApiLiveTest.java | 31 ----
...zaVCloudDirectorAdminNetworkApiLiveTest.java | 31 ----
...rrenzaVCloudDirectorAdminOrgApiLiveTest.java | 31 ----
...enzaVCloudDirectorAdminQueryApiLiveTest.java | 31 ----
...rrenzaVCloudDirectorAdminVdcApiLiveTest.java | 31 ----
.../CarrenzaVCloudDirectorGroupApiLiveTest.java | 31 ----
.../CarrenzaVCloudDirectorUserApiLiveTest.java | 31 ----
...arrenzaVCloudDirectorSessionApiLiveTest.java | 31 ----
.../src/test/resources/log4j.xml | 157 -------------------
27 files changed, 1103 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/6825ed3d/carrenza-vcloud-director/pom.xml
----------------------------------------------------------------------
diff --git a/carrenza-vcloud-director/pom.xml b/carrenza-vcloud-director/pom.xml
deleted file mode 100644
index c49153e..0000000
--- a/carrenza-vcloud-director/pom.xml
+++ /dev/null
@@ -1,139 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- 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.labs</groupId>
- <artifactId>jclouds-labs</artifactId>
- <version>2.0.0-SNAPSHOT</version>
- </parent>
-
- <!-- TODO: when out of labs, switch to org.jclouds.provider -->
- <groupId>org.apache.jclouds.labs</groupId>
- <artifactId>carrenza-vcloud-director</artifactId>
- <name>jclouds Carrenza vCloud Director provider</name>
- <description>vCloud Director implementation targeted to Carrenza</description>
- <packaging>bundle</packaging>
-
- <properties>
- <test.carrenza-vcloud-director.endpoint>https://myvdc.carrenza.net/api</test.carrenza-vcloud-director.endpoint>
- <test.carrenza-vcloud-director.api-version>1.5</test.carrenza-vcloud-director.api-version>
- <test.carrenza-vcloud-director.build-version>464915</test.carrenza-vcloud-director.build-version>
- <test.carrenza-vcloud-director.identity>FIXME_IDENTITY</test.carrenza-vcloud-director.identity>
- <test.carrenza-vcloud-director.credential>FIXME_CREDENTIAL</test.carrenza-vcloud-director.credential>
- <test.carrenza-vcloud-director.template />
- <test.carrenza-vcloud-director.catalog-id />
- <test.carrenza-vcloud-director.media-id />
- <test.carrenza-vcloud-director.vapptemplate-id />
- <test.carrenza-vcloud-director.network-name />
- <test.carrenza-vcloud-director.network-id />
- <test.carrenza-vcloud-director.vdc-id />
-
- <jclouds.osgi.export>org.jclouds.carrenza.vcloud.director*;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.labs</groupId>
- <artifactId>vcloud-director</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.jclouds.labs</groupId>
- <artifactId>vcloud-director</artifactId>
- <version>${project.version}</version>
- <type>test-jar</type>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.jclouds</groupId>
- <artifactId>jclouds-core</artifactId>
- <version>${project.version}</version>
- <type>test-jar</type>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.jclouds</groupId>
- <artifactId>jclouds-compute</artifactId>
- <version>${project.version}</version>
- <type>test-jar</type>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.jclouds.driver</groupId>
- <artifactId>jclouds-log4j</artifactId>
- <version>${project.version}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.jclouds.driver</groupId>
- <artifactId>jclouds-sshj</artifactId>
- <version>${project.version}</version>
- <scope>test</scope>
- </dependency>
- </dependencies>
-
- <profiles>
- <profile>
- <id>live</id>
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-plugin</artifactId>
- <executions>
- <execution>
- <id>integration</id>
- <phase>integration-test</phase>
- <goals>
- <goal>test</goal>
- </goals>
- <configuration>
- <systemPropertyVariables>
- <test.carrenza-vcloud-director.endpoint>${test.carrenza-vcloud-director.endpoint}</test.carrenza-vcloud-director.endpoint>
- <test.carrenza-vcloud-director.api-version>${test.carrenza-vcloud-director.api-version}</test.carrenza-vcloud-director.api-version>
- <test.carrenza-vcloud-director.build-version>${test.carrenza-vcloud-director.build-version}</test.carrenza-vcloud-director.build-version>
- <test.carrenza-vcloud-director.identity>${test.carrenza-vcloud-director.identity}</test.carrenza-vcloud-director.identity>
- <test.carrenza-vcloud-director.credential>${test.carrenza-vcloud-director.credential}</test.carrenza-vcloud-director.credential>
- <test.carrenza-vcloud-director.template>${test.carrenza-vcloud-director.template}</test.carrenza-vcloud-director.template>
- <test.carrenza-vcloud-director.catalog-id>${test.carrenza-vcloud-director.catalog-id}</test.carrenza-vcloud-director.catalog-id>
- <test.carrenza-vcloud-director.media-id>${test.carrenza-vcloud-director.media-id}</test.carrenza-vcloud-director.media-id>
- <test.carrenza-vcloud-director.vapptemplate-id>${test.carrenza-vcloud-director.vapptemplate-id}</test.carrenza-vcloud-director.vapptemplate-id>
- <test.carrenza-vcloud-director.network-id>${test.carrenza-vcloud-director.network-id}</test.carrenza-vcloud-director.network-id>
- <test.carrenza-vcloud-director.vdc-id>${test.carrenza-vcloud-director.vdc-id}</test.carrenza-vcloud-director.vdc-id>
- <test.carrenza-vcloud-director.user-id>${test.carrenza-vcloud-director.user-id}</test.carrenza-vcloud-director.user-id>
- </systemPropertyVariables>
- </configuration>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
- </profile>
- </profiles>
-
-</project>
-
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/6825ed3d/carrenza-vcloud-director/src/main/java/org/jclouds/carrenza/vcloud/director/CarrenzaVCloudDirectorProviderMetadata.java
----------------------------------------------------------------------
diff --git a/carrenza-vcloud-director/src/main/java/org/jclouds/carrenza/vcloud/director/CarrenzaVCloudDirectorProviderMetadata.java b/carrenza-vcloud-director/src/main/java/org/jclouds/carrenza/vcloud/director/CarrenzaVCloudDirectorProviderMetadata.java
deleted file mode 100644
index 3b9cd62..0000000
--- a/carrenza-vcloud-director/src/main/java/org/jclouds/carrenza/vcloud/director/CarrenzaVCloudDirectorProviderMetadata.java
+++ /dev/null
@@ -1,92 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.carrenza.vcloud.director;
-
-import static org.jclouds.Constants.PROPERTY_BUILD_VERSION;
-import static org.jclouds.vcloud.director.v1_5.VCloudDirectorConstants.PROPERTY_VCLOUD_DIRECTOR_DEFAULT_NETWORK;
-
-import java.net.URI;
-import java.util.Properties;
-
-import org.jclouds.carrenza.vcloud.director.config.CarrenzaVCloudDirectorComputeServiceContextModule;
-import org.jclouds.carrenza.vcloud.director.config.CarrenzaVCloudDirectorRestClientModule;
-import org.jclouds.providers.ProviderMetadata;
-import org.jclouds.providers.internal.BaseProviderMetadata;
-import org.jclouds.vcloud.director.v1_5.VCloudDirectorApiMetadata;
-
-import com.google.common.collect.ImmutableSet;
-import com.google.inject.Module;
-
-/**
- * Implementation of {@link org.jclouds.types.ProviderMetadata} for Carrenza vCloud hosting
- */
-@SuppressWarnings("serial")
-public class CarrenzaVCloudDirectorProviderMetadata extends BaseProviderMetadata {
-
- public static Builder builder() {
- return new Builder();
- }
-
- @Override
- public Builder toBuilder() {
- return builder().fromProviderMetadata(this);
- }
-
- public CarrenzaVCloudDirectorProviderMetadata() {
- super(builder());
- }
-
- public CarrenzaVCloudDirectorProviderMetadata(Builder builder) {
- super(builder);
- }
-
- public static Properties defaultProperties() {
- Properties properties = new Properties();
- properties.setProperty(PROPERTY_BUILD_VERSION, "1.5.0.464915");
- properties.setProperty(PROPERTY_VCLOUD_DIRECTOR_DEFAULT_NETWORK, "orgNet-.*-External");
- return properties;
- }
-
- public static class Builder extends BaseProviderMetadata.Builder {
-
- protected Builder() {
- id("carrenza-vcloud-director")
- .name("Carrenza vCloud Director")
- .apiMetadata(new VCloudDirectorApiMetadata().toBuilder()
- .buildVersion("1.5.0.464915")
- .defaultModules(ImmutableSet.<Class<? extends Module>>of(CarrenzaVCloudDirectorRestClientModule.class, CarrenzaVCloudDirectorComputeServiceContextModule.class))
- .build())
- .homepage(URI.create("http://carrenza.com/"))
- .console(URI.create("https://myvdc.carrenza.net/cloud/org/YOUR_ORG_HERE"))
- .iso3166Codes("GB-LND")
- .endpoint("https://myvdc.carrenza.net/api")
- .defaultProperties(CarrenzaVCloudDirectorProviderMetadata.defaultProperties());
- }
-
- @Override
- public CarrenzaVCloudDirectorProviderMetadata build() {
- return new CarrenzaVCloudDirectorProviderMetadata(this);
- }
-
- @Override
- public Builder fromProviderMetadata(
- ProviderMetadata in) {
- super.fromProviderMetadata(in);
- return this;
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/6825ed3d/carrenza-vcloud-director/src/main/java/org/jclouds/carrenza/vcloud/director/config/CarrenzaVCloudDirectorComputeServiceContextModule.java
----------------------------------------------------------------------
diff --git a/carrenza-vcloud-director/src/main/java/org/jclouds/carrenza/vcloud/director/config/CarrenzaVCloudDirectorComputeServiceContextModule.java b/carrenza-vcloud-director/src/main/java/org/jclouds/carrenza/vcloud/director/config/CarrenzaVCloudDirectorComputeServiceContextModule.java
deleted file mode 100644
index 4c69b5d..0000000
--- a/carrenza-vcloud-director/src/main/java/org/jclouds/carrenza/vcloud/director/config/CarrenzaVCloudDirectorComputeServiceContextModule.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.carrenza.vcloud.director.config;
-
-import com.google.inject.AbstractModule;
-
-
-/**
- * per docs, we are to use pool mode.
- */
-public class CarrenzaVCloudDirectorComputeServiceContextModule extends AbstractModule {
-
- @Override
- protected void configure() {
-
- } // FIXME: enable when compute service done
-//extends VCloudDirectorComputeServiceContextModule {
-//
-// @Override
-// protected TemplateOptions provideTemplateOptions(Injector injector, TemplateOptions options) {
-// return options.as(VCloudDirectorTemplateOptions.class).ipAddressAllocationMode(IpAddressAllocationMode.POOL);
-// }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/6825ed3d/carrenza-vcloud-director/src/main/java/org/jclouds/carrenza/vcloud/director/config/CarrenzaVCloudDirectorRestClientModule.java
----------------------------------------------------------------------
diff --git a/carrenza-vcloud-director/src/main/java/org/jclouds/carrenza/vcloud/director/config/CarrenzaVCloudDirectorRestClientModule.java b/carrenza-vcloud-director/src/main/java/org/jclouds/carrenza/vcloud/director/config/CarrenzaVCloudDirectorRestClientModule.java
deleted file mode 100644
index 268d002..0000000
--- a/carrenza-vcloud-director/src/main/java/org/jclouds/carrenza/vcloud/director/config/CarrenzaVCloudDirectorRestClientModule.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.carrenza.vcloud.director.config;
-
-import org.jclouds.rest.ConfiguresRestClient;
-import org.jclouds.vcloud.director.v1_5.config.VCloudDirectorRestClientModule;
-
-/**
- * Configures the VCloud authentication service connection, including logging and http transport.
- */
-@ConfiguresRestClient
-public class CarrenzaVCloudDirectorRestClientModule extends VCloudDirectorRestClientModule {
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/6825ed3d/carrenza-vcloud-director/src/main/resources/META-INF/services/org.jclouds.providers.ProviderMetadata
----------------------------------------------------------------------
diff --git a/carrenza-vcloud-director/src/main/resources/META-INF/services/org.jclouds.providers.ProviderMetadata b/carrenza-vcloud-director/src/main/resources/META-INF/services/org.jclouds.providers.ProviderMetadata
deleted file mode 100644
index b59c68c..0000000
--- a/carrenza-vcloud-director/src/main/resources/META-INF/services/org.jclouds.providers.ProviderMetadata
+++ /dev/null
@@ -1 +0,0 @@
-org.jclouds.carrenza.vcloud.director.CarrenzaVCloudDirectorProviderMetadata
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/6825ed3d/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/CarrenzaVCloudDirectorProviderTest.java
----------------------------------------------------------------------
diff --git a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/CarrenzaVCloudDirectorProviderTest.java b/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/CarrenzaVCloudDirectorProviderTest.java
deleted file mode 100644
index 1c6c4a3..0000000
--- a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/CarrenzaVCloudDirectorProviderTest.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.carrenza.vcloud.director;
-
-import org.jclouds.providers.internal.BaseProviderMetadataTest;
-import org.jclouds.vcloud.director.v1_5.VCloudDirectorApiMetadata;
-import org.testng.annotations.Test;
-
-@Test(groups = "unit", testName = "CarrenzaVCloudDirectorProviderTest")
-public class CarrenzaVCloudDirectorProviderTest extends BaseProviderMetadataTest {
-
- public CarrenzaVCloudDirectorProviderTest() {
- super(new CarrenzaVCloudDirectorProviderMetadata(), new VCloudDirectorApiMetadata());
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/6825ed3d/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/compute/CarrenzaVCloudDirectorComputeServiceLiveTest.java
----------------------------------------------------------------------
diff --git a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/compute/CarrenzaVCloudDirectorComputeServiceLiveTest.java b/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/compute/CarrenzaVCloudDirectorComputeServiceLiveTest.java
deleted file mode 100644
index 94b34c1..0000000
--- a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/compute/CarrenzaVCloudDirectorComputeServiceLiveTest.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.carrenza.vcloud.director.compute;
-
-import org.testng.annotations.Test;
-
-/**
- * {@inheritDoc}
- */
-@Test(groups = { "live", "compute" }, singleThreaded = true, testName = "CarrenzaVCloudDirectorComputeServiceLiveTest")
-public class CarrenzaVCloudDirectorComputeServiceLiveTest { // FIXME: enable when compute service done
-// extends VCloudDirectorComputeServiceLiveTest {
-//
-// public CarrenzaVCloudDirectorComputeServiceLiveTest() {
-// provider = "carrenza-vcloud-director";
-// }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/6825ed3d/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/compute/CarrenzaVCloudDirectorTemplateBuilderLiveTest.java
----------------------------------------------------------------------
diff --git a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/compute/CarrenzaVCloudDirectorTemplateBuilderLiveTest.java b/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/compute/CarrenzaVCloudDirectorTemplateBuilderLiveTest.java
deleted file mode 100644
index 6c8c22f..0000000
--- a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/compute/CarrenzaVCloudDirectorTemplateBuilderLiveTest.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.carrenza.vcloud.director.compute;
-
-import org.testng.annotations.Test;
-
-/**
- * {@inheritDoc}
- */
-@Test(groups = { "live", "compute" }, testName = "CarrenzaVCloudDirectorTemplateBuilderLiveTest")
-public class CarrenzaVCloudDirectorTemplateBuilderLiveTest {
-// BaseTemplateBuilderLiveTest<VCloudDirectorApi, VCloudDirectorAsyncApi, VCloudDirectorContext> {
-//
-// public CarrenzaVCloudDirectorTemplateBuilderLiveTest() {
-// provider = "carrenza-vcloud-director";
-// }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/6825ed3d/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorCatalogApiLiveTest.java
----------------------------------------------------------------------
diff --git a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorCatalogApiLiveTest.java b/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorCatalogApiLiveTest.java
deleted file mode 100644
index 0422c17..0000000
--- a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorCatalogApiLiveTest.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.carrenza.vcloud.director.features;
-
-import org.jclouds.vcloud.director.v1_5.features.CatalogApiLiveTest;
-import org.testng.annotations.Test;
-
-/**
- * {@inheritDoc}
- */
-@Test(groups = { "live", "user" }, singleThreaded = true, testName = "CarrenzaVCloudDirectorCatalogApiLiveTest")
-public class CarrenzaVCloudDirectorCatalogApiLiveTest extends CatalogApiLiveTest {
-
- public CarrenzaVCloudDirectorCatalogApiLiveTest() {
- provider = "carrenza-vcloud-director";
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/6825ed3d/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorMediaApiLiveTest.java
----------------------------------------------------------------------
diff --git a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorMediaApiLiveTest.java b/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorMediaApiLiveTest.java
deleted file mode 100644
index f4e6a18..0000000
--- a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorMediaApiLiveTest.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.carrenza.vcloud.director.features;
-
-import org.jclouds.vcloud.director.v1_5.features.MediaApiLiveTest;
-import org.testng.annotations.Test;
-
-/**
- * {@inheritDoc}
- */
-@Test(groups = { "live", "user" }, singleThreaded = true, testName = "CarrenzaVCloudDirectorMediaApiLiveTest")
-public class CarrenzaVCloudDirectorMediaApiLiveTest extends MediaApiLiveTest {
-
- public CarrenzaVCloudDirectorMediaApiLiveTest() {
- provider = "carrenza-vcloud-director";
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/6825ed3d/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorNetworkApiLiveTest.java
----------------------------------------------------------------------
diff --git a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorNetworkApiLiveTest.java b/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorNetworkApiLiveTest.java
deleted file mode 100644
index 22a93f0..0000000
--- a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorNetworkApiLiveTest.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.carrenza.vcloud.director.features;
-
-import org.jclouds.vcloud.director.v1_5.features.NetworkApiLiveTest;
-import org.testng.annotations.Test;
-
-/**
- * {@inheritDoc}
- */
-@Test(groups = { "live", "user" }, singleThreaded = true, testName = "CarrenzaVCloudDirectorNetworkApiLiveTest")
-public class CarrenzaVCloudDirectorNetworkApiLiveTest extends NetworkApiLiveTest {
-
- public CarrenzaVCloudDirectorNetworkApiLiveTest() {
- provider = "carrenza-vcloud-director";
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/6825ed3d/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorOrgApiLiveTest.java
----------------------------------------------------------------------
diff --git a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorOrgApiLiveTest.java b/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorOrgApiLiveTest.java
deleted file mode 100644
index 136cd24..0000000
--- a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorOrgApiLiveTest.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.carrenza.vcloud.director.features;
-
-import org.jclouds.vcloud.director.v1_5.features.OrgApiLiveTest;
-import org.testng.annotations.Test;
-
-/**
- * {@inheritDoc}
- */
-@Test(groups = { "live", "user" }, singleThreaded = true, testName = "CarrenzaVCloudDirectorOrgApiLiveTest")
-public class CarrenzaVCloudDirectorOrgApiLiveTest extends OrgApiLiveTest {
-
- public CarrenzaVCloudDirectorOrgApiLiveTest() {
- provider = "carrenza-vcloud-director";
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/6825ed3d/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorQueryApiLiveTest.java
----------------------------------------------------------------------
diff --git a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorQueryApiLiveTest.java b/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorQueryApiLiveTest.java
deleted file mode 100644
index b86ac63..0000000
--- a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorQueryApiLiveTest.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.carrenza.vcloud.director.features;
-
-import org.jclouds.vcloud.director.v1_5.features.QueryApiLiveTest;
-import org.testng.annotations.Test;
-
-/**
- * {@inheritDoc}
- */
-@Test(groups = { "live", "user" }, singleThreaded = true, testName = "CarrenzaVCloudDirectorQueryApiLiveTest")
-public class CarrenzaVCloudDirectorQueryApiLiveTest extends QueryApiLiveTest {
-
- public CarrenzaVCloudDirectorQueryApiLiveTest() {
- provider = "carrenza-vcloud-director";
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/6825ed3d/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorTaskApiLiveTest.java
----------------------------------------------------------------------
diff --git a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorTaskApiLiveTest.java b/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorTaskApiLiveTest.java
deleted file mode 100644
index 61effd5..0000000
--- a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorTaskApiLiveTest.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.carrenza.vcloud.director.features;
-
-import org.jclouds.vcloud.director.v1_5.features.TaskApiLiveTest;
-import org.testng.annotations.Test;
-
-/**
- * {@inheritDoc}
- */
-@Test(groups = { "live", "user" }, singleThreaded = true, testName = "CarrenzaVCloudDirectorTaskApiLiveTest")
-public class CarrenzaVCloudDirectorTaskApiLiveTest extends TaskApiLiveTest {
-
- public CarrenzaVCloudDirectorTaskApiLiveTest() {
- provider = "carrenza-vcloud-director";
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/6825ed3d/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorUploadApiLiveTest.java
----------------------------------------------------------------------
diff --git a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorUploadApiLiveTest.java b/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorUploadApiLiveTest.java
deleted file mode 100644
index 0eb2cff..0000000
--- a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorUploadApiLiveTest.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.carrenza.vcloud.director.features;
-
-import org.jclouds.vcloud.director.v1_5.features.UploadApiLiveTest;
-import org.testng.annotations.Test;
-
-/**
- * {@inheritDoc}
- */
-@Test(groups = { "live", "user" }, singleThreaded = true, testName = "CarrenzaVCloudDirectorUploadApiLiveTest")
-public class CarrenzaVCloudDirectorUploadApiLiveTest extends UploadApiLiveTest {
-
- public CarrenzaVCloudDirectorUploadApiLiveTest() {
- provider = "carrenza-vcloud-director";
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/6825ed3d/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorVAppApiLiveTest.java
----------------------------------------------------------------------
diff --git a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorVAppApiLiveTest.java b/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorVAppApiLiveTest.java
deleted file mode 100644
index 2659417..0000000
--- a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorVAppApiLiveTest.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.carrenza.vcloud.director.features;
-
-import org.jclouds.vcloud.director.v1_5.features.VAppApiLiveTest;
-import org.testng.annotations.Test;
-
-/**
- * {@inheritDoc}
- */
-@Test(groups = { "live", "user" }, singleThreaded = true, testName = "CarrenzaVCloudDirectorVAppApiLiveTest")
-public class CarrenzaVCloudDirectorVAppApiLiveTest extends VAppApiLiveTest {
-
- public CarrenzaVCloudDirectorVAppApiLiveTest() {
- provider = "carrenza-vcloud-director";
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/6825ed3d/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorVAppTemplateApiLiveTest.java
----------------------------------------------------------------------
diff --git a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorVAppTemplateApiLiveTest.java b/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorVAppTemplateApiLiveTest.java
deleted file mode 100644
index 873c43a..0000000
--- a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorVAppTemplateApiLiveTest.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.carrenza.vcloud.director.features;
-
-import org.jclouds.vcloud.director.v1_5.features.VAppTemplateApiLiveTest;
-import org.testng.annotations.Test;
-
-/**
- * {@inheritDoc}
- */
-@Test(groups = { "live", "user" }, singleThreaded = true, testName = "CarrenzaVCloudDirectorVAppTemplateApiLiveTest")
-public class CarrenzaVCloudDirectorVAppTemplateApiLiveTest extends VAppTemplateApiLiveTest {
-
- public CarrenzaVCloudDirectorVAppTemplateApiLiveTest() {
- provider = "carrenza-vcloud-director";
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/6825ed3d/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorVdcApiLiveTest.java
----------------------------------------------------------------------
diff --git a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorVdcApiLiveTest.java b/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorVdcApiLiveTest.java
deleted file mode 100644
index dd71172..0000000
--- a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/CarrenzaVCloudDirectorVdcApiLiveTest.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.carrenza.vcloud.director.features;
-
-import org.jclouds.vcloud.director.v1_5.features.VdcApiLiveTest;
-import org.testng.annotations.Test;
-
-/**
- * {@inheritDoc}
- */
-@Test(groups = { "live", "user" }, singleThreaded = true, testName = "CarrenzaVCloudDirectorVDCApiLiveTest")
-public class CarrenzaVCloudDirectorVdcApiLiveTest extends VdcApiLiveTest {
-
- public CarrenzaVCloudDirectorVdcApiLiveTest() {
- provider = "carrenza-vcloud-director";
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/6825ed3d/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/admin/CarrenzaVCloudDirectorAdminCatalogApiLiveTest.java
----------------------------------------------------------------------
diff --git a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/admin/CarrenzaVCloudDirectorAdminCatalogApiLiveTest.java b/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/admin/CarrenzaVCloudDirectorAdminCatalogApiLiveTest.java
deleted file mode 100644
index b8ebe2e..0000000
--- a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/admin/CarrenzaVCloudDirectorAdminCatalogApiLiveTest.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.carrenza.vcloud.director.features.admin;
-
-import org.jclouds.vcloud.director.v1_5.features.admin.AdminCatalogApiLiveTest;
-import org.testng.annotations.Test;
-
-/**
- * {@inheritDoc}
- */
-@Test(groups = { "live", "admin" }, singleThreaded = true, testName = "CarrenzaVCloudDirectorAdminCatalogApiLiveTest")
-public class CarrenzaVCloudDirectorAdminCatalogApiLiveTest extends AdminCatalogApiLiveTest {
-
- public CarrenzaVCloudDirectorAdminCatalogApiLiveTest() {
- provider = "carrenza-vcloud-director";
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/6825ed3d/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/admin/CarrenzaVCloudDirectorAdminNetworkApiLiveTest.java
----------------------------------------------------------------------
diff --git a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/admin/CarrenzaVCloudDirectorAdminNetworkApiLiveTest.java b/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/admin/CarrenzaVCloudDirectorAdminNetworkApiLiveTest.java
deleted file mode 100644
index 600048d..0000000
--- a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/admin/CarrenzaVCloudDirectorAdminNetworkApiLiveTest.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.carrenza.vcloud.director.features.admin;
-
-import org.jclouds.vcloud.director.v1_5.features.admin.AdminNetworkApiLiveTest;
-import org.testng.annotations.Test;
-
-/**
- * {@inheritDoc}
- */
-@Test(groups = { "live", "admin" }, singleThreaded = true, testName = "CarrenzaVCloudDirectorAdminNetworkApiLiveTest")
-public class CarrenzaVCloudDirectorAdminNetworkApiLiveTest extends AdminNetworkApiLiveTest {
-
- public CarrenzaVCloudDirectorAdminNetworkApiLiveTest() {
- provider = "carrenza-vcloud-director";
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/6825ed3d/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/admin/CarrenzaVCloudDirectorAdminOrgApiLiveTest.java
----------------------------------------------------------------------
diff --git a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/admin/CarrenzaVCloudDirectorAdminOrgApiLiveTest.java b/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/admin/CarrenzaVCloudDirectorAdminOrgApiLiveTest.java
deleted file mode 100644
index 0cda077..0000000
--- a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/admin/CarrenzaVCloudDirectorAdminOrgApiLiveTest.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.carrenza.vcloud.director.features.admin;
-
-import org.jclouds.vcloud.director.v1_5.features.admin.AdminOrgApiLiveTest;
-import org.testng.annotations.Test;
-
-/**
- * {@inheritDoc}
- */
-@Test(groups = { "live", "admin" }, singleThreaded = true, testName = "CarrenzaVCloudDirectorOrgApiLiveTest")
-public class CarrenzaVCloudDirectorAdminOrgApiLiveTest extends AdminOrgApiLiveTest {
-
- public CarrenzaVCloudDirectorAdminOrgApiLiveTest() {
- provider = "carrenza-vcloud-director";
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/6825ed3d/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/admin/CarrenzaVCloudDirectorAdminQueryApiLiveTest.java
----------------------------------------------------------------------
diff --git a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/admin/CarrenzaVCloudDirectorAdminQueryApiLiveTest.java b/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/admin/CarrenzaVCloudDirectorAdminQueryApiLiveTest.java
deleted file mode 100644
index b566b63..0000000
--- a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/admin/CarrenzaVCloudDirectorAdminQueryApiLiveTest.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.carrenza.vcloud.director.features.admin;
-
-import org.jclouds.vcloud.director.v1_5.features.admin.AdminQueryApiLiveTest;
-import org.testng.annotations.Test;
-
-/**
- * {@inheritDoc}
- */
-@Test(groups = { "live", "admin" }, singleThreaded = true, testName = "CarrenzaVCloudDirectorAdminQueryApiLiveTest")
-public class CarrenzaVCloudDirectorAdminQueryApiLiveTest extends AdminQueryApiLiveTest {
-
- public CarrenzaVCloudDirectorAdminQueryApiLiveTest() {
- provider = "carrenza-vcloud-director";
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/6825ed3d/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/admin/CarrenzaVCloudDirectorAdminVdcApiLiveTest.java
----------------------------------------------------------------------
diff --git a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/admin/CarrenzaVCloudDirectorAdminVdcApiLiveTest.java b/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/admin/CarrenzaVCloudDirectorAdminVdcApiLiveTest.java
deleted file mode 100644
index d111c11..0000000
--- a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/admin/CarrenzaVCloudDirectorAdminVdcApiLiveTest.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.carrenza.vcloud.director.features.admin;
-
-import org.jclouds.vcloud.director.v1_5.features.admin.AdminVdcApiLiveTest;
-import org.testng.annotations.Test;
-
-/**
- * {@inheritDoc}
- */
-@Test(groups = { "live", "admin" }, singleThreaded = true, testName = "CarrenzaVCloudDirectorAdminVdcApiLiveTest")
-public class CarrenzaVCloudDirectorAdminVdcApiLiveTest extends AdminVdcApiLiveTest {
-
- public CarrenzaVCloudDirectorAdminVdcApiLiveTest() {
- provider = "carrenza-vcloud-director";
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/6825ed3d/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/admin/CarrenzaVCloudDirectorGroupApiLiveTest.java
----------------------------------------------------------------------
diff --git a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/admin/CarrenzaVCloudDirectorGroupApiLiveTest.java b/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/admin/CarrenzaVCloudDirectorGroupApiLiveTest.java
deleted file mode 100644
index 75810a4..0000000
--- a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/admin/CarrenzaVCloudDirectorGroupApiLiveTest.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.carrenza.vcloud.director.features.admin;
-
-import org.jclouds.vcloud.director.v1_5.features.admin.GroupApiLiveTest;
-import org.testng.annotations.Test;
-
-/**
- * {@inheritDoc}
- */
-@Test(groups = { "live", "admin" }, singleThreaded = true, testName = "CarrenzaVCloudDirectorGroupApiLiveTest")
-public class CarrenzaVCloudDirectorGroupApiLiveTest extends GroupApiLiveTest {
-
- public CarrenzaVCloudDirectorGroupApiLiveTest() {
- provider = "carrenza-vcloud-director";
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/6825ed3d/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/admin/CarrenzaVCloudDirectorUserApiLiveTest.java
----------------------------------------------------------------------
diff --git a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/admin/CarrenzaVCloudDirectorUserApiLiveTest.java b/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/admin/CarrenzaVCloudDirectorUserApiLiveTest.java
deleted file mode 100644
index d0bb7ef..0000000
--- a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/features/admin/CarrenzaVCloudDirectorUserApiLiveTest.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.carrenza.vcloud.director.features.admin;
-
-import org.jclouds.vcloud.director.v1_5.features.admin.UserApiLiveTest;
-import org.testng.annotations.Test;
-
-/**
- * {@inheritDoc}
- */
-@Test(groups = { "live", "admin" }, singleThreaded = true, testName = "CarrenzaVCloudDirectorUserApiLiveTest")
-public class CarrenzaVCloudDirectorUserApiLiveTest extends UserApiLiveTest {
-
- public CarrenzaVCloudDirectorUserApiLiveTest() {
- provider = "carrenza-vcloud-director";
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/6825ed3d/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/login/CarrenzaVCloudDirectorSessionApiLiveTest.java
----------------------------------------------------------------------
diff --git a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/login/CarrenzaVCloudDirectorSessionApiLiveTest.java b/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/login/CarrenzaVCloudDirectorSessionApiLiveTest.java
deleted file mode 100644
index c43d5be..0000000
--- a/carrenza-vcloud-director/src/test/java/org/jclouds/carrenza/vcloud/director/login/CarrenzaVCloudDirectorSessionApiLiveTest.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.carrenza.vcloud.director.login;
-
-import org.jclouds.vcloud.director.v1_5.login.SessionApiLiveTest;
-import org.testng.annotations.Test;
-
-/**
- * {@inheritDoc}
- */
-@Test(groups = { "live", "user" }, singleThreaded = true, testName = "CarrenzaVCloudDirectorSessionApiLiveTest")
-public class CarrenzaVCloudDirectorSessionApiLiveTest extends SessionApiLiveTest {
-
- public CarrenzaVCloudDirectorSessionApiLiveTest() {
- provider = "carrenza-vcloud-director";
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/6825ed3d/carrenza-vcloud-director/src/test/resources/log4j.xml
----------------------------------------------------------------------
diff --git a/carrenza-vcloud-director/src/test/resources/log4j.xml b/carrenza-vcloud-director/src/test/resources/log4j.xml
deleted file mode 100644
index daefa0e..0000000
--- a/carrenza-vcloud-director/src/test/resources/log4j.xml
+++ /dev/null
@@ -1,157 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
-
- <!--
- For more configuration infromation and examples see the Apache
- Log4j website: http://logging.apache.org/log4j/
- -->
-<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"
- debug="false">
-
- <!-- A time/date based rolling appender -->
- <appender name="WIREFILE" class="org.apache.log4j.DailyRollingFileAppender">
- <param name="File" value="target/test-data/jclouds-wire.log" />
- <param name="Append" value="true" />
-
- <!-- Rollover at midnight each day -->
- <param name="DatePattern" value="'.'yyyy-MM-dd" />
-
- <param name="Threshold" value="TRACE" />
-
- <layout class="org.apache.log4j.PatternLayout">
- <!-- The default pattern: Date Priority [Category] Message\n -->
- <param name="ConversionPattern" value="%d %-5p [%c] (%t) %m%n" />
-
- <!--
- The full pattern: Date MS Priority [Category]
- (Thread:NDC) Message\n <param name="ConversionPattern"
- value="%d %-5r %-5p [%c] (%t:%x) %m%n"/>
- -->
- </layout>
- </appender>
-
- <!-- A time/date based rolling appender -->
- <appender name="FILE" class="org.apache.log4j.DailyRollingFileAppender">
- <param name="File" value="target/test-data/jclouds.log" />
- <param name="Append" value="true" />
-
- <!-- Rollover at midnight each day -->
- <param name="DatePattern" value="'.'yyyy-MM-dd" />
-
- <param name="Threshold" value="TRACE" />
-
- <layout class="org.apache.log4j.PatternLayout">
- <!-- The default pattern: Date Priority [Category] Message\n -->
- <param name="ConversionPattern" value="%d %-5p [%c] (%t) %m%n" />
-
- <!--
- The full pattern: Date MS Priority [Category]
- (Thread:NDC) Message\n <param name="ConversionPattern"
- value="%d %-5r %-5p [%c] (%t:%x) %m%n"/>
- -->
- </layout>
- </appender>
-
- <!-- A time/date based rolling appender -->
- <appender name="COMPUTEFILE" class="org.apache.log4j.DailyRollingFileAppender">
- <param name="File" value="target/test-data/jclouds-compute.log" />
- <param name="Append" value="true" />
-
- <!-- Rollover at midnight each day -->
- <param name="DatePattern" value="'.'yyyy-MM-dd" />
-
- <param name="Threshold" value="TRACE" />
-
- <layout class="org.apache.log4j.PatternLayout">
- <!-- The default pattern: Date Priority [Category] Message\n -->
- <param name="ConversionPattern" value="%d %-5p [%c] (%t) %m%n" />
-
- <!--
- The full pattern: Date MS Priority [Category]
- (Thread:NDC) Message\n <param name="ConversionPattern"
- value="%d %-5r %-5p [%c] (%t:%x) %m%n"/>
- -->
- </layout>
- </appender>
-
- <!-- A time/date based rolling appender -->
- <appender name="SSHFILE" class="org.apache.log4j.DailyRollingFileAppender">
- <param name="File" value="target/test-data/jclouds-ssh.log" />
- <param name="Append" value="true" />
-
- <!-- Rollover at midnight each day -->
- <param name="DatePattern" value="'.'yyyy-MM-dd" />
-
- <param name="Threshold" value="TRACE" />
-
- <layout class="org.apache.log4j.PatternLayout">
- <!-- The default pattern: Date Priority [Category] Message\n -->
- <param name="ConversionPattern" value="%d %-5p [%c] (%t) %m%n" />
-
- <!--
- The full pattern: Date MS Priority [Category]
- (Thread:NDC) Message\n <param name="ConversionPattern"
- value="%d %-5r %-5p [%c] (%t:%x) %m%n"/>
- -->
- </layout>
- </appender>
-
- <appender name="ASYNCCOMPUTE" class="org.apache.log4j.AsyncAppender">
- <appender-ref ref="COMPUTEFILE" />
- </appender>
-
- <appender name="ASYNCSSH" class="org.apache.log4j.AsyncAppender">
- <appender-ref ref="SSHFILE" />
- </appender>
-
- <appender name="ASYNC" class="org.apache.log4j.AsyncAppender">
- <appender-ref ref="FILE" />
- </appender>
-
- <appender name="ASYNCWIRE" class="org.apache.log4j.AsyncAppender">
- <appender-ref ref="WIREFILE" />
- </appender>
-
- <!-- ================ -->
- <!-- Limit categories -->
- <!-- ================ -->
-
- <category name="org.jclouds">
- <priority value="DEBUG" />
- <appender-ref ref="ASYNC" />
- </category>
-
- <!-- set to trace to get more info when parser fail -->
- <category name="org.jclouds.http.functions.ParseSax">
- <priority value="TRACE" />
- <appender-ref ref="ASYNC" />
- </category>
-
- <category name="jclouds.headers">
- <priority value="DEBUG" />
- <appender-ref ref="ASYNCWIRE" />
- </category>
-
- <category name="jclouds.ssh">
- <priority value="DEBUG" />
- <appender-ref ref="ASYNCSSH" />
- </category>
-
- <category name="jclouds.wire">
- <priority value="DEBUG" />
- <appender-ref ref="ASYNCWIRE" />
- </category>
-
- <category name="jclouds.compute">
- <priority value="TRACE" />
- <appender-ref ref="ASYNCCOMPUTE" />
- </category>
- <!-- ======================= -->
- <!-- Setup the Root category -->
- <!-- ======================= -->
-
- <root>
- <priority value="WARN" />
- </root>
-
-</log4j:configuration>
[5/9] git commit: Remove smartos-ssh,
which hasn't been published in over a year.
Posted by ad...@apache.org.
Remove smartos-ssh, which hasn't been published in over a year.
Project: http://git-wip-us.apache.org/repos/asf/jclouds-labs/repo
Commit: http://git-wip-us.apache.org/repos/asf/jclouds-labs/commit/1795ff7e
Tree: http://git-wip-us.apache.org/repos/asf/jclouds-labs/tree/1795ff7e
Diff: http://git-wip-us.apache.org/repos/asf/jclouds-labs/diff/1795ff7e
Branch: refs/heads/master
Commit: 1795ff7e17e4775af759a89576bc5bd164a9d7a9
Parents: 1bdd26c
Author: Adrian Cole <ad...@gmail.com>
Authored: Sun Oct 5 09:20:13 2014 -0700
Committer: Adrian Cole <ad...@apache.org>
Committed: Sun Oct 5 10:22:36 2014 -0700
----------------------------------------------------------------------
smartos-ssh/README.md | 20 --
smartos-ssh/pom.xml | 119 ---------
.../org/jclouds/smartos/SmartOSApiMetadata.java | 73 ------
.../jclouds/smartos/SmartOSHostController.java | 259 -------------------
.../SmartOSComputeServiceContextModule.java | 57 ----
.../compute/config/SmartOSParserModule.java | 61 -----
.../jclouds/smartos/compute/domain/DataSet.java | 149 -----------
.../org/jclouds/smartos/compute/domain/VM.java | 187 -------------
.../jclouds/smartos/compute/domain/VmNIC.java | 135 ----------
.../smartos/compute/domain/VmSpecification.java | 236 -----------------
.../compute/functions/DataSetToImage.java | 59 -----
.../compute/functions/DatacenterToLocation.java | 49 ----
.../compute/functions/VMToNodeMetadata.java | 103 --------
.../functions/VmSpecificationToHardware.java | 43 ---
.../strategy/SmartOSComputeServiceAdapter.java | 156 -----------
.../services/org.jclouds.apis.ApiMetadata | 1 -
...ManagerComputeServiceContextBuilderTest.java | 76 ------
.../SmartOSManagerComputeServiceLiveTest.java | 54 ----
.../smartos/compute/domain/DataSetTest.java | 55 ----
.../jclouds/smartos/compute/domain/VMTest.java | 55 ----
.../compute/parse/ParseVmSpecificationTest.java | 68 -----
smartos-ssh/src/test/resources/log4j.xml | 190 --------------
.../compute/domain/dsadm-list-response.txt | 11 -
.../compute/domain/vmadm-list-response.txt | 2 -
smartos-ssh/src/test/resources/vmspec.json | 19 --
25 files changed, 2237 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1795ff7e/smartos-ssh/README.md
----------------------------------------------------------------------
diff --git a/smartos-ssh/README.md b/smartos-ssh/README.md
deleted file mode 100644
index 7ca7d43..0000000
--- a/smartos-ssh/README.md
+++ /dev/null
@@ -1,20 +0,0 @@
-
-This is designed for interacting with a Joyent SmartOS host, in order to be able to leverage
-the lightweight VM support (nee Solaris Zones).
-
-It is planned to support KVM VMs in the future.
-
---------------
-
-#Setup
-
-Have a SmartOS installation, that you know either the root password for, or a secondary account with sufficient
-permissions to be able to run the vm tools (vmadm, dsadm).
-
-That's it!
-
---------------
-
-#Notes:
-
-- This is a work in progress, so please report any bugs that you find.
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1795ff7e/smartos-ssh/pom.xml
----------------------------------------------------------------------
diff --git a/smartos-ssh/pom.xml b/smartos-ssh/pom.xml
deleted file mode 100644
index 8f404c2..0000000
--- a/smartos-ssh/pom.xml
+++ /dev/null
@@ -1,119 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- 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.labs</groupId>
- <artifactId>jclouds-labs</artifactId>
- <version>2.0.0-SNAPSHOT</version>
- </parent>
-
- <!-- TODO: when out of labs, switch to org.jclouds.api -->
- <groupId>org.apache.jclouds.labs</groupId>
- <artifactId>smartos-ssh</artifactId>
- <name>smartos ssh api</name>
- <description>jclouds components to access SmartOS over SSH</description>
- <packaging>bundle</packaging>
-
- <properties>
- <test.smartos-ssh.endpoint>https://api.joyentcloud.com</test.smartos-ssh.endpoint>
- <test.smartos-ssh.api-version>~6.5</test.smartos-ssh.api-version>
- <test.smartos-ssh.build-version />
- <test.smartos-ssh.identity>FIXME_IDENTITY</test.smartos-ssh.identity>
- <test.smartos-ssh.credential>FIXME_CREDENTIALS</test.smartos-ssh.credential>
- <jclouds.osgi.export>org.jclouds.joyent.cloudapi.v6_5*;version="${project.version}"</jclouds.osgi.export>
- <jclouds.osgi.import>
- 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-compute</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.jclouds</groupId>
- <artifactId>jclouds-compute</artifactId>
- <version>${project.version}</version>
- <type>test-jar</type>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.jclouds</groupId>
- <artifactId>jclouds-core</artifactId>
- <version>${project.version}</version>
- <type>test-jar</type>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.jclouds.driver</groupId>
- <artifactId>jclouds-slf4j</artifactId>
- <version>${project.version}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.jclouds.driver</groupId>
- <artifactId>jclouds-sshj</artifactId>
- <version>${project.version}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>ch.qos.logback</groupId>
- <artifactId>logback-classic</artifactId>
- <scope>test</scope>
- </dependency>
- </dependencies>
-
- <profiles>
- <profile>
- <id>live</id>
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-plugin</artifactId>
- <executions>
- <execution>
- <id>integration</id>
- <phase>integration-test</phase>
- <goals>
- <goal>test</goal>
- </goals>
- <configuration>
- <systemPropertyVariables>
- <test.smartos-ssh.endpoint>${test.smartos-ssh.endpoint}</test.smartos-ssh.endpoint>
- <test.smartos-ssh.api-version>${test.smartos-ssh.api-version}</test.smartos-ssh.api-version>
- <test.smartos-ssh.build-version>${test.smartos-ssh.build-version}</test.smartos-ssh.build-version>
- <test.smartos-ssh.identity>${test.smartos-ssh.identity}</test.smartos-ssh.identity>
- <test.smartos-ssh.credential>${test.smartos-ssh.credential}</test.smartos-ssh.credential>
- </systemPropertyVariables>
- </configuration>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
- </profile>
- </profiles>
-
-</project>
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1795ff7e/smartos-ssh/src/main/java/org/jclouds/smartos/SmartOSApiMetadata.java
----------------------------------------------------------------------
diff --git a/smartos-ssh/src/main/java/org/jclouds/smartos/SmartOSApiMetadata.java b/smartos-ssh/src/main/java/org/jclouds/smartos/SmartOSApiMetadata.java
deleted file mode 100644
index aa8db9d..0000000
--- a/smartos-ssh/src/main/java/org/jclouds/smartos/SmartOSApiMetadata.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.smartos;
-
-import java.net.URI;
-
-import org.jclouds.apis.internal.BaseApiMetadata;
-import org.jclouds.compute.ComputeServiceContext;
-import org.jclouds.smartos.compute.config.SmartOSComputeServiceContextModule;
-import org.jclouds.smartos.compute.config.SmartOSParserModule;
-
-import com.google.common.collect.ImmutableSet;
-import com.google.inject.Module;
-
-/**
- * Implementation of {@link ApiMetadata} for SmartOS
- */
-public class SmartOSApiMetadata extends BaseApiMetadata {
-
- @Override
- public Builder toBuilder() {
- return new Builder().fromApiMetadata(this);
- }
-
- public SmartOSApiMetadata() {
- super(new Builder());
- }
-
- protected SmartOSApiMetadata(Builder builder) {
- super(builder);
- }
-
- public static class Builder extends BaseApiMetadata.Builder<Builder> {
-
- protected Builder() {
- id("smartos-ssh")
- .name("SmartOS SSH API")
- .identityName("Username")
- .defaultIdentity("root")
- .defaultCredential("smartos")
- .defaultEndpoint("http://localhost")
- .documentation(URI.create("http://http://wiki.smartos.org/display/DOC/How+to+create+a+Virtual+Machine+in+SmartOS"))
- .view(ComputeServiceContext.class)
- .defaultModules(ImmutableSet.<Class<? extends Module>>builder()
- .add(SmartOSComputeServiceContextModule.class)
- .add(SmartOSParserModule.class).build());
- }
-
- @Override
- public SmartOSApiMetadata build() {
- return new SmartOSApiMetadata(this);
- }
-
- @Override
- protected Builder self() {
- return this;
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1795ff7e/smartos-ssh/src/main/java/org/jclouds/smartos/SmartOSHostController.java
----------------------------------------------------------------------
diff --git a/smartos-ssh/src/main/java/org/jclouds/smartos/SmartOSHostController.java b/smartos-ssh/src/main/java/org/jclouds/smartos/SmartOSHostController.java
deleted file mode 100644
index a7d4a89..0000000
--- a/smartos-ssh/src/main/java/org/jclouds/smartos/SmartOSHostController.java
+++ /dev/null
@@ -1,259 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.smartos;
-
-import static com.google.common.base.Preconditions.checkNotNull;
-
-import java.io.BufferedReader;
-import java.io.IOException;
-import java.io.StringReader;
-import java.net.URI;
-import java.util.Map;
-import java.util.UUID;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
-import javax.inject.Inject;
-
-import org.jclouds.domain.Credentials;
-import org.jclouds.domain.LoginCredentials;
-import org.jclouds.json.Json;
-import org.jclouds.location.Provider;
-import org.jclouds.smartos.compute.domain.DataSet;
-import org.jclouds.smartos.compute.domain.VM;
-import org.jclouds.smartos.compute.domain.VmSpecification;
-import org.jclouds.ssh.SshClient;
-
-import com.google.common.base.Splitter;
-import com.google.common.base.Supplier;
-import com.google.common.collect.ImmutableList;
-import com.google.common.collect.ImmutableMap;
-import com.google.common.net.HostAndPort;
-import com.google.common.util.concurrent.RateLimiter;
-
-/**
- * A host machine that runs smartOS
- */
-public class SmartOSHostController {
- protected final String hostname;
- protected final Supplier<Credentials> creds;
- protected final SshClient.Factory sshClientFactory;
- protected final Json json;
-
- protected transient SshClient _connection;
-
- public static class HostException extends RuntimeException {
-
- public HostException(String s, Throwable throwable) {
- super(s, throwable);
- }
-
- public HostException(String s) {
- super(s);
- }
- }
-
- public static class NoResponseException extends Exception {
-
- public NoResponseException() {
- }
- }
-
- @Inject
- protected SmartOSHostController(@Provider Supplier<URI> provider,
- @org.jclouds.location.Provider final Supplier<Credentials> creds, SshClient.Factory sshFactory, Json json) {
- this.hostname = provider.get().getHost();
- this.creds = creds;
- this.sshClientFactory = sshFactory;
- this.json = json;
- }
-
- public String getDescription() {
- return "SmartOS@" + hostname;
- }
-
- public String getHostname() {
- return hostname;
- }
-
- public SshClient.Factory getSshClientFactory() {
- return sshClientFactory;
- }
-
- protected SshClient getConnection() {
- if (_connection == null) {
- Credentials currentCreds = checkNotNull(creds.get(), "credential supplier returned null");
-
- LoginCredentials credentials = new LoginCredentials.Builder().user(currentCreds.identity)
- .password(currentCreds.credential).build();
-
- _connection = getSshClientFactory().create(HostAndPort.fromParts(hostname, 22), credentials);
-
- _connection.connect();
-
- }
- return _connection;
- }
-
- public String exec(String cmd) {
- return getConnection().exec(cmd).getOutput();
- }
-
- public String vmList() {
- return exec("vmadm list -p");
- }
-
- public Map<String, String> getVMIpAddresses(UUID vmId) {
- ImmutableMap.Builder<String, String> netMapBuilder = ImmutableMap.builder();
-
- String response = getConnection().exec("zlogin " + vmId.toString() + " ifconfig -a4").getOutput();
-
- if (response.length() == 0)
- return ImmutableMap.of();
-
- Iterable<String> strings = Splitter.on("\n").split(response);
- Pattern inetMatcher = Pattern.compile("inet [0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}");
-
- String iface = "";
- for (String line : strings) {
- if (line.length() > 0 && Character.isLetterOrDigit(line.charAt(0))) {
- iface = line.substring(0, line.indexOf(":"));
- } else {
- Matcher matcher = inetMatcher.matcher(line);
- if (matcher.find())
- netMapBuilder.put(iface, matcher.group().substring(5));
- }
- }
-
- return netMapBuilder.build();
-
- }
-
- /**
- * What remotely available images are there in the cloud?
- *
- * @return Collection of datasets
- */
- public Iterable<DataSet> getAvailableImages() {
- return toSpecList(exec("dsadm avail"));
- }
-
- public Iterable<DataSet> getLocalDatasets() {
- return toSpecList(exec("dsadm list"));
- }
-
- public Iterable<VM> getVMs() {
- return toVMList(exec("vmadm list -p"));
- }
-
- public VM createVM(VmSpecification specification) {
-
- String specAsJson = json.toJson(specification);
- String response = getConnection().exec("(cat <<END\n" + specAsJson + "\nEND\n) | vmadm create").getOutput();
-
- Pattern uuidPattern = Pattern.compile("[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}");
- Matcher matcher = uuidPattern.matcher(response);
- if (matcher.find()) {
- String uuid = matcher.group();
- return getVM(UUID.fromString(uuid));
- } else {
- throw new HostException("Error creating Host: response = " + response + "\n source = " + specAsJson);
- }
-
- }
-
- private Iterable<DataSet> toSpecList(String string) {
-
- try {
- BufferedReader r = new BufferedReader(new StringReader(string));
- r.readLine(); // Skip
- String line;
- ImmutableList.Builder<DataSet> resultBuilder = ImmutableList.builder();
- while ((line = r.readLine()) != null) {
- DataSet dataset = DataSet.builder().fromDsadmString(line).build();
-
- resultBuilder.add(dataset);
- }
- return resultBuilder.build();
- } catch (IOException e) {
- throw new HostException("Error parsing response when building spec list", e);
- }
- }
-
- private Iterable<VM> toVMList(String string) {
- try {
- BufferedReader r = new BufferedReader(new StringReader(string));
- String line;
- ImmutableList.Builder<VM> resultBuilder = ImmutableList.builder();
- while ((line = r.readLine()) != null) {
- VM vm = VM.builder().fromVmadmString(line).build();
-
- Map<String, String> ipAddresses;
- RateLimiter limiter = RateLimiter.create(1.0);
- for (int i = 0; i < 30; i++) {
- ipAddresses = getVMIpAddresses(vm.getUuid());
- if (!ipAddresses.isEmpty()) {
- // Got some
- String ip = ipAddresses.get("net0");
- if (ip != null && !ip.equals("0.0.0.0")) {
- vm = vm.toBuilder().publicAddress(ip).build();
- break;
- }
- }
-
- limiter.acquire();
- }
-
- resultBuilder.add(vm);
- }
- return resultBuilder.build();
- } catch (IOException e) {
- throw new HostException("Error parsing response when building VM list", e);
- }
- }
-
- public VM getVM(UUID serverId) {
- for (VM vm : getVMs())
- if (vm.getUuid().equals(serverId))
- return vm;
- return null;
- }
-
- public DataSet getDataSet(UUID imageId) {
- for (DataSet ds : getLocalDatasets()) {
- if (ds.getUuid().equals(imageId))
- return ds;
- }
- return null;
- }
-
- public void destroyHost(UUID uuid) {
- exec("vmadm delete " + uuid.toString());
- }
-
- public void rebootHost(UUID uuid) {
- exec("vmadm reboot " + uuid.toString());
- }
-
- public void stopHost(UUID uuid) {
- exec("vmadm stop -p");
- }
-
- public void startHost(UUID uuid) {
- exec("vmadm start " + uuid.toString());
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1795ff7e/smartos-ssh/src/main/java/org/jclouds/smartos/compute/config/SmartOSComputeServiceContextModule.java
----------------------------------------------------------------------
diff --git a/smartos-ssh/src/main/java/org/jclouds/smartos/compute/config/SmartOSComputeServiceContextModule.java b/smartos-ssh/src/main/java/org/jclouds/smartos/compute/config/SmartOSComputeServiceContextModule.java
deleted file mode 100644
index cf57c4b..0000000
--- a/smartos-ssh/src/main/java/org/jclouds/smartos/compute/config/SmartOSComputeServiceContextModule.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.smartos.compute.config;
-
-import org.jclouds.compute.ComputeServiceAdapter;
-import org.jclouds.compute.config.ComputeServiceAdapterContextModule;
-import org.jclouds.compute.domain.NodeMetadata;
-import org.jclouds.domain.Location;
-import org.jclouds.smartos.SmartOSHostController;
-import org.jclouds.smartos.compute.domain.DataSet;
-import org.jclouds.smartos.compute.domain.VM;
-import org.jclouds.smartos.compute.domain.VmSpecification;
-import org.jclouds.smartos.compute.functions.DataSetToImage;
-import org.jclouds.smartos.compute.functions.DatacenterToLocation;
-import org.jclouds.smartos.compute.functions.VMToNodeMetadata;
-import org.jclouds.smartos.compute.functions.VmSpecificationToHardware;
-import org.jclouds.smartos.compute.strategy.SmartOSComputeServiceAdapter;
-
-import com.google.common.base.Function;
-import com.google.inject.TypeLiteral;
-
-public class SmartOSComputeServiceContextModule extends
- ComputeServiceAdapterContextModule<VM, VmSpecification, DataSet, SmartOSHostController> {
-
- @Override
- protected void configure() {
- super.configure();
- bind(new TypeLiteral<ComputeServiceAdapter<VM, VmSpecification, DataSet, SmartOSHostController>>() {
- }).to(SmartOSComputeServiceAdapter.class);
- bind(new TypeLiteral<Function<VM, NodeMetadata>>() {
- }).to(VMToNodeMetadata.class);
- bind(new TypeLiteral<Function<DataSet, org.jclouds.compute.domain.Image>>() {
- }).to(DataSetToImage.class);
- bind(new TypeLiteral<Function<VmSpecification, org.jclouds.compute.domain.Hardware>>() {
- }).to(VmSpecificationToHardware.class);
- bind(new TypeLiteral<Function<SmartOSHostController, Location>>() {
- }).to(DatacenterToLocation.class);
- // to have the compute service adapter override default locations
- // install(new LocationsFromComputeServiceAdapterModule<VM, VmSpecification, DataSet,
- // SmartOSHost>(){});
-
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1795ff7e/smartos-ssh/src/main/java/org/jclouds/smartos/compute/config/SmartOSParserModule.java
----------------------------------------------------------------------
diff --git a/smartos-ssh/src/main/java/org/jclouds/smartos/compute/config/SmartOSParserModule.java b/smartos-ssh/src/main/java/org/jclouds/smartos/compute/config/SmartOSParserModule.java
deleted file mode 100644
index dc7be0f..0000000
--- a/smartos-ssh/src/main/java/org/jclouds/smartos/compute/config/SmartOSParserModule.java
+++ /dev/null
@@ -1,61 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.smartos.compute.config;
-
-import java.lang.reflect.Type;
-import java.util.Map;
-
-import javax.inject.Singleton;
-
-import org.jclouds.smartos.compute.domain.DataSet;
-
-import com.google.common.collect.ImmutableMap;
-import com.google.gson.JsonDeserializationContext;
-import com.google.gson.JsonDeserializer;
-import com.google.gson.JsonElement;
-import com.google.gson.JsonParseException;
-import com.google.gson.JsonPrimitive;
-import com.google.gson.JsonSerializationContext;
-import com.google.gson.JsonSerializer;
-import com.google.inject.AbstractModule;
-import com.google.inject.Provides;
-
-public class SmartOSParserModule extends AbstractModule {
-
- @Provides
- @Singleton
- public Map<Type, Object> provideCustomAdapterBindings() {
- return ImmutableMap.<Type, Object> of(DataSet.class, new FlattenDataset());
- }
-
- public static class FlattenDataset implements JsonSerializer<DataSet>, JsonDeserializer<DataSet> {
- @Override
- public JsonElement serialize(DataSet dataset, Type type, JsonSerializationContext jsonSerializationContext) {
- return new JsonPrimitive(dataset.getUuid().toString());
- }
-
- @Override
- public DataSet deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context)
- throws JsonParseException {
- return DataSet.builder().uuid(json.getAsString()).build();
- }
- }
-
- @Override
- protected void configure() {
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1795ff7e/smartos-ssh/src/main/java/org/jclouds/smartos/compute/domain/DataSet.java
----------------------------------------------------------------------
diff --git a/smartos-ssh/src/main/java/org/jclouds/smartos/compute/domain/DataSet.java b/smartos-ssh/src/main/java/org/jclouds/smartos/compute/domain/DataSet.java
deleted file mode 100644
index e3a9c65..0000000
--- a/smartos-ssh/src/main/java/org/jclouds/smartos/compute/domain/DataSet.java
+++ /dev/null
@@ -1,149 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.smartos.compute.domain;
-
-import java.util.UUID;
-
-import com.google.common.base.MoreObjects;
-import com.google.common.base.Objects;
-
-/**
- * Dataset is a pre-built image ready to be cloned.
- */
-public class DataSet {
-
- public static Builder builder() {
- return new Builder();
- }
-
- public Builder toBuilder() {
- return builder().fromDataSet(this);
- }
-
- public static class Builder {
-
- private UUID uuid;
- private String os;
- private String published;
- private String urn;
-
- public Builder uuid(UUID uuid) {
- this.uuid = uuid;
- return this;
- }
-
- public Builder uuid(String uuid) {
- this.uuid = UUID.fromString(uuid);
- return this;
- }
-
- public Builder os(String os) {
- this.os = os;
- return this;
- }
-
- public Builder published(String published) {
- this.published = published;
- return this;
- }
-
- public Builder urn(String urn) {
- this.urn = urn;
- return this;
- }
-
- public Builder fromDsadmString(String string) {
- String[] sections = string.split(" ");
-
- uuid(sections[0]);
- os(sections[1]);
- published(sections[2]);
- urn(sections[3]);
-
- return this;
- }
-
- public DataSet build() {
- return new DataSet(uuid, os, published, urn);
- }
-
- public Builder fromDataSet(DataSet in) {
- return uuid(in.getUuid()).os(in.getOs()).published(in.getPublished()).urn(in.getUrn());
- }
- }
-
- private final UUID uuid;
- private final String os;
- private final String published;
- private final String urn;
-
- protected DataSet(UUID uuid, String os, String published, String urn) {
- this.uuid = uuid;
- this.os = os;
- this.published = published;
- this.urn = urn;
- }
-
- public UUID getUuid() {
- return uuid;
- }
-
- public String getOs() {
- return os;
- }
-
- public String getPublished() {
- return published;
- }
-
- public String getUrn() {
- return urn;
- }
-
- /**
- * {@inheritDoc}
- */
- @Override
- public int hashCode() {
- // UUID is primary key
- return uuid.hashCode();
- }
-
- /**
- * {@inheritDoc}
- */
- @Override
- public boolean equals(Object obj) {
- if (this == obj)
- return true;
- if (obj == null)
- return false;
- if (getClass() != obj.getClass())
- return false;
- return uuid.equals(((DataSet) obj).uuid);
- }
-
- /**
- * {@inheritDoc}
- */
- @Override
- public String toString() {
- return MoreObjects.toStringHelper(this).omitNullValues().add("uuid", uuid).add("os", os).add("published", published)
- .add("urn", urn).toString();
- }
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1795ff7e/smartos-ssh/src/main/java/org/jclouds/smartos/compute/domain/VM.java
----------------------------------------------------------------------
diff --git a/smartos-ssh/src/main/java/org/jclouds/smartos/compute/domain/VM.java b/smartos-ssh/src/main/java/org/jclouds/smartos/compute/domain/VM.java
deleted file mode 100644
index d81127f..0000000
--- a/smartos-ssh/src/main/java/org/jclouds/smartos/compute/domain/VM.java
+++ /dev/null
@@ -1,187 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.smartos.compute.domain;
-
-import java.util.UUID;
-
-import com.google.common.base.MoreObjects;
-import com.google.common.base.Objects;
-import com.google.common.base.Optional;
-
-/**
- * Representing a Virtual Machine (Zone / KVM )
- **/
-public class VM {
-
- public enum State {
- RUNNING, STOPPED, INCOMPLETE
- }
-
- public static Builder builder() {
- return new Builder();
- }
-
- public Builder toBuilder() {
- return builder().fromVM(this);
- }
-
- public static class Builder {
-
- private Optional<String> publicAddress = Optional.absent();
- private UUID uuid;
- private String type;
- private String ram;
- private State state = State.STOPPED;
- private String alias;
-
- public Builder uuid(UUID uuid) {
- this.uuid = uuid;
- return this;
- }
-
- public Builder uuid(String uuid) {
- this.uuid = UUID.fromString(uuid);
- return this;
- }
-
- public Builder publicAddress(String publicAddress) {
- this.publicAddress = Optional.fromNullable(publicAddress);
- return this;
- }
-
- public Builder type(String type) {
- this.type = type;
- return this;
- }
-
- public Builder ram(String ram) {
- this.ram = ram;
- return this;
- }
-
- public Builder state(String state) {
- this.state = State.valueOf(state.toUpperCase());
- return this;
- }
-
- public Builder state(State state) {
- this.state = state;
- return this;
- }
-
- public Builder alias(String alias) {
- this.alias = alias;
- return this;
- }
-
- public Builder fromVmadmString(String string) {
- String[] sections = string.split(":");
-
- uuid(sections[0]);
-
- type(sections[1]);
- ram(sections[2]);
- state(sections[3]);
-
- if (sections.length > 4)
- alias(sections[4]);
-
- return this;
- }
-
- public VM build() {
- return new VM(publicAddress, uuid, type, ram, state, alias);
- }
-
- public Builder fromVM(VM in) {
- return publicAddress(in.getPublicAddress().orNull()).uuid(in.getUuid()).type(in.getType()).ram(in.getRam())
- .state(in.getState()).alias(in.getAlias());
- }
- }
-
- private Optional<String> publicAddress;
- private final UUID uuid;
- private String type;
- private String ram;
- private State state;
- private String alias;
-
- protected VM(Optional<String> publicAddress, UUID uuid, String type, String ram, State state, String alias) {
- this.publicAddress = publicAddress;
- this.uuid = uuid;
- this.type = type;
- this.ram = ram;
- this.state = state;
- this.alias = alias;
- }
-
- public State getState() {
- return state;
- }
-
- public Optional<String> getPublicAddress() {
- return publicAddress;
- }
-
- public UUID getUuid() {
- return uuid;
- }
-
- public String getType() {
- return type;
- }
-
- public String getRam() {
- return ram;
- }
-
- public String getAlias() {
- return alias;
- }
-
- /**
- * {@inheritDoc}
- */
- @Override
- public int hashCode() {
- // UUID is primary key
- return uuid.hashCode();
- }
-
- /**
- * {@inheritDoc}
- */
- @Override
- public boolean equals(Object obj) {
- if (this == obj)
- return true;
- if (obj == null)
- return false;
- if (getClass() != obj.getClass())
- return false;
- return uuid.equals(((VM) obj).getUuid());
- }
-
- /**
- * {@inheritDoc}
- */
- @Override
- public String toString() {
- return MoreObjects.toStringHelper(this).omitNullValues().add("uuid", uuid).add("type", type).add("ram", ram)
- .add("alias", alias).add("publicAddress", publicAddress.orNull()).toString();
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1795ff7e/smartos-ssh/src/main/java/org/jclouds/smartos/compute/domain/VmNIC.java
----------------------------------------------------------------------
diff --git a/smartos-ssh/src/main/java/org/jclouds/smartos/compute/domain/VmNIC.java b/smartos-ssh/src/main/java/org/jclouds/smartos/compute/domain/VmNIC.java
deleted file mode 100644
index 285b4c0..0000000
--- a/smartos-ssh/src/main/java/org/jclouds/smartos/compute/domain/VmNIC.java
+++ /dev/null
@@ -1,135 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.smartos.compute.domain;
-
-import java.beans.ConstructorProperties;
-
-import javax.inject.Named;
-
-import com.google.common.base.MoreObjects;
-import com.google.common.base.Objects;
-
-/**
- * Specification of a network card.
- */
-public class VmNIC {
-
- public static Builder builder() {
- return new Builder();
- }
-
- public Builder toBuilder() {
- return builder().fromVmNIC(this);
- }
-
- public static class Builder {
-
- private String tag = "admin";
- private String ip;
- private String netmask;
- private String gateway;
-
- public Builder simpleDHCPNic() {
- tag = "admin";
- ip = "dhcp";
- return this;
- }
-
- public Builder tag(String tag) {
- this.tag = tag;
- return this;
- }
-
- public Builder ip(String ip) {
- this.ip = ip;
- return this;
- }
-
- public Builder netmask(String netmask) {
- this.netmask = netmask;
- return this;
- }
-
- public Builder gateway(String gateway) {
- this.gateway = gateway;
- return this;
- }
-
- public VmNIC build() {
- return new VmNIC(tag, ip, netmask, gateway);
- }
-
- public Builder fromVmNIC(VmNIC in) {
- return tag(in.getTag()).ip(in.getIp()).netmask(in.getNetmask()).gateway(in.getGateway());
- }
- }
-
- @Named("nic_tag")
- private final String tag;
- private final String ip;
- private final String netmask;
- private final String gateway;
-
- @ConstructorProperties({ "nic_tag", "ip", "netmask", "gateway" })
- protected VmNIC(String tag, String ip, String netmask, String gateway) {
- this.tag = tag;
- this.ip = ip;
- this.netmask = netmask;
- this.gateway = gateway;
- }
-
- public String getTag() {
- return tag;
- }
-
- public String getIp() {
- return ip;
- }
-
- public String getNetmask() {
- return netmask;
- }
-
- public String getGateway() {
- return gateway;
- }
-
- @Override
- public int hashCode() {
- return Objects.hashCode(tag, ip, netmask, gateway);
- }
-
- @Override
- public boolean equals(Object obj) {
- if (this == obj)
- return true;
- if (obj == null || getClass() != obj.getClass())
- return false;
- VmNIC that = VmNIC.class.cast(obj);
- return Objects.equal(this.tag, that.tag) && Objects.equal(this.ip, that.ip)
- && Objects.equal(this.netmask, that.netmask) && Objects.equal(this.gateway, that.gateway);
- }
-
- /**
- * {@inheritDoc}
- */
- @Override
- public String toString() {
- return MoreObjects.toStringHelper(this).omitNullValues().add("tag", tag).add("ip", ip).add("netmask", netmask)
- .add("gateway", gateway).toString();
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1795ff7e/smartos-ssh/src/main/java/org/jclouds/smartos/compute/domain/VmSpecification.java
----------------------------------------------------------------------
diff --git a/smartos-ssh/src/main/java/org/jclouds/smartos/compute/domain/VmSpecification.java b/smartos-ssh/src/main/java/org/jclouds/smartos/compute/domain/VmSpecification.java
deleted file mode 100644
index 0aaf52c..0000000
--- a/smartos-ssh/src/main/java/org/jclouds/smartos/compute/domain/VmSpecification.java
+++ /dev/null
@@ -1,236 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.smartos.compute.domain;
-
-import java.beans.ConstructorProperties;
-import java.util.List;
-
-import javax.inject.Named;
-
-import com.google.common.base.MoreObjects;
-import com.google.common.base.Objects;
-import com.google.common.collect.ImmutableList;
-
-/**
- * Specification of a VM to build, based on a dataset.
- */
-public class VmSpecification {
-
- public static Builder builder() {
- return new Builder();
- }
-
- public Builder toBuilder() {
- return builder().fromVmSpecification(this);
- }
-
- public static class Builder {
-
- private String alias;
- private String brand = "joyent";
- private DataSet dataset;
- private String dnsDomain = "local";
- private String quota = "0";
-
- private int maxPhysicalMemory = 256;
- private int maxLockedMemory = 256;
- private int maxSwap = 256;
- private int tmpFs = 256;
-
- private ImmutableList.Builder<VmNIC> nics = ImmutableList.<VmNIC> builder();
-
- public Builder alias(String alias) {
- this.alias = alias;
- return this;
- }
-
- public Builder brand(String brand) {
- this.brand = brand;
- return this;
- }
-
- public Builder dataset(DataSet dataset) {
- this.dataset = dataset;
- return this;
- }
-
- public Builder dnsDomain(String dnsDomain) {
- this.dnsDomain = dnsDomain;
- return this;
- }
-
- public Builder quota(String quota) {
- this.quota = quota;
- return this;
- }
-
- public Builder nics(Iterable<VmNIC> nics) {
- this.nics.addAll(nics);
- return this;
- }
-
- public Builder nic(VmNIC nic) {
- this.nics.add(nic);
- return this;
- }
-
- public Builder maxPhysicalMemory(int maxPhysicalMemory) {
- this.maxPhysicalMemory = maxPhysicalMemory;
- return this;
- }
-
- public Builder maxLockedMemory(int maxLockedMemory) {
- this.maxLockedMemory = maxLockedMemory;
- return this;
- }
-
- public Builder maxSwap(int maxSwap) {
- this.maxSwap = maxSwap;
- return this;
- }
-
- public Builder tmpFs(int tmpFs) {
- this.tmpFs = tmpFs;
- return this;
- }
-
- public Builder ram(int ram) {
- this.maxPhysicalMemory = ram;
- this.maxLockedMemory = ram;
- this.maxSwap = ram;
- this.tmpFs = ram;
- return this;
- }
-
- public VmSpecification build() {
- return new VmSpecification(alias, brand, dataset, dnsDomain, quota, maxPhysicalMemory, maxLockedMemory,
- maxSwap, tmpFs, nics.build());
- }
-
- public Builder fromVmSpecification(VmSpecification in) {
- return alias(in.getAlias()).brand(in.getBrand()).dataset(in.getDataset()).dnsDomain(in.getDnsDomain())
- .quota(in.getQuota()).maxPhysicalMemory(in.getMaxPhysicalMemory())
- .maxLockedMemory(in.getMaxLockedMemory()).maxSwap(in.getMaxSwap()).tmpFs(in.getTmpFs())
- .nics(in.getNics());
- }
- }
-
- private final String alias;
- private final String brand;
- @Named("dataset_uuid")
- private final DataSet dataset;
- @Named("dns_domain")
- private final String dnsDomain;
- private final String quota;
- @Named("max_physical_memory")
- private final int maxPhysicalMemory;
- @Named("max_locked_memory")
- private final int maxLockedMemory;
- @Named("max_swap")
- private final int maxSwap;
- @Named("tmpfs")
- private final int tmpFs;
- private final List<VmNIC> nics;
-
- @ConstructorProperties({ "alias", "brand", "dataset_uuid", "dns_domain", "quota", "max_physical_memory",
- "max_locked_memory", "max_swap", "tmpfs", "nics" })
- protected VmSpecification(String alias, String brand, DataSet dataset, String dnsDomain, String quota,
- int maxPhysicalMemory, int maxLockedMemory, int maxSwap, int tmpFs, List<VmNIC> nics) {
- this.alias = alias;
- this.brand = brand;
- this.dataset = dataset;
- this.dnsDomain = dnsDomain;
- this.quota = quota;
- this.maxPhysicalMemory = maxPhysicalMemory;
- this.maxLockedMemory = maxLockedMemory;
- this.maxSwap = maxSwap;
- this.tmpFs = tmpFs;
- this.nics = ImmutableList.copyOf(nics);
- }
-
- public String getAlias() {
- return alias;
- }
-
- public String getBrand() {
- return brand;
- }
-
- public DataSet getDataset() {
- return dataset;
- }
-
- public String getDnsDomain() {
- return dnsDomain;
- }
-
- public String getQuota() {
- return quota;
- }
-
- public int getMaxPhysicalMemory() {
- return maxPhysicalMemory;
- }
-
- public int getMaxLockedMemory() {
- return maxLockedMemory;
- }
-
- public int getMaxSwap() {
- return maxSwap;
- }
-
- public int getTmpFs() {
- return tmpFs;
- }
-
- public List<VmNIC> getNics() {
- return nics;
- }
-
- @Override
- public int hashCode() {
- return Objects.hashCode(alias, brand, dataset, dnsDomain, quota, maxPhysicalMemory, maxLockedMemory, maxSwap,
- tmpFs, nics);
- }
-
- @Override
- public boolean equals(Object obj) {
- if (this == obj)
- return true;
- if (obj == null || getClass() != obj.getClass())
- return false;
- VmSpecification that = VmSpecification.class.cast(obj);
- return Objects.equal(this.alias, that.alias) && Objects.equal(this.brand, that.brand)
- && Objects.equal(this.dataset, that.dataset) && Objects.equal(this.dnsDomain, that.dnsDomain)
- && Objects.equal(this.quota, that.quota)
- && Objects.equal(this.maxPhysicalMemory, that.maxPhysicalMemory)
- && Objects.equal(this.maxLockedMemory, that.maxLockedMemory)
- && Objects.equal(this.maxSwap, that.maxSwap) && Objects.equal(this.tmpFs, that.tmpFs)
- && Objects.equal(this.nics, that.nics);
-
- }
-
- @Override
- public String toString() {
- return MoreObjects.toStringHelper(this).omitNullValues().add("alias", alias).add("brand", brand)
- .add("dataset_uuid", dataset != null ? dataset.getUuid() : null).add("dns_domain", dnsDomain)
- .add("quota", quota).add("max_physical_memory", maxPhysicalMemory)
- .add("max_locked_memory", maxLockedMemory).add("max_swap", maxSwap).add("tmpfs", tmpFs)
- .add("nics", nics).toString();
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1795ff7e/smartos-ssh/src/main/java/org/jclouds/smartos/compute/functions/DataSetToImage.java
----------------------------------------------------------------------
diff --git a/smartos-ssh/src/main/java/org/jclouds/smartos/compute/functions/DataSetToImage.java b/smartos-ssh/src/main/java/org/jclouds/smartos/compute/functions/DataSetToImage.java
deleted file mode 100644
index 5b58e22..0000000
--- a/smartos-ssh/src/main/java/org/jclouds/smartos/compute/functions/DataSetToImage.java
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.smartos.compute.functions;
-
-import javax.annotation.Resource;
-import javax.inject.Named;
-import javax.inject.Singleton;
-
-import org.jclouds.compute.domain.Image;
-import org.jclouds.compute.domain.ImageBuilder;
-import org.jclouds.compute.domain.OperatingSystem;
-import org.jclouds.compute.domain.OsFamily;
-import org.jclouds.compute.reference.ComputeServiceConstants;
-import org.jclouds.logging.Logger;
-import org.jclouds.smartos.compute.domain.DataSet;
-
-import com.google.common.base.Function;
-
-@Singleton
-public class DataSetToImage implements Function<DataSet, Image> {
- @Resource
- @Named(ComputeServiceConstants.COMPUTE_LOGGER)
- protected Logger logger = Logger.NULL;
-
- @Override
- public Image apply(DataSet from) {
-
- ImageBuilder builder = new ImageBuilder();
- builder.ids(from.getUuid() + "");
- builder.name(from.getUrn());
- builder.description(from.getUrn());
- builder.status(Image.Status.AVAILABLE);
-
- OsFamily family;
- try {
- family = OsFamily.SOLARIS;
- builder.operatingSystem(new OperatingSystem.Builder().name(from.getUrn()).description(from.getUrn())
- .family(family).build());
- } catch (IllegalArgumentException e) {
- logger.debug("<< didn't match os(%s)", from);
- }
- return builder.build();
- }
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1795ff7e/smartos-ssh/src/main/java/org/jclouds/smartos/compute/functions/DatacenterToLocation.java
----------------------------------------------------------------------
diff --git a/smartos-ssh/src/main/java/org/jclouds/smartos/compute/functions/DatacenterToLocation.java b/smartos-ssh/src/main/java/org/jclouds/smartos/compute/functions/DatacenterToLocation.java
deleted file mode 100644
index a14a27a..0000000
--- a/smartos-ssh/src/main/java/org/jclouds/smartos/compute/functions/DatacenterToLocation.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.smartos.compute.functions;
-
-import static com.google.common.base.Preconditions.checkNotNull;
-
-import javax.inject.Inject;
-import javax.inject.Provider;
-import javax.inject.Singleton;
-
-import org.jclouds.domain.Location;
-import org.jclouds.domain.LocationBuilder;
-import org.jclouds.domain.LocationScope;
-import org.jclouds.smartos.SmartOSHostController;
-
-import com.google.common.base.Function;
-import com.google.common.base.Supplier;
-
-@Singleton
-public class DatacenterToLocation implements Function<SmartOSHostController, Location> {
- private final Provider<Supplier<Location>> provider;
-
- // allow us to lazy discover the provider of a resource
- @Inject
- public DatacenterToLocation(Provider<Supplier<Location>> provider) {
- this.provider = checkNotNull(provider, "provider");
- }
-
- @Override
- public Location apply(SmartOSHostController from) {
- return new LocationBuilder().scope(LocationScope.ZONE).id(from.getHostname() + "")
- .description(from.getDescription()).parent(provider.get().get()).build();
- }
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1795ff7e/smartos-ssh/src/main/java/org/jclouds/smartos/compute/functions/VMToNodeMetadata.java
----------------------------------------------------------------------
diff --git a/smartos-ssh/src/main/java/org/jclouds/smartos/compute/functions/VMToNodeMetadata.java b/smartos-ssh/src/main/java/org/jclouds/smartos/compute/functions/VMToNodeMetadata.java
deleted file mode 100644
index a0aa88a..0000000
--- a/smartos-ssh/src/main/java/org/jclouds/smartos/compute/functions/VMToNodeMetadata.java
+++ /dev/null
@@ -1,103 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.smartos.compute.functions;
-
-import static com.google.common.base.Preconditions.checkNotNull;
-import static com.google.common.collect.FluentIterable.from;
-
-import java.util.Map;
-import java.util.Set;
-
-import javax.inject.Inject;
-import javax.inject.Singleton;
-
-import org.jclouds.collect.Memoized;
-import org.jclouds.compute.domain.Hardware;
-import org.jclouds.compute.domain.Image;
-import org.jclouds.compute.domain.NodeMetadata;
-import org.jclouds.compute.domain.NodeMetadataBuilder;
-import org.jclouds.compute.functions.GroupNamingConvention;
-import org.jclouds.compute.predicates.HardwarePredicates;
-import org.jclouds.compute.predicates.ImagePredicates;
-import org.jclouds.domain.Credentials;
-import org.jclouds.domain.Location;
-import org.jclouds.domain.LoginCredentials;
-import org.jclouds.location.predicates.LocationPredicates;
-import org.jclouds.smartos.compute.domain.VM;
-
-import com.google.common.base.Function;
-import com.google.common.base.Optional;
-import com.google.common.base.Supplier;
-import com.google.common.collect.ImmutableMap;
-import com.google.common.collect.ImmutableSet;
-
-@Singleton
-public class VMToNodeMetadata implements Function<VM, NodeMetadata> {
-
- public static final Map<VM.State, NodeMetadata.Status> serverStatusToNodeStatus = ImmutableMap
- .<VM.State, NodeMetadata.Status> builder().put(VM.State.RUNNING, NodeMetadata.Status.RUNNING)//
- .put(VM.State.STOPPED, NodeMetadata.Status.SUSPENDED)//
- .put(VM.State.INCOMPLETE, NodeMetadata.Status.PENDING)//
- .build();
-
- private final Supplier<Set<? extends Hardware>> hardware;
- private final Supplier<Set<? extends Location>> locations;
- private final Supplier<Set<? extends Image>> images;
- private final Map<String, Credentials> credentialStore;
- private final GroupNamingConvention nodeNamingConvention;
-
- @Inject
- VMToNodeMetadata(Map<String, Credentials> credentialStore, @Memoized Supplier<Set<? extends Hardware>> hardware,
- @Memoized Supplier<Set<? extends Location>> locations, @Memoized Supplier<Set<? extends Image>> images,
- GroupNamingConvention.Factory namingConvention) {
- this.nodeNamingConvention = checkNotNull(namingConvention, "namingConvention").createWithoutPrefix();
- this.credentialStore = checkNotNull(credentialStore, "credentialStore");
- this.hardware = checkNotNull(hardware, "hardware");
- this.locations = checkNotNull(locations, "locations");
- this.images = checkNotNull(images, "images");
- }
-
- @Override
- public NodeMetadata apply(VM from) {
- // convert the result object to a jclouds NodeMetadata
- NodeMetadataBuilder builder = new NodeMetadataBuilder();
- builder.ids(from.getUuid() + "");
- builder.name(from.getAlias());
- builder.location(from(locations.get()).firstMatch(LocationPredicates.idEquals(from.getUuid() + "")).orNull());
- builder.group(nodeNamingConvention.groupInUniqueNameOrNull(from.getType()));
- builder.imageId(from.getType() + "");
- Image image = from(images.get()).firstMatch(ImagePredicates.idEquals(from.getUuid() + "")).orNull();
- if (image != null)
- builder.operatingSystem(image.getOperatingSystem());
- builder.hardware(from(hardware.get()).firstMatch(HardwarePredicates.idEquals(from.getUuid() + "")).orNull());
- builder.status(serverStatusToNodeStatus.get(from.getState()));
- try {
- if (from.getState() == VM.State.RUNNING) {
- Optional<String> ip = from.getPublicAddress();
- if (ip.isPresent()) {
- builder.publicAddresses(ImmutableSet.<String> of(ip.get()));
- builder.privateAddresses(ImmutableSet.<String> of(ip.get()));
- }
- }
- } catch (Exception ex) {
- // None?
- }
- // builder.privateAddresses(ImmutableSet.<String> of(from.privateAddress));
- builder.credentials(LoginCredentials.fromCredentials(credentialStore.get(from.getUuid() + "")));
- return builder.build();
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1795ff7e/smartos-ssh/src/main/java/org/jclouds/smartos/compute/functions/VmSpecificationToHardware.java
----------------------------------------------------------------------
diff --git a/smartos-ssh/src/main/java/org/jclouds/smartos/compute/functions/VmSpecificationToHardware.java b/smartos-ssh/src/main/java/org/jclouds/smartos/compute/functions/VmSpecificationToHardware.java
deleted file mode 100644
index 9cbcf98..0000000
--- a/smartos-ssh/src/main/java/org/jclouds/smartos/compute/functions/VmSpecificationToHardware.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.smartos.compute.functions;
-
-import javax.inject.Singleton;
-
-import org.jclouds.compute.domain.Hardware;
-import org.jclouds.compute.domain.HardwareBuilder;
-import org.jclouds.compute.domain.Processor;
-import org.jclouds.smartos.compute.domain.VmSpecification;
-
-import com.google.common.base.Function;
-import com.google.common.collect.ImmutableList;
-
-@Singleton
-public class VmSpecificationToHardware implements Function<VmSpecification, Hardware> {
-
- @Override
- public Hardware apply(VmSpecification from) {
- HardwareBuilder builder = new HardwareBuilder();
- builder.ids(from.getAlias());
- builder.name(from.getAlias());
- builder.processors(ImmutableList.of(new Processor(1, 1.0)));
- builder.ram(from.getMaxPhysicalMemory());
- // builder.volumes(ImmutableList.<Volume> of(new VolumeImpl(from.disk, true, false)));
- return builder.build();
- }
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1795ff7e/smartos-ssh/src/main/java/org/jclouds/smartos/compute/strategy/SmartOSComputeServiceAdapter.java
----------------------------------------------------------------------
diff --git a/smartos-ssh/src/main/java/org/jclouds/smartos/compute/strategy/SmartOSComputeServiceAdapter.java b/smartos-ssh/src/main/java/org/jclouds/smartos/compute/strategy/SmartOSComputeServiceAdapter.java
deleted file mode 100644
index 5fdab9b..0000000
--- a/smartos-ssh/src/main/java/org/jclouds/smartos/compute/strategy/SmartOSComputeServiceAdapter.java
+++ /dev/null
@@ -1,156 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.smartos.compute.strategy;
-
-import static com.google.common.base.Preconditions.checkNotNull;
-
-import java.util.Collection;
-import java.util.Map;
-import java.util.UUID;
-
-import javax.inject.Inject;
-import javax.inject.Singleton;
-
-import org.jclouds.compute.ComputeServiceAdapter;
-import org.jclouds.compute.domain.Template;
-import org.jclouds.domain.LoginCredentials;
-import org.jclouds.smartos.SmartOSHostController;
-import org.jclouds.smartos.compute.domain.DataSet;
-import org.jclouds.smartos.compute.domain.VM;
-import org.jclouds.smartos.compute.domain.VmNIC;
-import org.jclouds.smartos.compute.domain.VmSpecification;
-
-import com.google.common.base.Function;
-import com.google.common.collect.ImmutableSet;
-import com.google.common.collect.Lists;
-import com.google.common.collect.Maps;
-
-/**
- * defines the connection between the {@link org.jclouds.smartos.compute.domain.SmartOSHostController}
- * implementation and the jclouds {@link ComputeService}
- */
-@Singleton
-public class SmartOSComputeServiceAdapter implements ComputeServiceAdapter<VM, VmSpecification, DataSet, SmartOSHostController> {
- private final SmartOSHostController host;
- private final Map<String, VmSpecification> specificationMap;
-
-
- @Inject
- public SmartOSComputeServiceAdapter(SmartOSHostController host) {
- this.host = checkNotNull(host, "host");
-
- Collection<VmSpecification> specifications = Lists.newArrayList();
-
- specifications.add(VmSpecification.builder().alias("Standard Joyent VM, 1Gb RAM / 2Gb SWAP").ram(1024).maxSwap(2048)
- .nic(VmNIC.builder().simpleDHCPNic().build()).build());
-
- specifications.add(VmSpecification.builder().alias("Standard Joyent VM, 2Gb RAM / 4Gb SWAP").ram(2048).maxSwap(4096)
- .nic(VmNIC.builder().simpleDHCPNic().build()).build());
-
- specifications.add(VmSpecification.builder().alias("Standard Joyent VM, 4Gb RAM / 8Gb SWAP").ram(4096).maxSwap(8192)
- .nic(VmNIC.builder().simpleDHCPNic().build()).build());
-
- specifications.add(VmSpecification.builder().alias("Standard Joyent VM, 8Gb RAM / 16Gb SWAP").ram(8192).maxSwap(16384)
- .nic(VmNIC.builder().simpleDHCPNic().build()).build());
-
- specificationMap = Maps.uniqueIndex(specifications, new Function<VmSpecification,String>() {
- @Override
- public String apply(VmSpecification input) {
- return input.getAlias();
- }
- });
-
- }
-
- private SmartOSHostController getHost() {
- return host;
- }
-
- @Override
- public NodeAndInitialCredentials<VM> createNodeWithGroupEncodedIntoName(String tag, String name, Template template) {
-
- VmSpecification.Builder builder = VmSpecification.builder();
- String providerId = template.getHardware().getProviderId();
-
- if (specificationMap.containsKey(providerId)) {
- builder.fromVmSpecification( specificationMap.get(providerId) );
- } else {
- builder.nic(VmNIC.builder().simpleDHCPNic().build());
- }
-
- VmSpecification specification = builder.alias(name)
- .dataset(getHost().getDataSet(UUID.fromString(template.getImage().getProviderId())))
- .build();
-
- VM from = getHost().createVM(specification);
-
- return new NodeAndInitialCredentials<VM>(from, from.getUuid() + "", LoginCredentials.builder().user("smartos")
- .password("smartos").build());
- }
-
-
-
- @Override
- public Iterable<VmSpecification> listHardwareProfiles() {
- return specificationMap.values();
- }
-
- @Override
- public Iterable<DataSet> listImages() {
- return getHost().getLocalDatasets();
- }
-
- @Override
- public DataSet getImage(String id) {
- return getHost().getDataSet(UUID.fromString(id));
- }
-
- @Override
- public Iterable<VM> listNodes() {
- return getHost().getVMs();
- }
-
- @Override
- public Iterable<SmartOSHostController> listLocations() {
- return ImmutableSet.of();
- }
-
- @Override
- public VM getNode(String id) {
- return getHost().getVM(UUID.fromString(id));
- }
-
- @Override
- public void destroyNode(String id) {
- getHost().destroyHost(UUID.fromString(id));
- }
-
- @Override
- public void rebootNode(String id) {
- getHost().rebootHost(UUID.fromString(id));
- }
-
- @Override
- public void resumeNode(String id) {
- getHost().startHost(UUID.fromString(id));
- }
-
- @Override
- public void suspendNode(String id) {
- getHost().stopHost(UUID.fromString(id));
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1795ff7e/smartos-ssh/src/main/resources/META-INF/services/org.jclouds.apis.ApiMetadata
----------------------------------------------------------------------
diff --git a/smartos-ssh/src/main/resources/META-INF/services/org.jclouds.apis.ApiMetadata b/smartos-ssh/src/main/resources/META-INF/services/org.jclouds.apis.ApiMetadata
deleted file mode 100644
index 04d5659..0000000
--- a/smartos-ssh/src/main/resources/META-INF/services/org.jclouds.apis.ApiMetadata
+++ /dev/null
@@ -1 +0,0 @@
-org.jclouds.smartos.SmartOSApiMetadata
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1795ff7e/smartos-ssh/src/test/java/org/jclouds/smartos/compute/SmartOSManagerComputeServiceContextBuilderTest.java
----------------------------------------------------------------------
diff --git a/smartos-ssh/src/test/java/org/jclouds/smartos/compute/SmartOSManagerComputeServiceContextBuilderTest.java b/smartos-ssh/src/test/java/org/jclouds/smartos/compute/SmartOSManagerComputeServiceContextBuilderTest.java
deleted file mode 100644
index 41cf033..0000000
--- a/smartos-ssh/src/test/java/org/jclouds/smartos/compute/SmartOSManagerComputeServiceContextBuilderTest.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.smartos.compute;
-
-import static org.testng.Assert.assertEquals;
-
-import java.util.Properties;
-
-import org.jclouds.ContextBuilder;
-import org.jclouds.compute.ComputeServiceContext;
-import org.jclouds.internal.ContextImpl;
-import org.jclouds.smartos.SmartOSApiMetadata;
-import org.jclouds.sshj.config.SshjSshClientModule;
-import org.testng.annotations.Test;
-
-import com.google.common.collect.ImmutableSet;
-import com.google.inject.Module;
-
-@Test(groups = "unit", testName = "ServerManagerContextBuilderTest")
-public class SmartOSManagerComputeServiceContextBuilderTest {
-
- @Test
- public void testCanBuildWithApiMetadata() {
- ComputeServiceContext context = ContextBuilder.newBuilder(new SmartOSApiMetadata())
- .modules(ImmutableSet.<Module> of(getSshModule())).build(ComputeServiceContext.class);
- context.close();
- }
-
- @Test
- public void testCanBuildById() {
- ComputeServiceContext context = ContextBuilder.newBuilder("smartos-ssh")
- .modules(ImmutableSet.<Module> of(getSshModule())).build(ComputeServiceContext.class);
- context.close();
- }
-
- @Test
- public void testCanBuildWithOverridingProperties() {
- Properties overrides = new Properties();
- overrides.setProperty("smartos-ssh.endpoint", "http://host");
- overrides.setProperty("smartos-ssh.api-version", "1");
-
- ComputeServiceContext context = ContextBuilder.newBuilder("smartos-ssh")
- .modules(ImmutableSet.<Module> of(getSshModule())).overrides(overrides)
- .build(ComputeServiceContext.class);
-
- context.close();
- }
-
- @Test
- public void testUnwrapIsCorrectType() {
- ComputeServiceContext context = ContextBuilder.newBuilder("smartos-ssh")
- .modules(ImmutableSet.<Module> of(getSshModule())).build(ComputeServiceContext.class);
-
- assertEquals(context.unwrap().getClass(), ContextImpl.class);
-
- context.close();
- }
-
- protected Module getSshModule() {
- return new SshjSshClientModule();
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1795ff7e/smartos-ssh/src/test/java/org/jclouds/smartos/compute/SmartOSManagerComputeServiceLiveTest.java
----------------------------------------------------------------------
diff --git a/smartos-ssh/src/test/java/org/jclouds/smartos/compute/SmartOSManagerComputeServiceLiveTest.java b/smartos-ssh/src/test/java/org/jclouds/smartos/compute/SmartOSManagerComputeServiceLiveTest.java
deleted file mode 100644
index de76392..0000000
--- a/smartos-ssh/src/test/java/org/jclouds/smartos/compute/SmartOSManagerComputeServiceLiveTest.java
+++ /dev/null
@@ -1,54 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.smartos.compute;
-
-import static org.jclouds.compute.util.ComputeServiceUtils.getCores;
-import static org.testng.Assert.assertEquals;
-
-import org.jclouds.compute.domain.NodeMetadata;
-import org.jclouds.compute.domain.OsFamily;
-import org.jclouds.compute.domain.Template;
-import org.jclouds.compute.internal.BaseComputeServiceLiveTest;
-import org.testng.annotations.Test;
-
-import com.google.common.collect.ImmutableMap;
-
-@Test(groups = "live", enabled = true, singleThreaded = true)
-public class SmartOSManagerComputeServiceLiveTest extends BaseComputeServiceLiveTest {
-
- public SmartOSManagerComputeServiceLiveTest() {
- provider = "smartos-ssh";
- }
-
- @Test
- public void testTemplateBuilder() {
- Template defaultTemplate = client.templateBuilder().build();
- assertEquals(defaultTemplate.getImage().getOperatingSystem().is64Bit(), true);
- assertEquals(defaultTemplate.getImage().getOperatingSystem().getVersion(), "5.3");
- assertEquals(defaultTemplate.getImage().getOperatingSystem().getFamily(), OsFamily.CENTOS);
- assertEquals(defaultTemplate.getLocation().getId(), "1");
- assertEquals(getCores(defaultTemplate.getHardware()), 0.5d);
- }
-
- // smartos-ssh does not support metadata
- @Override
- protected void checkUserMetadataContains(NodeMetadata node, ImmutableMap<String, String> userMetadata) {
- assert node.getUserMetadata().equals(ImmutableMap.<String, String> of()) : String.format(
- "node userMetadata did not match %s %s", userMetadata, node);
- }
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1795ff7e/smartos-ssh/src/test/java/org/jclouds/smartos/compute/domain/DataSetTest.java
----------------------------------------------------------------------
diff --git a/smartos-ssh/src/test/java/org/jclouds/smartos/compute/domain/DataSetTest.java b/smartos-ssh/src/test/java/org/jclouds/smartos/compute/domain/DataSetTest.java
deleted file mode 100644
index d65a16d..0000000
--- a/smartos-ssh/src/test/java/org/jclouds/smartos/compute/domain/DataSetTest.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.smartos.compute.domain;
-
-import java.io.BufferedReader;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.util.List;
-import java.util.UUID;
-
-import org.testng.Assert;
-import org.testng.annotations.Test;
-
-import com.google.common.collect.ImmutableList;
-
-@Test(groups = "unit", testName = "DataSetTest")
-public class DataSetTest {
-
- @Test
- public void testParse() throws IOException {
- // Response from console from a 'dsadm list'
- InputStream is = getClass().getResourceAsStream("dsadm-list-response.txt");
-
- BufferedReader r = new BufferedReader(new InputStreamReader(is));
- String line = r.readLine(); // skip line
- ImmutableList.Builder<DataSet> resultBuilder = ImmutableList.builder();
- while ((line = r.readLine()) != null) {
- DataSet ds = DataSet.builder().fromDsadmString(line).build();
-
- resultBuilder.add(ds);
- }
- List<DataSet> dataSetList = resultBuilder.build();
-
- Assert.assertEquals(10, dataSetList.size());
-
- Assert.assertEquals(UUID.fromString("c0ffee88-883e-47cf-80d1-ad71cc872180"), dataSetList.get(0).getUuid());
- Assert.assertEquals("nrm:nrm:realtime-jenkins:1.7", dataSetList.get(0).getUrn());
-
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1795ff7e/smartos-ssh/src/test/java/org/jclouds/smartos/compute/domain/VMTest.java
----------------------------------------------------------------------
diff --git a/smartos-ssh/src/test/java/org/jclouds/smartos/compute/domain/VMTest.java b/smartos-ssh/src/test/java/org/jclouds/smartos/compute/domain/VMTest.java
deleted file mode 100644
index 0f36d96..0000000
--- a/smartos-ssh/src/test/java/org/jclouds/smartos/compute/domain/VMTest.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.smartos.compute.domain;
-
-import java.io.BufferedReader;
-import java.io.IOException;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-import java.util.List;
-import java.util.UUID;
-
-import org.testng.Assert;
-import org.testng.annotations.Test;
-
-import com.google.common.collect.ImmutableList;
-
-@Test(groups = "unit", testName = "VMTest")
-public class VMTest {
-
- @Test
- public void testParse() throws IOException {
- // Response from console from a 'vmadm list -p'
- InputStream is = getClass().getResourceAsStream("vmadm-list-response.txt");
-
- BufferedReader r = new BufferedReader(new InputStreamReader(is));
- String line = null;
- ImmutableList.Builder<VM> resultBuilder = ImmutableList.builder();
- while ((line = r.readLine()) != null) {
- VM vm = VM.builder().fromVmadmString(line).build();
-
- resultBuilder.add(vm);
- }
- List<VM> vmList = resultBuilder.build();
-
- Assert.assertEquals(2, vmList.size());
-
- Assert.assertEquals(UUID.fromString("60bd2ae5-4e4d-4952-88f9-1b850259d914"), vmList.get(0).getUuid());
- Assert.assertEquals(VM.State.STOPPED, vmList.get(0).getState());
-
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1795ff7e/smartos-ssh/src/test/java/org/jclouds/smartos/compute/parse/ParseVmSpecificationTest.java
----------------------------------------------------------------------
diff --git a/smartos-ssh/src/test/java/org/jclouds/smartos/compute/parse/ParseVmSpecificationTest.java b/smartos-ssh/src/test/java/org/jclouds/smartos/compute/parse/ParseVmSpecificationTest.java
deleted file mode 100644
index 351c9ba..0000000
--- a/smartos-ssh/src/test/java/org/jclouds/smartos/compute/parse/ParseVmSpecificationTest.java
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.smartos.compute.parse;
-
-import javax.ws.rs.Consumes;
-import javax.ws.rs.core.MediaType;
-
-import org.jclouds.json.BaseItemParserTest;
-import org.jclouds.json.config.GsonModule;
-import org.jclouds.smartos.compute.config.SmartOSParserModule;
-import org.jclouds.smartos.compute.domain.DataSet;
-import org.jclouds.smartos.compute.domain.VmNIC;
-import org.jclouds.smartos.compute.domain.VmSpecification;
-import org.testng.annotations.Test;
-
-import com.google.inject.Guice;
-import com.google.inject.Injector;
-
-@Test(groups = "unit", testName = "ParseVmSpecificationTest")
-public class ParseVmSpecificationTest extends BaseItemParserTest<VmSpecification> {
-
- @Override
- public String resource() {
- return "/vmspec.json";
- }
-
- @Override
- @Consumes(MediaType.APPLICATION_JSON)
- public VmSpecification expected() {
- return VmSpecification.builder()
- .alias("small")
- .brand("joyent")
- .dataset(DataSet.builder()
- .uuid("56108678-1183-11e1-83c3-ff3185a5b47f")
- .os("linux")
- .published("2011-11-18")
- .urn("sdc:sdc:ubuntu10.04:0.1.0").build())
- .nic(VmNIC.builder()
- .ip("192.168.1.4")
- .gateway("192.168.1.1")
- .netmask("255.255.255.0")
- .tag("eth0").build())
- .dnsDomain("local")
- .quota("0")
- .maxPhysicalMemory(256)
- .maxLockedMemory(256)
- .maxSwap(256)
- .tmpFs(256).build();
- }
-
- protected Injector injector() {
- return Guice.createInjector(new SmartOSParserModule(), new GsonModule());
- }
-}
[9/9] git commit: Fix poms so that modernizer doesn't fail on
snapshot.
Posted by ad...@apache.org.
Fix poms so that modernizer doesn't fail on snapshot.
Project: http://git-wip-us.apache.org/repos/asf/jclouds-labs/repo
Commit: http://git-wip-us.apache.org/repos/asf/jclouds-labs/commit/0cbcf181
Tree: http://git-wip-us.apache.org/repos/asf/jclouds-labs/tree/0cbcf181
Diff: http://git-wip-us.apache.org/repos/asf/jclouds-labs/diff/0cbcf181
Branch: refs/heads/master
Commit: 0cbcf181c505af0eb8da705724c71dcceec8d721
Parents: ba934d2
Author: Adrian Cole <ad...@gmail.com>
Authored: Sun Oct 5 09:34:12 2014 -0700
Committer: Adrian Cole <ad...@apache.org>
Committed: Sun Oct 5 10:23:06 2014 -0700
----------------------------------------------------------------------
azurecompute/pom.xml | 14 ++++++++++++++
pom.xml | 14 ++++++++++++++
2 files changed, 28 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/0cbcf181/azurecompute/pom.xml
----------------------------------------------------------------------
diff --git a/azurecompute/pom.xml b/azurecompute/pom.xml
index 9271498..f83ed52 100644
--- a/azurecompute/pom.xml
+++ b/azurecompute/pom.xml
@@ -59,6 +59,20 @@
</repository>
</repositories>
+ <!-- For modernizer, which depends on jclouds-resources snapshot. -->
+ <pluginRepositories>
+ <pluginRepository>
+ <id>apache-snapshots</id>
+ <url>https://repository.apache.org/content/repositories/snapshots</url>
+ <releases>
+ <enabled>false</enabled>
+ </releases>
+ <snapshots>
+ <enabled>true</enabled>
+ </snapshots>
+ </pluginRepository>
+ </pluginRepositories>
+
<dependencies>
<dependency>
<groupId>com.jamesmurty.utils</groupId>
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/0cbcf181/pom.xml
----------------------------------------------------------------------
diff --git a/pom.xml b/pom.xml
index 9140562..37c43ec 100644
--- a/pom.xml
+++ b/pom.xml
@@ -64,6 +64,20 @@
</repository>
</repositories>
+ <!-- For modernizer, which depends on jclouds-resources snapshot. -->
+ <pluginRepositories>
+ <pluginRepository>
+ <id>apache-snapshots</id>
+ <url>https://repository.apache.org/content/repositories/snapshots</url>
+ <releases>
+ <enabled>false</enabled>
+ </releases>
+ <snapshots>
+ <enabled>true</enabled>
+ </snapshots>
+ </pluginRepository>
+ </pluginRepositories>
+
<modules>
<module>azurecompute</module>
<module>docker</module>
[2/9] git commit: Remove greenqloud-compute,
which hasn't been published in over a year.
Posted by ad...@apache.org.
Remove greenqloud-compute, which hasn't been published in over a year.
Project: http://git-wip-us.apache.org/repos/asf/jclouds-labs/repo
Commit: http://git-wip-us.apache.org/repos/asf/jclouds-labs/commit/abd0f7a8
Tree: http://git-wip-us.apache.org/repos/asf/jclouds-labs/tree/abd0f7a8
Diff: http://git-wip-us.apache.org/repos/asf/jclouds-labs/diff/abd0f7a8
Branch: refs/heads/master
Commit: abd0f7a82bc7e376987d05f8d4e9ec5fc44b72cf
Parents: 6825ed3
Author: Adrian Cole <ad...@gmail.com>
Authored: Sun Oct 5 09:20:13 2014 -0700
Committer: Adrian Cole <ad...@apache.org>
Committed: Sun Oct 5 10:22:20 2014 -0700
----------------------------------------------------------------------
greenqloud-compute/pom.xml | 130 ----------
.../GreenQloudComputeProviderMetadata.java | 94 -------
...QloudComputeComputeServiceContextModule.java | 34 ---
.../GreenQloudComputeReviseParsedImage.java | 60 -----
.../GreenQloudEC2HardwareSupplier.java | 102 --------
.../org.jclouds.providers.ProviderMetadata | 1 -
...udComputeComputeServiceLiveTestDisabled.java | 28 --
.../compute/GreenQloudComputeProviderTest.java | 30 ---
...reenQloudComputeTemplateBuilderLiveTest.java | 101 --------
.../DescribeRegionsResponseHandlerTest.java | 52 ----
.../services/GreenQloudAMIClientLiveTest.java | 28 --
...AvailabilityZoneAndRegionClientLiveTest.java | 28 --
...eenQloudElasticBlockStoreClientLiveTest.java | 28 --
...reenQloudElasticIPAddressClientLiveTest.java | 28 --
.../GreenQloudInstanceClientLiveTest.java | 28 --
.../GreenQloudKeyPairClientLiveTest.java | 28 --
.../GreenQloudSecurityGroupClientLiveTest.java | 28 --
.../GreenQloudComputeReviseParsedImageTest.java | 251 ------------------
.../src/test/resources/greenqloud_images.xml | 257 -------------------
19 files changed, 1336 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/abd0f7a8/greenqloud-compute/pom.xml
----------------------------------------------------------------------
diff --git a/greenqloud-compute/pom.xml b/greenqloud-compute/pom.xml
deleted file mode 100644
index e22bedc..0000000
--- a/greenqloud-compute/pom.xml
+++ /dev/null
@@ -1,130 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- 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.labs</groupId>
- <artifactId>jclouds-labs</artifactId>
- <version>2.0.0-SNAPSHOT</version>
- </parent>
-
- <!-- TODO: when out of labs, switch to org.jclouds.provider -->
- <groupId>org.apache.jclouds.labs</groupId>
- <artifactId>greenqloud-compute</artifactId>
- <name>jclouds Greenqloud compute provider</name>
- <description>Compute implementation targeted to Greenqloud Web Services</description>
- <packaging>bundle</packaging>
-
- <properties>
- <test.greenqloud-compute.endpoint>https://api.greenqloud.com</test.greenqloud-compute.endpoint>
- <test.greenqloud-compute.api-version>2010-06-15</test.greenqloud-compute.api-version>
- <test.greenqloud-compute.build-version />
- <test.greenqloud-compute.identity>${test.greenqloud.identity}</test.greenqloud-compute.identity>
- <test.greenqloud-compute.credential>${test.greenqloud.credential}</test.greenqloud-compute.credential>
- <test.greenqloud-compute.template />
- <test.greenqloud-compute.ebs-template>imageId=is-1/qmi-9ac92558</test.greenqloud-compute.ebs-template>
-
- <jclouds.osgi.export>org.jclouds.greenqloud.compute*;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.api</groupId>
- <artifactId>ec2</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.jclouds.api</groupId>
- <artifactId>ec2</artifactId>
- <version>${project.version}</version>
- <type>test-jar</type>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.jclouds</groupId>
- <artifactId>jclouds-compute</artifactId>
- <version>${project.version}</version>
- <type>test-jar</type>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.jclouds</groupId>
- <artifactId>jclouds-core</artifactId>
- <version>${project.version}</version>
- <type>test-jar</type>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.jclouds.driver</groupId>
- <artifactId>jclouds-log4j</artifactId>
- <version>${project.version}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.jclouds.driver</groupId>
- <artifactId>jclouds-sshj</artifactId>
- <version>${project.version}</version>
- <scope>test</scope>
- </dependency>
- </dependencies>
-
- <profiles>
- <profile>
- <id>live</id>
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-plugin</artifactId>
- <executions>
- <execution>
- <id>integration</id>
- <phase>integration-test</phase>
- <goals>
- <goal>test</goal>
- </goals>
- <configuration>
- <threadCount>1</threadCount>
- <systemPropertyVariables>
- <test.greenqloud-compute.endpoint>${test.greenqloud-compute.endpoint}</test.greenqloud-compute.endpoint>
- <test.greenqloud-compute.api-version>${test.greenqloud-compute.api-version}</test.greenqloud-compute.api-version>
- <test.greenqloud-compute.build-version>${test.greenqloud-compute.build-version}</test.greenqloud-compute.build-version>
- <test.greenqloud-compute.identity>${test.greenqloud-compute.identity}</test.greenqloud-compute.identity>
- <test.greenqloud-compute.credential>${test.greenqloud-compute.credential}</test.greenqloud-compute.credential>
- <test.greenqloud-compute.template>${test.greenqloud-compute.template}</test.greenqloud-compute.template>
- <test.greenqloud-compute.ebs-template>${test.greenqloud-compute.ebs-template}</test.greenqloud-compute.ebs-template>
- </systemPropertyVariables>
- </configuration>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
- </profile>
- </profiles>
-
-</project>
-
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/abd0f7a8/greenqloud-compute/src/main/java/org/jclouds/greenqloud/compute/GreenQloudComputeProviderMetadata.java
----------------------------------------------------------------------
diff --git a/greenqloud-compute/src/main/java/org/jclouds/greenqloud/compute/GreenQloudComputeProviderMetadata.java b/greenqloud-compute/src/main/java/org/jclouds/greenqloud/compute/GreenQloudComputeProviderMetadata.java
deleted file mode 100644
index 2f270e4..0000000
--- a/greenqloud-compute/src/main/java/org/jclouds/greenqloud/compute/GreenQloudComputeProviderMetadata.java
+++ /dev/null
@@ -1,94 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.greenqloud.compute;
-
-import static org.jclouds.location.reference.LocationConstants.ISO3166_CODES;
-import static org.jclouds.location.reference.LocationConstants.PROPERTY_REGION;
-import static org.jclouds.location.reference.LocationConstants.PROPERTY_REGIONS;
-
-import java.net.URI;
-import java.util.Properties;
-
-import org.jclouds.ec2.EC2ApiMetadata;
-import org.jclouds.ec2.compute.config.EC2ResolveImagesModule;
-import org.jclouds.ec2.config.EC2RestClientModule;
-import org.jclouds.greenqloud.compute.config.GreenQloudComputeComputeServiceContextModule;
-import org.jclouds.providers.ProviderMetadata;
-import org.jclouds.providers.internal.BaseProviderMetadata;
-
-import com.google.common.collect.ImmutableSet;
-import com.google.inject.Module;
-
-/**
- * Implementation of {@link org.jclouds.providers.ProviderMetadata} for Greenqloud Compute Cloud.
- */
-public class GreenQloudComputeProviderMetadata extends BaseProviderMetadata {
-
- public static Builder builder() {
- return new Builder();
- }
-
- @Override
- public Builder toBuilder() {
- return builder().fromProviderMetadata(this);
- }
-
- public GreenQloudComputeProviderMetadata() {
- super(builder());
- }
-
- public GreenQloudComputeProviderMetadata(Builder builder) {
- super(builder);
- }
-
- public static Properties defaultProperties() {
- Properties properties = new Properties();
- properties.setProperty(PROPERTY_REGIONS, "is-1");
- properties.setProperty(PROPERTY_REGION + ".is-1." + ISO3166_CODES, "IS-1");
- return properties;
- }
-
- public static class Builder extends BaseProviderMetadata.Builder {
-
- protected Builder(){
- id("greenqloud-compute")
- .name("Greenqloud Compute Cloud")
- .apiMetadata(
- new EC2ApiMetadata().toBuilder()
- .defaultModules(ImmutableSet.<Class<? extends Module>>of(EC2RestClientModule.class, EC2ResolveImagesModule.class, GreenQloudComputeComputeServiceContextModule.class))
- .build())
- .homepage(URI.create("http://www.greenqloud.com"))
- .console(URI.create("https://manage.greenqloud.com"))
- .linkedServices("greenqloud-compute", "greenqloud-storage")
- .iso3166Codes("IS-1")
- .endpoint("https://api.greenqloud.com")
- .defaultProperties(GreenQloudComputeProviderMetadata.defaultProperties());
- }
-
- @Override
- public GreenQloudComputeProviderMetadata build() {
- return new GreenQloudComputeProviderMetadata(this);
- }
-
- @Override
- public Builder fromProviderMetadata(
- ProviderMetadata in) {
- super.fromProviderMetadata(in);
- return this;
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/abd0f7a8/greenqloud-compute/src/main/java/org/jclouds/greenqloud/compute/config/GreenQloudComputeComputeServiceContextModule.java
----------------------------------------------------------------------
diff --git a/greenqloud-compute/src/main/java/org/jclouds/greenqloud/compute/config/GreenQloudComputeComputeServiceContextModule.java b/greenqloud-compute/src/main/java/org/jclouds/greenqloud/compute/config/GreenQloudComputeComputeServiceContextModule.java
deleted file mode 100644
index 9f4887d..0000000
--- a/greenqloud-compute/src/main/java/org/jclouds/greenqloud/compute/config/GreenQloudComputeComputeServiceContextModule.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.greenqloud.compute.config;
-
-import org.jclouds.ec2.compute.config.EC2ComputeServiceContextModule;
-import org.jclouds.ec2.compute.strategy.ReviseParsedImage;
-import org.jclouds.ec2.compute.suppliers.EC2HardwareSupplier;
-import org.jclouds.greenqloud.compute.strategy.GreenQloudComputeReviseParsedImage;
-import org.jclouds.greenqloud.compute.suppliers.GreenQloudEC2HardwareSupplier;
-
-public class GreenQloudComputeComputeServiceContextModule extends EC2ComputeServiceContextModule {
-
- @Override
- protected void configure() {
- super.configure();
- bind(ReviseParsedImage.class).to(GreenQloudComputeReviseParsedImage.class);
- bind(EC2HardwareSupplier.class).to(GreenQloudEC2HardwareSupplier.class);
- }
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/abd0f7a8/greenqloud-compute/src/main/java/org/jclouds/greenqloud/compute/strategy/GreenQloudComputeReviseParsedImage.java
----------------------------------------------------------------------
diff --git a/greenqloud-compute/src/main/java/org/jclouds/greenqloud/compute/strategy/GreenQloudComputeReviseParsedImage.java b/greenqloud-compute/src/main/java/org/jclouds/greenqloud/compute/strategy/GreenQloudComputeReviseParsedImage.java
deleted file mode 100644
index d1ac361..0000000
--- a/greenqloud-compute/src/main/java/org/jclouds/greenqloud/compute/strategy/GreenQloudComputeReviseParsedImage.java
+++ /dev/null
@@ -1,60 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.greenqloud.compute.strategy;
-
-import java.util.Map;
-import java.util.regex.Matcher;
-import java.util.regex.Pattern;
-
-import javax.inject.Inject;
-import javax.inject.Named;
-import javax.inject.Singleton;
-
-import org.jclouds.compute.domain.ImageBuilder;
-import org.jclouds.compute.domain.OperatingSystem;
-import org.jclouds.compute.domain.OsFamily;
-import org.jclouds.compute.reference.ComputeServiceConstants;
-import org.jclouds.compute.util.ComputeServiceUtils;
-import org.jclouds.ec2.compute.strategy.ReviseParsedImage;
-import org.jclouds.logging.Logger;
-
-@Singleton
-public class GreenQloudComputeReviseParsedImage implements ReviseParsedImage {
- public static final Pattern DEFAULT_PATTERN = Pattern.compile("(([^ ]*) ([0-9.]+) ?.*)");
-
- @javax.annotation.Resource
- @Named(ComputeServiceConstants.COMPUTE_LOGGER)
- protected Logger logger = Logger.NULL;
-
- private final Map<OsFamily, Map<String, String>> osVersionMap;
-
- @Inject
- public GreenQloudComputeReviseParsedImage(Map<OsFamily, Map<String, String>> osVersionMap) {
- this.osVersionMap = osVersionMap;
- }
-
- public void reviseParsedImage(org.jclouds.ec2.domain.Image from, ImageBuilder builder, OsFamily family,
- OperatingSystem.Builder osBuilder) {
- if (from.getDescription() != null)
- osBuilder.is64Bit(from.getDescription().contains("64-bit"));
-
- Matcher matcher = DEFAULT_PATTERN.matcher(from.getDescription());
- if (matcher.find() && matcher.groupCount() >= 3) {
- osBuilder.version(ComputeServiceUtils.parseVersionOrReturnEmptyString(family, matcher.group(3), osVersionMap));
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/abd0f7a8/greenqloud-compute/src/main/java/org/jclouds/greenqloud/compute/suppliers/GreenQloudEC2HardwareSupplier.java
----------------------------------------------------------------------
diff --git a/greenqloud-compute/src/main/java/org/jclouds/greenqloud/compute/suppliers/GreenQloudEC2HardwareSupplier.java b/greenqloud-compute/src/main/java/org/jclouds/greenqloud/compute/suppliers/GreenQloudEC2HardwareSupplier.java
deleted file mode 100644
index 7881c03..0000000
--- a/greenqloud-compute/src/main/java/org/jclouds/greenqloud/compute/suppliers/GreenQloudEC2HardwareSupplier.java
+++ /dev/null
@@ -1,102 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.greenqloud.compute.suppliers;
-
-import com.google.common.collect.ImmutableList;
-import com.google.common.collect.ImmutableSet;
-import com.google.inject.Singleton;
-import org.jclouds.compute.domain.Hardware;
-import org.jclouds.compute.domain.Processor;
-import org.jclouds.compute.domain.Volume;
-import org.jclouds.compute.domain.internal.VolumeImpl;
-import org.jclouds.ec2.compute.domain.EC2HardwareBuilder;
-import org.jclouds.ec2.compute.suppliers.EC2HardwareSupplier;
-
-
-import java.util.Set;
-
-@Singleton
-public class GreenQloudEC2HardwareSupplier extends EC2HardwareSupplier {
-
- @Override
- public Set<? extends Hardware> get() {
- return ImmutableSet.of(t1_nano().build(),
- t1_micro().build(),
- t1_milli().build(),
- m1_small().build(),
- m1_medium().build(),
- m1_large().build(),
- m1_xlarge().build(),
- m2_2xlarge().build());
- }
-
- public EC2HardwareBuilder t1_nano() {
- return new EC2HardwareBuilder("t1.nano")
- .ram(256)
- .processors(ImmutableList.of(new Processor(1, 1)))
- .volumes(ImmutableList.<Volume>of(new VolumeImpl(10.0f, true, true)));
- }
-
- public EC2HardwareBuilder t1_micro() {
- return new EC2HardwareBuilder("t1.micro")
- .ram(512)
- .processors(ImmutableList.of(new Processor(1, 1)))
- .volumes(ImmutableList.<Volume>of(new VolumeImpl(20.0f, true, true)));
- }
-
- public EC2HardwareBuilder t1_milli() {
- return new EC2HardwareBuilder("t1.milli")
- .ram(1024)
- .processors(ImmutableList.of(new Processor(1, 1)))
- .volumes(ImmutableList.<Volume>of(new VolumeImpl(40.0f, true, true)));
- }
-
- public EC2HardwareBuilder m1_small() {
- return new EC2HardwareBuilder("m1.small")
- .ram(2048)
- .processors(ImmutableList.of(new Processor(2, 1)))
- .volumes(ImmutableList.<Volume>of(new VolumeImpl(80.0f, true, true)));
- }
-
- public EC2HardwareBuilder m1_medium() {
- return new EC2HardwareBuilder("m1.medium")
- .ram(4096)
- .processors(ImmutableList.of(new Processor(4, 1)))
- .volumes(ImmutableList.<Volume>of(new VolumeImpl(160.0f, true, true)));
- }
-
- public EC2HardwareBuilder m1_large() {
- return new EC2HardwareBuilder("m1.large")
- .ram(8192)
- .processors(ImmutableList.of(new Processor(8, 1)))
- .volumes(ImmutableList.<Volume>of(new VolumeImpl(320.0f, true, true)));
- }
-
- public EC2HardwareBuilder m1_xlarge() {
- return new EC2HardwareBuilder("m1.xlarge")
- .ram(15872)
- .processors(ImmutableList.of(new Processor(16, 1)))
- .volumes(ImmutableList.<Volume>of(new VolumeImpl(640.0f, true, true)));
- }
-
- public EC2HardwareBuilder m2_2xlarge() {
- return new EC2HardwareBuilder("m2.2xlarge")
- .ram(30720)
- .processors(ImmutableList.of(new Processor(16, 1)))
- .volumes(ImmutableList.<Volume>of(new VolumeImpl(640.0f, true, true)));
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/abd0f7a8/greenqloud-compute/src/main/resources/META-INF/services/org.jclouds.providers.ProviderMetadata
----------------------------------------------------------------------
diff --git a/greenqloud-compute/src/main/resources/META-INF/services/org.jclouds.providers.ProviderMetadata b/greenqloud-compute/src/main/resources/META-INF/services/org.jclouds.providers.ProviderMetadata
deleted file mode 100644
index ddcff31..0000000
--- a/greenqloud-compute/src/main/resources/META-INF/services/org.jclouds.providers.ProviderMetadata
+++ /dev/null
@@ -1 +0,0 @@
-org.jclouds.greenqloud.compute.GreenQloudComputeProviderMetadata
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/abd0f7a8/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/GreenQloudComputeComputeServiceLiveTestDisabled.java
----------------------------------------------------------------------
diff --git a/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/GreenQloudComputeComputeServiceLiveTestDisabled.java b/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/GreenQloudComputeComputeServiceLiveTestDisabled.java
deleted file mode 100644
index d85e809..0000000
--- a/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/GreenQloudComputeComputeServiceLiveTestDisabled.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.greenqloud.compute;
-
-import org.jclouds.ec2.compute.EC2ComputeServiceLiveTest;
-import org.testng.annotations.Test;
-
-@Test(groups = "live", singleThreaded = true, testName = "GreenQloudComputeComputeServiceLiveTest")
-public class GreenQloudComputeComputeServiceLiveTestDisabled extends EC2ComputeServiceLiveTest {
-
- public GreenQloudComputeComputeServiceLiveTestDisabled() {
- provider = "greenqloud-compute";
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/abd0f7a8/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/GreenQloudComputeProviderTest.java
----------------------------------------------------------------------
diff --git a/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/GreenQloudComputeProviderTest.java b/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/GreenQloudComputeProviderTest.java
deleted file mode 100644
index 8f50122..0000000
--- a/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/GreenQloudComputeProviderTest.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.greenqloud.compute;
-
-import org.jclouds.ec2.EC2ApiMetadata;
-import org.jclouds.providers.internal.BaseProviderMetadataTest;
-import org.testng.annotations.Test;
-
-@Test(groups = "unit", testName = "GreenQloudComputeProviderTest")
-public class GreenQloudComputeProviderTest extends BaseProviderMetadataTest {
-
- public GreenQloudComputeProviderTest() {
- super(new GreenQloudComputeProviderMetadata(), new EC2ApiMetadata());
- }
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/abd0f7a8/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/GreenQloudComputeTemplateBuilderLiveTest.java
----------------------------------------------------------------------
diff --git a/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/GreenQloudComputeTemplateBuilderLiveTest.java b/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/GreenQloudComputeTemplateBuilderLiveTest.java
deleted file mode 100644
index 10620e9..0000000
--- a/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/GreenQloudComputeTemplateBuilderLiveTest.java
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.greenqloud.compute;
-
-import static org.jclouds.compute.util.ComputeServiceUtils.getCores;
-import static org.testng.Assert.assertEquals;
-
-import java.io.IOException;
-import java.util.Set;
-
-import org.jclouds.aws.util.AWSUtils;
-import org.jclouds.compute.domain.OsFamily;
-import org.jclouds.compute.domain.OsFamilyVersion64Bit;
-import org.jclouds.compute.domain.Template;
-import org.jclouds.compute.internal.BaseTemplateBuilderLiveTest;
-import org.jclouds.domain.LocationScope;
-import org.testng.annotations.Test;
-
-import com.google.common.base.Predicate;
-import com.google.common.base.Predicates;
-import com.google.common.collect.ImmutableSet;
-
-@Test(groups = "live", testName = "GreenQloudComputeTemplateBuilderLiveTest")
-public class GreenQloudComputeTemplateBuilderLiveTest extends BaseTemplateBuilderLiveTest {
-
- public GreenQloudComputeTemplateBuilderLiveTest() {
- provider = "greenqloud-compute";
- }
-
- @Override
- protected Predicate<OsFamilyVersion64Bit> defineUnsupportedOperatingSystems() {
- return Predicates.not(new Predicate<OsFamilyVersion64Bit>() {
- @Override
- public boolean apply(OsFamilyVersion64Bit input) {
- switch (input.family) {
- case UBUNTU:
- return (input.version.equals("")
- || input.version.equals("10.04")
- || input.version.equals("11.10")
- || input.version.equals("12.04.1")
- || input.version.equals("12.10"))
- && input.is64Bit;
- case DEBIAN:
- return (input.version.equals("") || input.version.equals("6.0"))
- && input.is64Bit;
- case CENTOS:
- return (input.version.equals("")
- || input.version.equals("5.8")
- || input.version.equals("6.0")
- || input.version.equals("6.3"))
- && input.is64Bit;
- case FEDORA:
- return (input.version.equals("") || input.version.equals("16"))
- && input.is64Bit;
- case WINDOWS:
- return (input.version.equals("")
- || input.version.equals("2008 R2")
- || input.version.equals("2012"))
- && input.is64Bit;
- default:
- return false;
- }
- }
-
- });
- }
-
- @Test
- public void testDefaultTemplateBuilder() throws IOException {
- Template defaultTemplate = view.getComputeService().templateBuilder().build();
- assert (defaultTemplate.getImage().getProviderId().startsWith("qmi-")) : defaultTemplate;
- assertEquals(defaultTemplate.getImage().getOperatingSystem().getVersion(), "11.10");
- assertEquals(defaultTemplate.getImage().getOperatingSystem().is64Bit(), true);
- assertEquals(defaultTemplate.getImage().getOperatingSystem().getFamily(), OsFamily.UBUNTU);
- assertEquals(defaultTemplate.getImage().getUserMetadata().get("rootDeviceType"), "ebs");
- assertEquals(defaultTemplate.getHardware().getId(), "t1.nano");
- assertEquals(defaultTemplate.getLocation().getId(), "is-1");
- assertEquals(defaultTemplate.getLocation().getScope(), LocationScope.REGION);
- assertEquals(AWSUtils.getRegionFromLocationOrNull(defaultTemplate.getLocation()), "is-1");
- assertEquals(getCores(defaultTemplate.getHardware()), 1.0d);
- }
-
- @Override
- protected Set<String> getIso3166Codes() {
- return ImmutableSet.<String> of("IS-1");
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/abd0f7a8/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/parse/DescribeRegionsResponseHandlerTest.java
----------------------------------------------------------------------
diff --git a/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/parse/DescribeRegionsResponseHandlerTest.java b/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/parse/DescribeRegionsResponseHandlerTest.java
deleted file mode 100644
index 72c97f2..0000000
--- a/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/parse/DescribeRegionsResponseHandlerTest.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.greenqloud.compute.parse;
-
-import static org.testng.Assert.assertEquals;
-
-import java.net.URI;
-import java.util.Map;
-
-import org.jclouds.ec2.xml.DescribeRegionsResponseHandler;
-import org.jclouds.http.functions.BaseHandlerTest;
-import org.testng.annotations.Test;
-
-import com.google.common.collect.ImmutableMap;
-
-// NOTE:without testName, this will not call @Before* and fail w/NPE during surefire
-@Test(groups = "unit", testName = "DescribeRegionsResponseHandlerTest")
-public class DescribeRegionsResponseHandlerTest extends BaseHandlerTest {
-
- public void test() {
- String text = new StringBuilder()
- .append("<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n")
- .append("<DescribeRegionsResponse xmlns=\"http://ec2.amazonaws.com/doc/2010-06-15/\"><requestId>0a5a6b4d-c0d7-4531-9ba9-bbc0b94d2007</requestId><regionInfo><item><regionName>is-1</regionName><regionEndpoint>api.greenqloud.com</regionEndpoint></item></regionInfo></DescribeRegionsResponse>\n")
- .toString();
-
- Map<String, URI> expected = expected();
-
- DescribeRegionsResponseHandler handler = injector.getInstance(DescribeRegionsResponseHandler.class);
- Map<String, URI> result = factory.create(handler).parse(text);
-
- assertEquals(result.toString(), expected.toString());
-
- }
-
- public Map<String, URI> expected() {
- return ImmutableMap.of("is-1", URI.create("https://api.greenqloud.com"));
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/abd0f7a8/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/services/GreenQloudAMIClientLiveTest.java
----------------------------------------------------------------------
diff --git a/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/services/GreenQloudAMIClientLiveTest.java b/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/services/GreenQloudAMIClientLiveTest.java
deleted file mode 100644
index dc75e25..0000000
--- a/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/services/GreenQloudAMIClientLiveTest.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.greenqloud.compute.services;
-
-import org.jclouds.ec2.services.AMIClientLiveTest;
-import org.testng.annotations.Test;
-
-@Test(groups = "live", singleThreaded = true, testName = "GreenQloudAMIClientLiveTest")
-public class GreenQloudAMIClientLiveTest extends AMIClientLiveTest {
- public GreenQloudAMIClientLiveTest() {
- provider = "greenqloud-compute";
- }
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/abd0f7a8/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/services/GreenQloudAvailabilityZoneAndRegionClientLiveTest.java
----------------------------------------------------------------------
diff --git a/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/services/GreenQloudAvailabilityZoneAndRegionClientLiveTest.java b/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/services/GreenQloudAvailabilityZoneAndRegionClientLiveTest.java
deleted file mode 100644
index eaaeaa1..0000000
--- a/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/services/GreenQloudAvailabilityZoneAndRegionClientLiveTest.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.greenqloud.compute.services;
-
-import org.jclouds.ec2.services.AvailabilityZoneAndRegionClientLiveTest;
-import org.testng.annotations.Test;
-
-@Test(groups = "live", singleThreaded = true, testName = "GreenQloudAvailabilityZoneAndRegionClientLiveTest")
-public class GreenQloudAvailabilityZoneAndRegionClientLiveTest extends AvailabilityZoneAndRegionClientLiveTest {
- public GreenQloudAvailabilityZoneAndRegionClientLiveTest() {
- provider = "greenqloud-compute";
- }
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/abd0f7a8/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/services/GreenQloudElasticBlockStoreClientLiveTest.java
----------------------------------------------------------------------
diff --git a/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/services/GreenQloudElasticBlockStoreClientLiveTest.java b/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/services/GreenQloudElasticBlockStoreClientLiveTest.java
deleted file mode 100644
index 596a48d..0000000
--- a/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/services/GreenQloudElasticBlockStoreClientLiveTest.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.greenqloud.compute.services;
-
-import org.jclouds.ec2.services.ElasticBlockStoreClientLiveTest;
-import org.testng.annotations.Test;
-
-@Test(groups = "live", singleThreaded = true, testName = "GreenQloudElasticBlockStoreClientLiveTest")
-public class GreenQloudElasticBlockStoreClientLiveTest extends ElasticBlockStoreClientLiveTest {
- public GreenQloudElasticBlockStoreClientLiveTest() {
- provider = "greenqloud-compute";
- }
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/abd0f7a8/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/services/GreenQloudElasticIPAddressClientLiveTest.java
----------------------------------------------------------------------
diff --git a/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/services/GreenQloudElasticIPAddressClientLiveTest.java b/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/services/GreenQloudElasticIPAddressClientLiveTest.java
deleted file mode 100644
index d1f9f1e..0000000
--- a/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/services/GreenQloudElasticIPAddressClientLiveTest.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.greenqloud.compute.services;
-
-import org.jclouds.ec2.services.ElasticIPAddressClientLiveTest;
-import org.testng.annotations.Test;
-
-@Test(groups = "live", singleThreaded = true, testName = "GreenQloudElasticIPAddressClientLiveTest")
-public class GreenQloudElasticIPAddressClientLiveTest extends ElasticIPAddressClientLiveTest {
- public GreenQloudElasticIPAddressClientLiveTest() {
- provider = "greenqloud-compute";
- }
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/abd0f7a8/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/services/GreenQloudInstanceClientLiveTest.java
----------------------------------------------------------------------
diff --git a/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/services/GreenQloudInstanceClientLiveTest.java b/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/services/GreenQloudInstanceClientLiveTest.java
deleted file mode 100644
index 2b52cc4..0000000
--- a/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/services/GreenQloudInstanceClientLiveTest.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.greenqloud.compute.services;
-
-import org.jclouds.ec2.services.InstanceClientLiveTest;
-import org.testng.annotations.Test;
-
-@Test(groups = "live", singleThreaded = true, testName = "GreenQloudInstanceClientLiveTest")
-public class GreenQloudInstanceClientLiveTest extends InstanceClientLiveTest {
- public GreenQloudInstanceClientLiveTest() {
- provider = "greenqloud-compute";
- }
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/abd0f7a8/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/services/GreenQloudKeyPairClientLiveTest.java
----------------------------------------------------------------------
diff --git a/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/services/GreenQloudKeyPairClientLiveTest.java b/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/services/GreenQloudKeyPairClientLiveTest.java
deleted file mode 100644
index 516a7f8..0000000
--- a/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/services/GreenQloudKeyPairClientLiveTest.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.greenqloud.compute.services;
-
-import org.jclouds.ec2.services.KeyPairClientLiveTest;
-import org.testng.annotations.Test;
-
-@Test(groups = "live", singleThreaded = true, testName = "GreenQloudKeyPairClientLiveTest")
-public class GreenQloudKeyPairClientLiveTest extends KeyPairClientLiveTest {
- public GreenQloudKeyPairClientLiveTest() {
- provider = "greenqloud-compute";
- }
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/abd0f7a8/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/services/GreenQloudSecurityGroupClientLiveTest.java
----------------------------------------------------------------------
diff --git a/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/services/GreenQloudSecurityGroupClientLiveTest.java b/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/services/GreenQloudSecurityGroupClientLiveTest.java
deleted file mode 100644
index 35298bb..0000000
--- a/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/services/GreenQloudSecurityGroupClientLiveTest.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.greenqloud.compute.services;
-
-import org.jclouds.ec2.services.SecurityGroupClientLiveTest;
-import org.testng.annotations.Test;
-
-@Test(groups = "live", singleThreaded = true, testName = "GreenQloudSecurityGroupClientLiveTest")
-public class GreenQloudSecurityGroupClientLiveTest extends SecurityGroupClientLiveTest {
- public GreenQloudSecurityGroupClientLiveTest() {
- provider = "greenqloud-compute";
- }
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/abd0f7a8/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/strategy/GreenQloudComputeReviseParsedImageTest.java
----------------------------------------------------------------------
diff --git a/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/strategy/GreenQloudComputeReviseParsedImageTest.java b/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/strategy/GreenQloudComputeReviseParsedImageTest.java
deleted file mode 100644
index 1a3b9a7..0000000
--- a/greenqloud-compute/src/test/java/org/jclouds/greenqloud/compute/strategy/GreenQloudComputeReviseParsedImageTest.java
+++ /dev/null
@@ -1,251 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.greenqloud.compute.strategy;
-
-import static org.testng.Assert.assertEquals;
-
-import java.util.Map;
-import java.util.Set;
-
-import org.jclouds.compute.config.BaseComputeServiceContextModule;
-import org.jclouds.compute.domain.ImageBuilder;
-import org.jclouds.compute.domain.OperatingSystem;
-import org.jclouds.compute.domain.OsFamily;
-import org.jclouds.compute.reference.ComputeServiceConstants;
-import org.jclouds.domain.Location;
-import org.jclouds.domain.LocationBuilder;
-import org.jclouds.domain.LocationScope;
-import org.jclouds.domain.LoginCredentials;
-import org.jclouds.ec2.compute.config.EC2ComputeServiceDependenciesModule;
-import org.jclouds.ec2.compute.functions.EC2ImageParser;
-import org.jclouds.ec2.compute.strategy.EC2PopulateDefaultLoginCredentialsForImageStrategy;
-import org.jclouds.ec2.domain.Image;
-import org.jclouds.ec2.xml.DescribeImagesResponseHandlerTest;
-import org.jclouds.greenqloud.compute.strategy.GreenQloudComputeReviseParsedImage;
-import org.jclouds.json.Json;
-import org.jclouds.json.config.GsonModule;
-import org.testng.annotations.Test;
-
-import com.google.common.base.Predicates;
-import com.google.common.base.Suppliers;
-import com.google.common.collect.ImmutableMap;
-import com.google.common.collect.ImmutableSet;
-import com.google.common.collect.Iterables;
-import com.google.common.collect.Sets;
-import com.google.inject.Guice;
-
-@Test(groups = "unit", testName = "GreenQloudComputeReviseParsedImageTest")
-public class GreenQloudComputeReviseParsedImageTest {
-
- public void testParseGreenQloudImage() {
-
- Set<org.jclouds.compute.domain.Image> result = convertImages("/greenqloud_images.xml");
- assertEquals(result.size(), 9);
-
- assertEquals(
- Iterables.get(result, 0).toString(),
- new ImageBuilder()
- .operatingSystem(
- OperatingSystem.builder().family(OsFamily.UBUNTU).version("10.04")
- .description("Ubuntu Server 10.04 (64-bit)").is64Bit(true)
- .arch("paravirtual").build())
- .description("Ubuntu Server 10.04 (64-bit)")
- .name("Ubuntu Server 10.04.3")
- .defaultCredentials(LoginCredentials.builder().user("root").build())
- .id("us-east-1/qmi-4e5b842f")
- .providerId("qmi-4e5b842f")
- .location(defaultLocation)
- .userMetadata(
- ImmutableMap.of("owner", "admin", "rootDeviceType", "ebs", "virtualizationType",
- "paravirtual", "hypervisor", "xen"))
- .status(org.jclouds.compute.domain.Image.Status.AVAILABLE).backendStatus("available").build().toString());
- assertEquals(Iterables.get(result, 0).getStatus(), org.jclouds.compute.domain.Image.Status.AVAILABLE);
-
- assertEquals(
- Iterables.get(result, 1).toString(),
- new ImageBuilder()
- .operatingSystem(
- OperatingSystem.builder().family(OsFamily.UBUNTU).version("11.10")
- .description("Ubuntu Server 11.10 (64-bit)").is64Bit(true)
- .arch("paravirtual").build())
- .description("Ubuntu Server 11.10 (64-bit)")
- .name("Ubuntu Server 11.10")
- .defaultCredentials(LoginCredentials.builder().user("root").build())
- .id("us-east-1/qmi-9ac92558")
- .providerId("qmi-9ac92558")
- .location(defaultLocation)
- .userMetadata(
- ImmutableMap.of("owner", "admin", "rootDeviceType", "ebs", "virtualizationType",
- "paravirtual", "hypervisor", "xen"))
- .status(org.jclouds.compute.domain.Image.Status.AVAILABLE).backendStatus("available").build().toString());
- assertEquals(Iterables.get(result, 1).getStatus(), org.jclouds.compute.domain.Image.Status.AVAILABLE);
-
- assertEquals(
- Iterables.get(result, 2).toString(),
- new ImageBuilder()
- .operatingSystem(
- OperatingSystem.builder().family(OsFamily.CENTOS).version("5.5")
- .description("CentOS 5.5 Server 64-bit").is64Bit(true)
- .arch("paravirtual").build())
- .description("CentOS 5.5 Server 64-bit")
- .name("CentOS 5.5 Server")
- .defaultCredentials(LoginCredentials.builder().user("root").build())
- .id("us-east-1/qmi-33a467aa")
- .providerId("qmi-33a467aa")
- .location(defaultLocation)
- .userMetadata(
- ImmutableMap.of("owner", "admin", "rootDeviceType", "ebs", "virtualizationType",
- "paravirtual", "hypervisor", "xen"))
- .status(org.jclouds.compute.domain.Image.Status.AVAILABLE).backendStatus("available").build().toString());
- assertEquals(Iterables.get(result, 2).getStatus(), org.jclouds.compute.domain.Image.Status.AVAILABLE);
-
- assertEquals(
- Iterables.get(result, 3).toString(),
- new ImageBuilder()
- .operatingSystem(
- OperatingSystem.builder().family(OsFamily.DEBIAN).version("6.0")
- .description("Debian 6.0 (64-bit)").is64Bit(true)
- .arch("paravirtual").build())
- .description("Debian 6.0 (64-bit)")
- .name("Debian 6.0")
- .defaultCredentials(LoginCredentials.builder().user("root").build())
- .id("us-east-1/qmi-f2a9d2ba")
- .providerId("qmi-f2a9d2ba")
- .location(defaultLocation)
- .userMetadata(
- ImmutableMap.of("owner", "admin", "rootDeviceType", "ebs", "virtualizationType",
- "paravirtual", "hypervisor", "xen"))
- .status(org.jclouds.compute.domain.Image.Status.AVAILABLE).backendStatus("available").build().toString());
- assertEquals(Iterables.get(result, 3).getStatus(), org.jclouds.compute.domain.Image.Status.AVAILABLE);
-
- assertEquals(
- Iterables.get(result, 4).toString(),
- new ImageBuilder()
- .operatingSystem(
- OperatingSystem.builder().family(OsFamily.CENTOS).version("6.0")
- .description("CentOS 6.0 (64-bit)").is64Bit(true)
- .arch("paravirtual").build())
- .description("CentOS 6.0 (64-bit)")
- .name("CentOS 6.0")
- .defaultCredentials(LoginCredentials.builder().user("root").build())
- .id("us-east-1/qmi-96f82145")
- .providerId("qmi-96f82145")
- .location(defaultLocation)
- .userMetadata(
- ImmutableMap.of("owner", "admin", "rootDeviceType", "ebs", "virtualizationType",
- "paravirtual", "hypervisor", "xen"))
- .status(org.jclouds.compute.domain.Image.Status.AVAILABLE).backendStatus("available").build().toString());
- assertEquals(Iterables.get(result, 4).getStatus(), org.jclouds.compute.domain.Image.Status.AVAILABLE);
-
- assertEquals(
- Iterables.get(result, 5).toString(),
- new ImageBuilder()
- .operatingSystem(
- OperatingSystem.builder().family(OsFamily.CENTOS).version("6.0")
- .description("CentOS 6.0 GUI (64-bit)").is64Bit(true)
- .arch("paravirtual").build())
- .description("CentOS 6.0 GUI (64-bit)")
- .name("CentOS 6.0 GUI")
- .defaultCredentials(LoginCredentials.builder().user("root").build())
- .id("us-east-1/qmi-42e877f6")
- .providerId("qmi-42e877f6")
- .location(defaultLocation)
- .userMetadata(
- ImmutableMap.of("owner", "admin", "rootDeviceType", "ebs", "virtualizationType",
- "paravirtual", "hypervisor", "xen"))
- .status(org.jclouds.compute.domain.Image.Status.AVAILABLE).backendStatus("available").build().toString());
- assertEquals(Iterables.get(result, 5).getStatus(), org.jclouds.compute.domain.Image.Status.AVAILABLE);
-
- assertEquals(
- Iterables.get(result, 6).toString(),
- new ImageBuilder()
- .operatingSystem(
- OperatingSystem.builder().family(OsFamily.UBUNTU).version("11.04")
- .description("Ubuntu Server 11.04 (64-bit)").is64Bit(true)
- .arch("paravirtual").build())
- .description("Ubuntu Server 11.04 (64-bit)")
- .name("Ubuntu Server 11.04")
- .defaultCredentials(LoginCredentials.builder().user("root").build())
- .id("us-east-1/qmi-eed8cea7")
- .providerId("qmi-eed8cea7")
- .location(defaultLocation)
- .userMetadata(
- ImmutableMap.of("owner", "admin", "rootDeviceType", "ebs", "virtualizationType",
- "paravirtual", "hypervisor", "xen"))
- .status(org.jclouds.compute.domain.Image.Status.AVAILABLE).backendStatus("available").build().toString());
- assertEquals(Iterables.get(result, 6).getStatus(), org.jclouds.compute.domain.Image.Status.AVAILABLE);
-
- assertEquals(
- Iterables.get(result, 7).toString(),
- new ImageBuilder()
- .operatingSystem(
- // fedora is not in the image version map, yet
- OperatingSystem.builder().family(OsFamily.FEDORA).version("")
- .description("Fedora 16 Server").is64Bit(false)
- .arch("paravirtual").build())
- .description("Fedora 16 Server")
- .name("Fedora 16 Server")
- .defaultCredentials(LoginCredentials.builder().user("root").build())
- .id("us-east-1/qmi-fa4bdae0")
- .providerId("qmi-fa4bdae0")
- .location(defaultLocation)
- .userMetadata(
- ImmutableMap.of("owner", "admin", "rootDeviceType", "ebs", "virtualizationType",
- "paravirtual", "hypervisor", "xen"))
- .status(org.jclouds.compute.domain.Image.Status.AVAILABLE).backendStatus("available").build().toString());
- assertEquals(Iterables.get(result, 7).getStatus(), org.jclouds.compute.domain.Image.Status.AVAILABLE);
-
- assertEquals(
- Iterables.get(result, 8).toString(),
- new ImageBuilder()
- .operatingSystem(
- OperatingSystem.builder().family(OsFamily.CENTOS).version("5.6")
- .description("CentOS 5.6 Server GUI 64-bit").is64Bit(true)
- .arch("paravirtual").build())
- .description("CentOS 5.6 Server GUI 64-bit")
- .name("CentOS 5.6 GUI")
- .defaultCredentials(LoginCredentials.builder().user("root").build())
- .id("us-east-1/qmi-93271d32")
- .providerId("qmi-93271d32")
- .location(defaultLocation)
- .userMetadata(
- ImmutableMap.of("owner", "admin", "rootDeviceType", "ebs", "virtualizationType",
- "paravirtual", "hypervisor", "xen"))
- .status(org.jclouds.compute.domain.Image.Status.AVAILABLE).backendStatus("available").build().toString());
- assertEquals(Iterables.get(result, 8).getStatus(), org.jclouds.compute.domain.Image.Status.AVAILABLE);
-
- }
-
- static Location defaultLocation = new LocationBuilder().scope(LocationScope.REGION).id("us-east-1").description(
- "us-east-1").build();
-
- public static Set<org.jclouds.compute.domain.Image> convertImages(String resource) {
-
- Map<OsFamily, Map<String, String>> map = new BaseComputeServiceContextModule() {
- }.provideOsVersionMap(new ComputeServiceConstants.ReferenceData(), Guice.createInjector(new GsonModule())
- .getInstance(Json.class));
-
- // note this method is what mandates the location id as us-east-1
- Set<Image> result = DescribeImagesResponseHandlerTest.parseImages(resource);
- EC2ImageParser parser = new EC2ImageParser(EC2ComputeServiceDependenciesModule.toPortableImageStatus,
- new EC2PopulateDefaultLoginCredentialsForImageStrategy(), map, Suppliers
- .<Set<? extends Location>> ofInstance(ImmutableSet.<Location> of(defaultLocation)), Suppliers
- .ofInstance(defaultLocation), new GreenQloudComputeReviseParsedImage(map));
- return Sets.newLinkedHashSet(Iterables.filter(Iterables.transform(result, parser), Predicates.notNull()));
- }
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/abd0f7a8/greenqloud-compute/src/test/resources/greenqloud_images.xml
----------------------------------------------------------------------
diff --git a/greenqloud-compute/src/test/resources/greenqloud_images.xml b/greenqloud-compute/src/test/resources/greenqloud_images.xml
deleted file mode 100644
index 8052445..0000000
--- a/greenqloud-compute/src/test/resources/greenqloud_images.xml
+++ /dev/null
@@ -1,257 +0,0 @@
-<DescribeImagesResponse xmlns="http://ec2.amazonaws.com/doc/2010-06-15/">
- <requestId>1c016525-12ae-4fc6-8d4e-754692412bbc</requestId>
- <imagesSet>
- <item>
- <imageId>qmi-4e5b842f</imageId>
- <imageLocation>Ubuntu Server 10.04 (64-bit)</imageLocation>
- <imageState>available</imageState>
- <imageOwnerId>admin</imageOwnerId>
- <isPublic>true</isPublic>
- <productCodes>
- <item>
- <productCode></productCode>
- </item>
- </productCodes>
- <architecture></architecture>
- <imageType>machine</imageType>
- <kernelId></kernelId>
- <ramdiskId></ramdiskId>
- <platform></platform>
- <stateReason>
- <code></code>
- <message></message>
- </stateReason>
- <imageOwnerAlias></imageOwnerAlias>
- <name>Ubuntu Server 10.04.3</name>
- <description>Ubuntu Server 10.04 (64-bit)</description>
- <rootDeviceType>ebs</rootDeviceType>
- <rootDeviceName></rootDeviceName>
- <blockDeviceMapping />
- <hypervisor>xen</hypervisor>
- </item>
- <item>
- <imageId>qmi-9ac92558</imageId>
- <imageLocation>Ubuntu Server 11.10 (64-bit)</imageLocation>
- <imageState>available</imageState>
- <imageOwnerId>admin</imageOwnerId>
- <isPublic>true</isPublic>
- <productCodes>
- <item>
- <productCode></productCode>
- </item>
- </productCodes>
- <architecture></architecture>
- <imageType>machine</imageType>
- <kernelId></kernelId>
- <ramdiskId></ramdiskId>
- <platform></platform>
- <stateReason>
- <code></code>
- <message></message>
- </stateReason>
- <imageOwnerAlias></imageOwnerAlias>
- <name>Ubuntu Server 11.10</name>
- <description>Ubuntu Server 11.10 (64-bit)</description>
- <rootDeviceType>ebs</rootDeviceType>
- <rootDeviceName></rootDeviceName>
- <blockDeviceMapping />
- <hypervisor>xen</hypervisor>
- </item>
- <item>
- <imageId>qmi-33a467aa</imageId>
- <imageLocation>CentOS 5.5 Server 64-bit</imageLocation>
- <imageState>available</imageState>
- <imageOwnerId>admin</imageOwnerId>
- <isPublic>true</isPublic>
- <productCodes>
- <item>
- <productCode></productCode>
- </item>
- </productCodes>
- <architecture></architecture>
- <imageType>machine</imageType>
- <kernelId></kernelId>
- <ramdiskId></ramdiskId>
- <platform></platform>
- <stateReason>
- <code></code>
- <message></message>
- </stateReason>
- <imageOwnerAlias></imageOwnerAlias>
- <name>CentOS 5.5 Server</name>
- <description>CentOS 5.5 Server 64-bit</description>
- <rootDeviceType>ebs</rootDeviceType>
- <rootDeviceName></rootDeviceName>
- <blockDeviceMapping />
- <hypervisor>xen</hypervisor>
- </item>
- <item>
- <imageId>qmi-f2a9d2ba</imageId>
- <imageLocation>Debian 6.0 (64-bit)</imageLocation>
- <imageState>available</imageState>
- <imageOwnerId>admin</imageOwnerId>
- <isPublic>true</isPublic>
- <productCodes>
- <item>
- <productCode></productCode>
- </item>
- </productCodes>
- <architecture></architecture>
- <imageType>machine</imageType>
- <kernelId></kernelId>
- <ramdiskId></ramdiskId>
- <platform></platform>
- <stateReason>
- <code></code>
- <message></message>
- </stateReason>
- <imageOwnerAlias></imageOwnerAlias>
- <name>Debian 6.0</name>
- <description>Debian 6.0 (64-bit)</description>
- <rootDeviceType>ebs</rootDeviceType>
- <rootDeviceName></rootDeviceName>
- <blockDeviceMapping />
- <hypervisor>xen</hypervisor>
- </item>
- <item>
- <imageId>qmi-96f82145</imageId>
- <imageLocation>CentOS 6.0 (64-bit)</imageLocation>
- <imageState>available</imageState>
- <imageOwnerId>admin</imageOwnerId>
- <isPublic>true</isPublic>
- <productCodes>
- <item>
- <productCode></productCode>
- </item>
- </productCodes>
- <architecture></architecture>
- <imageType>machine</imageType>
- <kernelId></kernelId>
- <ramdiskId></ramdiskId>
- <platform></platform>
- <stateReason>
- <code></code>
- <message></message>
- </stateReason>
- <imageOwnerAlias></imageOwnerAlias>
- <name>CentOS 6.0</name>
- <description>CentOS 6.0 (64-bit)</description>
- <rootDeviceType>ebs</rootDeviceType>
- <rootDeviceName></rootDeviceName>
- <blockDeviceMapping />
- <hypervisor>xen</hypervisor>
- </item>
- <item>
- <imageId>qmi-42e877f6</imageId>
- <imageLocation>CentOS 6.0 GUI (64-bit)</imageLocation>
- <imageState>available</imageState>
- <imageOwnerId>admin</imageOwnerId>
- <isPublic>true</isPublic>
- <productCodes>
- <item>
- <productCode></productCode>
- </item>
- </productCodes>
- <architecture></architecture>
- <imageType>machine</imageType>
- <kernelId></kernelId>
- <ramdiskId></ramdiskId>
- <platform></platform>
- <stateReason>
- <code></code>
- <message></message>
- </stateReason>
- <imageOwnerAlias></imageOwnerAlias>
- <name>CentOS 6.0 GUI</name>
- <description>CentOS 6.0 GUI (64-bit)</description>
- <rootDeviceType>ebs</rootDeviceType>
- <rootDeviceName></rootDeviceName>
- <blockDeviceMapping />
- <hypervisor>xen</hypervisor>
- </item>
- <item>
- <imageId>qmi-eed8cea7</imageId>
- <imageLocation>Ubuntu Server 11.04 (64-bit)</imageLocation>
- <imageState>available</imageState>
- <imageOwnerId>admin</imageOwnerId>
- <isPublic>true</isPublic>
- <productCodes>
- <item>
- <productCode></productCode>
- </item>
- </productCodes>
- <architecture></architecture>
- <imageType>machine</imageType>
- <kernelId></kernelId>
- <ramdiskId></ramdiskId>
- <platform></platform>
- <stateReason>
- <code></code>
- <message></message>
- </stateReason>
- <imageOwnerAlias></imageOwnerAlias>
- <name>Ubuntu Server 11.04</name>
- <description>Ubuntu Server 11.04 (64-bit)</description>
- <rootDeviceType>ebs</rootDeviceType>
- <rootDeviceName></rootDeviceName>
- <blockDeviceMapping />
- <hypervisor>xen</hypervisor>
- </item>
- <item>
- <imageId>qmi-fa4bdae0</imageId>
- <imageLocation>Fedora 16 Server</imageLocation>
- <imageState>available</imageState>
- <imageOwnerId>admin</imageOwnerId>
- <isPublic>true</isPublic>
- <productCodes>
- <item>
- <productCode></productCode>
- </item>
- </productCodes>
- <architecture></architecture>
- <imageType>machine</imageType>
- <kernelId></kernelId>
- <ramdiskId></ramdiskId>
- <platform></platform>
- <stateReason>
- <code></code>
- <message></message>
- </stateReason>
- <imageOwnerAlias></imageOwnerAlias>
- <name>Fedora 16 Server</name>
- <description>Fedora 16 Server</description>
- <rootDeviceType>ebs</rootDeviceType>
- <rootDeviceName></rootDeviceName>
- <blockDeviceMapping />
- <hypervisor>xen</hypervisor>
- </item>
- <item>
- <imageId>qmi-93271d32</imageId>
- <imageLocation>CentOS 5.6 Server GUI 64-bit</imageLocation>
- <imageState>available</imageState>
- <imageOwnerId>admin</imageOwnerId>
- <isPublic>true</isPublic>
- <productCodes>
- <item>
- <productCode></productCode>
- </item>
- </productCodes>
- <architecture></architecture>
- <imageType>machine</imageType>
- <kernelId></kernelId>
- <ramdiskId></ramdiskId>
- <platform></platform>
- <stateReason>
- <code></code>
- <message></message>
- </stateReason>
- <imageOwnerAlias></imageOwnerAlias>
- <name>CentOS 5.6 GUI</name>
- <description>CentOS 5.6 Server GUI 64-bit</description>
- <rootDeviceType>ebs</rootDeviceType>
- <rootDeviceName></rootDeviceName>
- <blockDeviceMapping />
- <hypervisor>xen</hypervisor>
- </item>
- </imagesSet>
-</DescribeImagesResponse>
\ No newline at end of file
[3/9] git commit: Remove greenqloud-storage,
which hasn't been published in over a year.
Posted by ad...@apache.org.
Remove greenqloud-storage, which hasn't been published in over a year.
Project: http://git-wip-us.apache.org/repos/asf/jclouds-labs/repo
Commit: http://git-wip-us.apache.org/repos/asf/jclouds-labs/commit/1bdd26c0
Tree: http://git-wip-us.apache.org/repos/asf/jclouds-labs/tree/1bdd26c0
Diff: http://git-wip-us.apache.org/repos/asf/jclouds-labs/diff/1bdd26c0
Branch: refs/heads/master
Commit: 1bdd26c0651798d4b4e613f3846a00f63e0950f9
Parents: abd0f7a
Author: Adrian Cole <ad...@gmail.com>
Authored: Sun Oct 5 09:20:13 2014 -0700
Committer: Adrian Cole <ad...@apache.org>
Committed: Sun Oct 5 10:22:27 2014 -0700
----------------------------------------------------------------------
greenqloud-storage/pom.xml | 122 -------------------
.../GreenQloudStorageProviderMetadata.java | 87 -------------
.../org.jclouds.providers.ProviderMetadata | 1 -
.../GreenQloudStorageClientLiveTest.java | 30 -----
.../storage/GreenQloudStorageProviderTest.java | 33 -----
...reenQloudStorageBlobIntegrationLiveTest.java | 28 -----
.../GreenQloudStorageBlobLiveTest.java | 28 -----
...nQloudStorageBlobMapIntegrationLiveTest.java | 28 -----
.../GreenQloudStorageBlobSignerLiveTest.java | 28 -----
...loudStorageContainerIntegrationLiveTest.java | 28 -----
.../GreenQloudStorageContainerLiveTest.java | 28 -----
...torageInputStreamMapIntegrationLiveTest.java | 29 -----
...nQloudStorageServiceIntegrationLiveTest.java | 38 ------
13 files changed, 508 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1bdd26c0/greenqloud-storage/pom.xml
----------------------------------------------------------------------
diff --git a/greenqloud-storage/pom.xml b/greenqloud-storage/pom.xml
deleted file mode 100644
index 13294e2..0000000
--- a/greenqloud-storage/pom.xml
+++ /dev/null
@@ -1,122 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- 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.labs</groupId>
- <artifactId>jclouds-labs</artifactId>
- <version>2.0.0-SNAPSHOT</version>
- </parent>
-
- <!-- TODO: when out of labs, switch to org.jclouds.provider -->
- <groupId>org.apache.jclouds.labs</groupId>
- <artifactId>greenqloud-storage</artifactId>
- <name>jclouds GreenQloud Simple Storage Service (S3) provider</name>
- <description>Simple Storage Service (S3) implementation targeted to GreenQloud Web Services</description>
- <packaging>bundle</packaging>
-
- <properties>
- <test.greenqloud-storage.endpoint>https://s.greenqloud.com</test.greenqloud-storage.endpoint>
- <test.greenqloud-storage.api-version>2006-03-01</test.greenqloud-storage.api-version>
- <test.greenqloud-storage.build-version />
- <test.greenqloud-storage.identity>${test.greenqloud.identity}</test.greenqloud-storage.identity>
- <test.greenqloud-storage.credential>${test.greenqloud.credential}</test.greenqloud-storage.credential>
- <jclouds.osgi.export>org.jclouds.greenqloud.storage*;version="${project.version}"</jclouds.osgi.export>
- <jclouds.osgi.import>
- org.jclouds*;version="${project.version}",
- *
- </jclouds.osgi.import>
- </properties>
-
- <dependencies>
- <dependency>
- <groupId>org.apache.jclouds.api</groupId>
- <artifactId>s3</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.jclouds</groupId>
- <artifactId>jclouds-core</artifactId>
- <version>${project.version}</version>
- <type>test-jar</type>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.jclouds</groupId>
- <artifactId>jclouds-blobstore</artifactId>
- <version>${project.version}</version>
- <type>test-jar</type>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.jclouds.api</groupId>
- <artifactId>s3</artifactId>
- <version>${project.version}</version>
- <type>test-jar</type>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.jclouds.driver</groupId>
- <artifactId>jclouds-log4j</artifactId>
- <version>${project.version}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>log4j</groupId>
- <artifactId>log4j</artifactId>
- <scope>test</scope>
- </dependency>
- </dependencies>
-
- <profiles>
- <profile>
- <id>live</id>
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-plugin</artifactId>
- <executions>
- <execution>
- <id>integration</id>
- <phase>integration-test</phase>
- <goals>
- <goal>test</goal>
- </goals>
- <configuration>
- <systemPropertyVariables>
- <test.greenqloud-storage.endpoint>${test.greenqloud-storage.endpoint}</test.greenqloud-storage.endpoint>
- <test.greenqloud-storage.api-version>${test.greenqloud-storage.api-version}</test.greenqloud-storage.api-version>
- <test.greenqloud-storage.build-version>${test.greenqloud-storage.build-version}</test.greenqloud-storage.build-version>
- <test.greenqloud-storage.identity>${test.greenqloud-storage.identity}</test.greenqloud-storage.identity>
- <test.greenqloud-storage.credential>${test.greenqloud-storage.credential}</test.greenqloud-storage.credential>
- <jclouds.blobstore.httpstream.url>${jclouds.blobstore.httpstream.url}</jclouds.blobstore.httpstream.url>
- <jclouds.blobstore.httpstream.md5>${jclouds.blobstore.httpstream.md5}</jclouds.blobstore.httpstream.md5>
- </systemPropertyVariables>
- </configuration>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
- </profile>
- </profiles>
-
-</project>
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1bdd26c0/greenqloud-storage/src/main/java/org/jclouds/greenqloud/storage/GreenQloudStorageProviderMetadata.java
----------------------------------------------------------------------
diff --git a/greenqloud-storage/src/main/java/org/jclouds/greenqloud/storage/GreenQloudStorageProviderMetadata.java b/greenqloud-storage/src/main/java/org/jclouds/greenqloud/storage/GreenQloudStorageProviderMetadata.java
deleted file mode 100644
index ab9d8b9..0000000
--- a/greenqloud-storage/src/main/java/org/jclouds/greenqloud/storage/GreenQloudStorageProviderMetadata.java
+++ /dev/null
@@ -1,87 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.greenqloud.storage;
-
-import static org.jclouds.location.reference.LocationConstants.ENDPOINT;
-import static org.jclouds.location.reference.LocationConstants.ISO3166_CODES;
-import static org.jclouds.location.reference.LocationConstants.PROPERTY_REGION;
-import static org.jclouds.location.reference.LocationConstants.PROPERTY_REGIONS;
-
-import java.net.URI;
-import java.util.Properties;
-
-import org.jclouds.providers.ProviderMetadata;
-import org.jclouds.providers.internal.BaseProviderMetadata;
-import org.jclouds.s3.S3ApiMetadata;
-
-/**
- * Implementation of {@link org.jclouds.providers.ProviderMetadata} for GreenQloud Simple Storage Service (S3).
- */
-public class GreenQloudStorageProviderMetadata extends BaseProviderMetadata {
-
- public static Builder builder() {
- return new Builder();
- }
-
- @Override
- public Builder toBuilder() {
- return builder().fromProviderMetadata(this);
- }
-
- public GreenQloudStorageProviderMetadata() {
- super(builder());
- }
-
- public GreenQloudStorageProviderMetadata(Builder builder) {
- super(builder);
- }
-
- public static Properties defaultProperties() {
- Properties properties = new Properties();
- properties.setProperty(PROPERTY_REGIONS, "is-1");
- properties.setProperty(PROPERTY_REGION + ".is-1." + ISO3166_CODES, "IS-1");
- properties.setProperty(PROPERTY_REGION + "." + "is-1" + "." + ENDPOINT, "https://s.greenqloud.com");
- return properties;
- }
-
- public static class Builder extends BaseProviderMetadata.Builder {
-
- protected Builder(){
- id("greenqloud-storage")
- .name("GreenQloud Simple Storage Service (S3)")
- .apiMetadata(new S3ApiMetadata())
- .homepage(URI.create("http://www.greenqloud.com"))
- .console(URI.create("https://manage.greenqloud.com"))
- .linkedServices("greenqloud-compute", "greenqloud-storage")
- .iso3166Codes("IS-1")
- .endpoint("https://s.greenqloud.com")
- .defaultProperties(GreenQloudStorageProviderMetadata.defaultProperties());
- }
-
- @Override
- public GreenQloudStorageProviderMetadata build() {
- return new GreenQloudStorageProviderMetadata(this);
- }
-
- @Override
- public Builder fromProviderMetadata(
- ProviderMetadata in) {
- super.fromProviderMetadata(in);
- return this;
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1bdd26c0/greenqloud-storage/src/main/resources/META-INF/services/org.jclouds.providers.ProviderMetadata
----------------------------------------------------------------------
diff --git a/greenqloud-storage/src/main/resources/META-INF/services/org.jclouds.providers.ProviderMetadata b/greenqloud-storage/src/main/resources/META-INF/services/org.jclouds.providers.ProviderMetadata
deleted file mode 100644
index a51135a..0000000
--- a/greenqloud-storage/src/main/resources/META-INF/services/org.jclouds.providers.ProviderMetadata
+++ /dev/null
@@ -1 +0,0 @@
-org.jclouds.greenqloud.storage.GreenQloudStorageProviderMetadata
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1bdd26c0/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/GreenQloudStorageClientLiveTest.java
----------------------------------------------------------------------
diff --git a/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/GreenQloudStorageClientLiveTest.java b/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/GreenQloudStorageClientLiveTest.java
deleted file mode 100644
index a6b55dc..0000000
--- a/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/GreenQloudStorageClientLiveTest.java
+++ /dev/null
@@ -1,30 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.greenqloud.storage;
-
-import org.jclouds.s3.S3ClientLiveTest;
-import org.testng.annotations.Test;
-
-/**
- * Tests behavior of {@code S3Client}
- */
-@Test(groups = "live", singleThreaded = true, testName = "GreenQloudStorageClientLiveTest")
-public class GreenQloudStorageClientLiveTest extends S3ClientLiveTest {
- public GreenQloudStorageClientLiveTest() {
- provider = "greenqloud-storage";
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1bdd26c0/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/GreenQloudStorageProviderTest.java
----------------------------------------------------------------------
diff --git a/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/GreenQloudStorageProviderTest.java b/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/GreenQloudStorageProviderTest.java
deleted file mode 100644
index 569139c..0000000
--- a/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/GreenQloudStorageProviderTest.java
+++ /dev/null
@@ -1,33 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.greenqloud.storage;
-
-import org.jclouds.providers.internal.BaseProviderMetadataTest;
-import org.jclouds.s3.S3ApiMetadata;
-import org.testng.annotations.Test;
-
-/**
- * The GreenQloudStorageProviderTest tests the {@link GreenQloudStorageProviderMetadata} class.
- */
-@Test(groups = "unit", testName = "GreenQloudStorageProviderTest")
-public class GreenQloudStorageProviderTest extends BaseProviderMetadataTest {
-
- public GreenQloudStorageProviderTest() {
- super(new GreenQloudStorageProviderMetadata(), new S3ApiMetadata());
- }
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1bdd26c0/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/blobstore/GreenQloudStorageBlobIntegrationLiveTest.java
----------------------------------------------------------------------
diff --git a/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/blobstore/GreenQloudStorageBlobIntegrationLiveTest.java b/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/blobstore/GreenQloudStorageBlobIntegrationLiveTest.java
deleted file mode 100644
index b7068cd..0000000
--- a/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/blobstore/GreenQloudStorageBlobIntegrationLiveTest.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.greenqloud.storage.blobstore;
-
-import org.jclouds.s3.blobstore.integration.S3BlobIntegrationLiveTest;
-import org.testng.annotations.Test;
-
-@Test(groups = "live", testName = "GreenQloudStorageBlobIntegrationLiveTest")
-public class GreenQloudStorageBlobIntegrationLiveTest extends S3BlobIntegrationLiveTest {
-
- public GreenQloudStorageBlobIntegrationLiveTest() {
- provider = "greenqloud-storage";
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1bdd26c0/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/blobstore/GreenQloudStorageBlobLiveTest.java
----------------------------------------------------------------------
diff --git a/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/blobstore/GreenQloudStorageBlobLiveTest.java b/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/blobstore/GreenQloudStorageBlobLiveTest.java
deleted file mode 100644
index 60373ed..0000000
--- a/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/blobstore/GreenQloudStorageBlobLiveTest.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.greenqloud.storage.blobstore;
-
-import org.jclouds.s3.blobstore.integration.S3BlobLiveTest;
-import org.testng.annotations.Test;
-
-@Test(groups = "live", testName = "GreenQloudStorageBlobLiveTest")
-public class GreenQloudStorageBlobLiveTest extends S3BlobLiveTest {
-
- public GreenQloudStorageBlobLiveTest() {
- provider = "greenqloud-storage";
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1bdd26c0/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/blobstore/GreenQloudStorageBlobMapIntegrationLiveTest.java
----------------------------------------------------------------------
diff --git a/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/blobstore/GreenQloudStorageBlobMapIntegrationLiveTest.java b/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/blobstore/GreenQloudStorageBlobMapIntegrationLiveTest.java
deleted file mode 100644
index bee2d94..0000000
--- a/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/blobstore/GreenQloudStorageBlobMapIntegrationLiveTest.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.greenqloud.storage.blobstore;
-
-import org.jclouds.s3.blobstore.integration.S3BlobMapIntegrationLiveTest;
-import org.testng.annotations.Test;
-
-@Test(groups = "live", testName = "GreenQloudStorageBlobMapIntegrationLiveTest")
-public class GreenQloudStorageBlobMapIntegrationLiveTest extends S3BlobMapIntegrationLiveTest {
-
- public GreenQloudStorageBlobMapIntegrationLiveTest() {
- provider = "greenqloud-storage";
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1bdd26c0/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/blobstore/GreenQloudStorageBlobSignerLiveTest.java
----------------------------------------------------------------------
diff --git a/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/blobstore/GreenQloudStorageBlobSignerLiveTest.java b/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/blobstore/GreenQloudStorageBlobSignerLiveTest.java
deleted file mode 100644
index 9e6f190..0000000
--- a/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/blobstore/GreenQloudStorageBlobSignerLiveTest.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.greenqloud.storage.blobstore;
-
-import org.jclouds.s3.blobstore.integration.S3BlobSignerLiveTest;
-import org.testng.annotations.Test;
-
-@Test(groups = "live", testName = "GreenQloudStorageBlobSignerLiveTest")
-public class GreenQloudStorageBlobSignerLiveTest extends S3BlobSignerLiveTest {
-
- public GreenQloudStorageBlobSignerLiveTest() {
- provider = "greenqloud-storage";
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1bdd26c0/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/blobstore/GreenQloudStorageContainerIntegrationLiveTest.java
----------------------------------------------------------------------
diff --git a/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/blobstore/GreenQloudStorageContainerIntegrationLiveTest.java b/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/blobstore/GreenQloudStorageContainerIntegrationLiveTest.java
deleted file mode 100644
index 25d001f..0000000
--- a/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/blobstore/GreenQloudStorageContainerIntegrationLiveTest.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.greenqloud.storage.blobstore;
-
-import org.jclouds.s3.blobstore.integration.S3ContainerIntegrationLiveTest;
-import org.testng.annotations.Test;
-
-@Test(groups = "live", testName = "GreenQloudStorageContainerIntegrationLiveTest")
-public class GreenQloudStorageContainerIntegrationLiveTest extends S3ContainerIntegrationLiveTest {
-
- public GreenQloudStorageContainerIntegrationLiveTest() {
- provider = "greenqloud-storage";
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1bdd26c0/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/blobstore/GreenQloudStorageContainerLiveTest.java
----------------------------------------------------------------------
diff --git a/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/blobstore/GreenQloudStorageContainerLiveTest.java b/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/blobstore/GreenQloudStorageContainerLiveTest.java
deleted file mode 100644
index fbcd76b..0000000
--- a/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/blobstore/GreenQloudStorageContainerLiveTest.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.greenqloud.storage.blobstore;
-
-import org.jclouds.s3.blobstore.integration.S3ContainerLiveTest;
-import org.testng.annotations.Test;
-
-@Test(groups = "live", testName = "GreenQloudStorageContainerLiveTest")
-public class GreenQloudStorageContainerLiveTest extends S3ContainerLiveTest {
-
- public GreenQloudStorageContainerLiveTest() {
- provider = "greenqloud-storage";
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1bdd26c0/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/blobstore/GreenQloudStorageInputStreamMapIntegrationLiveTest.java
----------------------------------------------------------------------
diff --git a/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/blobstore/GreenQloudStorageInputStreamMapIntegrationLiveTest.java b/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/blobstore/GreenQloudStorageInputStreamMapIntegrationLiveTest.java
deleted file mode 100644
index 341a3ed..0000000
--- a/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/blobstore/GreenQloudStorageInputStreamMapIntegrationLiveTest.java
+++ /dev/null
@@ -1,29 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.greenqloud.storage.blobstore;
-
-import org.jclouds.s3.blobstore.integration.S3InputStreamMapIntegrationLiveTest;
-import org.testng.annotations.Test;
-
-@Test(groups = "live", testName = "GreenQloudStorageInputStreamMapIntegrationLiveTest")
-public class GreenQloudStorageInputStreamMapIntegrationLiveTest extends
- S3InputStreamMapIntegrationLiveTest {
-
- public GreenQloudStorageInputStreamMapIntegrationLiveTest() {
- provider = "greenqloud-storage";
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1bdd26c0/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/blobstore/GreenQloudStorageServiceIntegrationLiveTest.java
----------------------------------------------------------------------
diff --git a/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/blobstore/GreenQloudStorageServiceIntegrationLiveTest.java b/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/blobstore/GreenQloudStorageServiceIntegrationLiveTest.java
deleted file mode 100644
index 930afbe..0000000
--- a/greenqloud-storage/src/test/java/org/jclouds/greenqloud/storage/blobstore/GreenQloudStorageServiceIntegrationLiveTest.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.greenqloud.storage.blobstore;
-
-import java.util.Set;
-
-import org.jclouds.s3.blobstore.integration.S3ServiceIntegrationLiveTest;
-import org.testng.annotations.Test;
-
-import com.google.common.collect.ImmutableSet;
-
-@Test(groups = "live", testName = "GreenQloudStorageServiceIntegrationLiveTest")
-public class GreenQloudStorageServiceIntegrationLiveTest extends S3ServiceIntegrationLiveTest {
-
- public GreenQloudStorageServiceIntegrationLiveTest() {
- provider = "greenqloud-storage";
- }
-
- @Override
- protected Set<String> getIso3166Codes() {
- return ImmutableSet.<String> of("IS-1");
- }
-
-}
[4/9] Remove smartos-ssh, which hasn't been published in over a year.
Posted by ad...@apache.org.
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1795ff7e/smartos-ssh/src/test/resources/log4j.xml
----------------------------------------------------------------------
diff --git a/smartos-ssh/src/test/resources/log4j.xml b/smartos-ssh/src/test/resources/log4j.xml
deleted file mode 100644
index b14cdd7..0000000
--- a/smartos-ssh/src/test/resources/log4j.xml
+++ /dev/null
@@ -1,190 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
-
-<!--
- For more configuration infromation and examples see the Apache
- Log4j website: http://logging.apache.org/log4j/
--->
-<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"
- debug="false">
-
-
- <appender name="S" class="org.apache.log4j.ConsoleAppender">
-
- <param name="Append" value="true"/>
-
- <!-- Rollover at midnight each day -->
- <param name="DatePattern" value="'.'yyyy-MM-dd"/>
-
- <param name="Threshold" value="TRACE"/>
-
- <layout class="org.apache.log4j.PatternLayout">
- <!-- The default pattern: Date Priority [Category] Message\n -->
- <param name="ConversionPattern" value="%d %-5p [%c] (%t) %m%n"/>
-
- <!--
- The full pattern: Date MS Priority [Category]
- (Thread:NDC) Message\n <param name="ConversionPattern"
- value="%d %-5r %-5p [%c] (%t:%x) %m%n"/>
- -->
- </layout>
- </appender>
-
-
- <!-- A time/date based rolling appender -->
- <appender name="WIREFILE" class="org.apache.log4j.DailyRollingFileAppender">
- <param name="File" value="target/test-data/jclouds-wire.log"/>
- <param name="Append" value="true"/>
-
- <!-- Rollover at midnight each day -->
- <param name="DatePattern" value="'.'yyyy-MM-dd"/>
-
- <param name="Threshold" value="TRACE"/>
-
- <layout class="org.apache.log4j.PatternLayout">
- <!-- The default pattern: Date Priority [Category] Message\n -->
- <param name="ConversionPattern" value="%d %-5p [%c] (%t) %m%n"/>
-
- <!--
- The full pattern: Date MS Priority [Category]
- (Thread:NDC) Message\n <param name="ConversionPattern"
- value="%d %-5r %-5p [%c] (%t:%x) %m%n"/>
- -->
- </layout>
- </appender>
-
- <!-- A time/date based rolling appender -->
- <appender name="FILE" class="org.apache.log4j.DailyRollingFileAppender">
- <param name="File" value="target/test-data/jclouds.log"/>
- <param name="Append" value="true"/>
-
- <!-- Rollover at midnight each day -->
- <param name="DatePattern" value="'.'yyyy-MM-dd"/>
-
- <param name="Threshold" value="TRACE"/>
-
- <layout class="org.apache.log4j.PatternLayout">
- <!-- The default pattern: Date Priority [Category] Message\n -->
- <param name="ConversionPattern" value="%d %-5p [%c] (%t) %m%n"/>
-
- <!--
- The full pattern: Date MS Priority [Category]
- (Thread:NDC) Message\n <param name="ConversionPattern"
- value="%d %-5r %-5p [%c] (%t:%x) %m%n"/>
- -->
- </layout>
- </appender>
- <!-- A time/date based rolling appender -->
- <appender name="BLOBSTOREFILE" class="org.apache.log4j.DailyRollingFileAppender">
- <param name="File" value="target/test-data/jclouds-blobstore.log"/>
- <param name="Append" value="true"/>
- <param name="DatePattern" value="'.'yyyy-MM-dd"/>
- <param name="Threshold" value="TRACE"/>
- <layout class="org.apache.log4j.PatternLayout">
- <param name="ConversionPattern" value="%d %-5p [%c] (%t) %m%n"/>
- </layout>
- </appender>
-
- <!-- A time/date based rolling appender -->
- <appender name="COMPUTEFILE" class="org.apache.log4j.DailyRollingFileAppender">
- <param name="File" value="target/test-data/jclouds-compute.log"/>
- <param name="Append" value="true"/>
-
- <!-- Rollover at midnight each day -->
- <param name="DatePattern" value="'.'yyyy-MM-dd"/>
-
- <param name="Threshold" value="TRACE"/>
-
- <layout class="org.apache.log4j.PatternLayout">
- <!-- The default pattern: Date Priority [Category] Message\n -->
- <param name="ConversionPattern" value="%d %-5p [%c] (%t) %m%n"/>
-
- <!--
- The full pattern: Date MS Priority [Category]
- (Thread:NDC) Message\n <param name="ConversionPattern"
- value="%d %-5r %-5p [%c] (%t:%x) %m%n"/>
- -->
- </layout>
- </appender>
-
- <!-- A time/date based rolling appender -->
- <appender name="SSHFILE" class="org.apache.log4j.DailyRollingFileAppender">
- <param name="File" value="target/test-data/jclouds-ssh.log"/>
- <param name="Append" value="true"/>
-
- <!-- Rollover at midnight each day -->
- <param name="DatePattern" value="'.'yyyy-MM-dd"/>
-
- <param name="Threshold" value="TRACE"/>
-
- <layout class="org.apache.log4j.PatternLayout">
- <!-- The default pattern: Date Priority [Category] Message\n -->
- <param name="ConversionPattern" value="%d %-5p [%c] (%t) %m%n"/>
-
- <!--
- The full pattern: Date MS Priority [Category]
- (Thread:NDC) Message\n <param name="ConversionPattern"
- value="%d %-5r %-5p [%c] (%t:%x) %m%n"/>
- -->
- </layout>
- </appender>
-
- <appender name="ASYNCCOMPUTE" class="org.apache.log4j.AsyncAppender">
- <appender-ref ref="COMPUTEFILE"/>
- </appender>
-
- <appender name="ASYNCSSH" class="org.apache.log4j.AsyncAppender">
- <appender-ref ref="SSHFILE"/>
- </appender>
-
- <appender name="ASYNC" class="org.apache.log4j.AsyncAppender">
- <appender-ref ref="FILE"/>
- </appender>
-
- <appender name="ASYNCWIRE" class="org.apache.log4j.AsyncAppender">
- <appender-ref ref="WIREFILE"/>
- </appender>
-
- <appender name="ASYNCBLOBSTORE" class="org.apache.log4j.AsyncAppender">
- <appender-ref ref="BLOBSTOREFILE"/>
- </appender>
- <!-- ================ -->
- <!-- Limit categories -->
- <!-- ================ -->
-
- <category name="org.jclouds">
- <priority value="DEBUG"/>
- <appender-ref ref="ASYNC"/>
- </category>
-
- <category name="jclouds.headers">
- <priority value="DEBUG"/>
- <appender-ref ref="ASYNCWIRE"/>
- </category>
-
- <category name="jclouds.ssh">
- <priority value="DEBUG"/>
- <appender-ref ref="ASYNCSSH"/>
- </category>
- <category name="jclouds.wire">
- <priority value="DEBUG"/>
- <appender-ref ref="ASYNCWIRE"/>
- </category>
- <category name="jclouds.blobstore">
- <priority value="DEBUG"/>
- <appender-ref ref="ASYNCBLOBSTORE"/>
- </category>
- <category name="jclouds.compute">
- <priority value="TRACE"/>
- <appender-ref ref="ASYNCCOMPUTE"/>
- </category>
- <!-- ======================= -->
- <!-- Setup the Root category -->
- <!-- ======================= -->
-
- <root>
- <priority value="TRACE"/>
- <appender-ref ref="S"/>
- </root>
-
-</log4j:configuration>
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1795ff7e/smartos-ssh/src/test/resources/org/jclouds/smartos/compute/domain/dsadm-list-response.txt
----------------------------------------------------------------------
diff --git a/smartos-ssh/src/test/resources/org/jclouds/smartos/compute/domain/dsadm-list-response.txt b/smartos-ssh/src/test/resources/org/jclouds/smartos/compute/domain/dsadm-list-response.txt
deleted file mode 100644
index 3f7cc73..0000000
--- a/smartos-ssh/src/test/resources/org/jclouds/smartos/compute/domain/dsadm-list-response.txt
+++ /dev/null
@@ -1,11 +0,0 @@
-UUID OS PUBLISHED URN
-c0ffee88-883e-47cf-80d1-ad71cc872180 smartos 2012-05-02 nrm:nrm:realtime-jenkins:1.7
-c0ffee99-883e-47cf-80d1-ad71cc872180 smartos 2012-05-02 nrm:nrm:realtime-jenkins:1.7
-bb5aa3d2-cc19-11e1-99e7-a752418da63a smartos 2012-05-02 nrm:nrm:jenkins-slave:1.0
-c0ffee32-883e-47cf-80d1-ad71cc872180 smartos 2012-05-02 nrm:nrm:realtime-jenkins:1.6.3
-467ca742-4873-11e1-80ea-37290b38d2eb smartos 2012-02-14 sdc:sdc:smartos64:1.5.3
-56108678-1183-11e1-83c3-ff3185a5b47f linux 2011-11-18 sdc:sdc:ubuntu10.04:0.1.0
-f9e4be48-9466-11e1-bc41-9f993f5dff36 smartos 2012-05-02 sdc:sdc:smartos64:1.6.3
-c0ffee64-883e-47cf-80d1-ad71cc872180 smartos 2012-05-02 nrm:nrm:realtime-jenkins:1.6
-a9380908-ea0e-11e0-aeee-4ba794c83c33 smartos 2011-09-28 sdc:sdc:percona:1.0.7
-c0ffee00-883e-47cf-80d1-ad71cc872180 smartos 2012-05-02 sdc:sdc:realtime-jenkins:1.6.3
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1795ff7e/smartos-ssh/src/test/resources/org/jclouds/smartos/compute/domain/vmadm-list-response.txt
----------------------------------------------------------------------
diff --git a/smartos-ssh/src/test/resources/org/jclouds/smartos/compute/domain/vmadm-list-response.txt b/smartos-ssh/src/test/resources/org/jclouds/smartos/compute/domain/vmadm-list-response.txt
deleted file mode 100644
index 442d0d9..0000000
--- a/smartos-ssh/src/test/resources/org/jclouds/smartos/compute/domain/vmadm-list-response.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-60bd2ae5-4e4d-4952-88f9-1b850259d914:OS:256:stopped:
-a8799014-7680-481f-b7de-76b501dbd803:OS:256:running:instance1-3b5
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/1795ff7e/smartos-ssh/src/test/resources/vmspec.json
----------------------------------------------------------------------
diff --git a/smartos-ssh/src/test/resources/vmspec.json b/smartos-ssh/src/test/resources/vmspec.json
deleted file mode 100644
index d3bae59..0000000
--- a/smartos-ssh/src/test/resources/vmspec.json
+++ /dev/null
@@ -1,19 +0,0 @@
-{
- "alias":"small",
- "brand":"joyent",
- "dataset_uuid":"56108678-1183-11e1-83c3-ff3185a5b47f",
- "dns_domain":"local",
- "quota":"0",
- "max_physical_memory":256,
- "max_locked_memory":256,
- "max_swap":256,
- "tmpfs":256,
- "nics":[
- {
- "nic_tag":"eth0",
- "ip":"192.168.1.4",
- "netmask":"255.255.255.0",
- "gateway":"192.168.1.1"
- }
- ]
-}
[8/9] git commit: Remove cloudstack-ec2,
which hasn't been published in over a year.
Posted by ad...@apache.org.
Remove cloudstack-ec2, which hasn't been published in over a year.
Project: http://git-wip-us.apache.org/repos/asf/jclouds-labs/repo
Commit: http://git-wip-us.apache.org/repos/asf/jclouds-labs/commit/ba934d26
Tree: http://git-wip-us.apache.org/repos/asf/jclouds-labs/tree/ba934d26
Diff: http://git-wip-us.apache.org/repos/asf/jclouds-labs/diff/ba934d26
Branch: refs/heads/master
Commit: ba934d267edba6f9c13b503e947fe524c7fca7cd
Parents: 065071c
Author: Adrian Cole <ad...@gmail.com>
Authored: Sun Oct 5 09:20:41 2014 -0700
Committer: Adrian Cole <ad...@apache.org>
Committed: Sun Oct 5 10:22:54 2014 -0700
----------------------------------------------------------------------
cloudstack-ec2/pom.xml | 128 -------------------
.../ec2/CloudStackEC2ApiMetadata.java | 82 ------------
.../config/CloudStackEC2RestClientModule.java | 35 -----
.../services/org.jclouds.apis.ApiMetadata | 1 -
.../ec2/CloudStackEC2ApiMetadataTest.java | 28 ----
.../features/CloudStackSubnetApiLiveTest.java | 27 ----
.../BaseCloudStackEC2RestClientExpectTest.java | 48 -------
.../CloudStackEC2AMIClientLiveTest.java | 28 ----
...AvailabilityZoneAndRegionClientLiveTest.java | 28 ----
...StackEC2ElasticBlockStoreClientLiveTest.java | 28 ----
...dStackEC2ElasticIPAddressClientLiveTest.java | 28 ----
.../CloudStackEC2InstanceClientLiveTest.java | 28 ----
.../CloudStackEC2KeyPairClientLiveTest.java | 28 ----
...loudStackEC2SecurityGroupClientLiveTest.java | 28 ----
14 files changed, 545 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/ba934d26/cloudstack-ec2/pom.xml
----------------------------------------------------------------------
diff --git a/cloudstack-ec2/pom.xml b/cloudstack-ec2/pom.xml
deleted file mode 100644
index da1f785..0000000
--- a/cloudstack-ec2/pom.xml
+++ /dev/null
@@ -1,128 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- 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.labs</groupId>
- <artifactId>jclouds-labs</artifactId>
- <version>2.0.0-SNAPSHOT</version>
- </parent>
-
- <!-- TODO: when out of labs, switch to org.jclouds.api -->
- <groupId>org.apache.jclouds.labs</groupId>
- <artifactId>cloudstack-ec2</artifactId>
- <name>jclouds CloudStack EC2 api</name>
- <description>EC2 implementation based on CloudStack</description>
- <packaging>bundle</packaging>
-
- <properties>
- <test.cloudstack-ec2.endpoint>http://localhost:8090/bridge/rest/AmazonEC2</test.cloudstack-ec2.endpoint>
- <test.cloudstack-ec2.api-version>2010-11-15</test.cloudstack-ec2.api-version>
- <test.cloudstack-ec2.build-version />
- <test.cloudstack-ec2.identity>FIXME_IDENTITY</test.cloudstack-ec2.identity>
- <test.cloudstack-ec2.credential>FIXME_CREDENTIAL</test.cloudstack-ec2.credential>
- <test.cloudstack-ec2.template>imageId=fixme-region/ami-fixme</test.cloudstack-ec2.template>
- <test.cloudstack-ec2.ebs-template>imageId=fixme-region/ami-fixmeebs</test.cloudstack-ec2.ebs-template>
- <jclouds.osgi.export>org.jclouds.cloudstack.ec2*;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.api</groupId>
- <artifactId>ec2</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.jclouds.api</groupId>
- <artifactId>ec2</artifactId>
- <version>${project.version}</version>
- <type>test-jar</type>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.jclouds</groupId>
- <artifactId>jclouds-core</artifactId>
- <version>${project.version}</version>
- <type>test-jar</type>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.jclouds</groupId>
- <artifactId>jclouds-compute</artifactId>
- <version>${project.version}</version>
- <type>test-jar</type>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.jclouds.driver</groupId>
- <artifactId>jclouds-log4j</artifactId>
- <version>${project.version}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.jclouds.driver</groupId>
- <artifactId>jclouds-sshj</artifactId>
- <version>${project.version}</version>
- <scope>test</scope>
- </dependency>
- </dependencies>
-
- <profiles>
- <profile>
- <id>live</id>
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-plugin</artifactId>
- <executions>
- <execution>
- <id>integration</id>
- <phase>integration-test</phase>
- <goals>
- <goal>test</goal>
- </goals>
- <configuration>
- <systemPropertyVariables>
- <test.cloudstack-ec2.endpoint>${test.cloudstack-ec2.endpoint}</test.cloudstack-ec2.endpoint>
- <test.cloudstack-ec2.api-version>${test.cloudstack-ec2.api-version}</test.cloudstack-ec2.api-version>
- <test.cloudstack-ec2.build-version>${test.cloudstack-ec2.build-version}</test.cloudstack-ec2.build-version>
- <test.cloudstack-ec2.identity>${test.cloudstack-ec2.identity}</test.cloudstack-ec2.identity>
- <test.cloudstack-ec2.credential>${test.cloudstack-ec2.credential}</test.cloudstack-ec2.credential>
- <test.cloudstack-ec2.template>${test.cloudstack-ec2.template}</test.cloudstack-ec2.template>
- <test.cloudstack-ec2.ebs-template>${test.cloudstack-ec2.ebs-template}</test.cloudstack-ec2.ebs-template>
- </systemPropertyVariables>
- </configuration>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
- </profile>
- </profiles>
-
-</project>
-
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/ba934d26/cloudstack-ec2/src/main/java/org/jclouds/cloudstack/ec2/CloudStackEC2ApiMetadata.java
----------------------------------------------------------------------
diff --git a/cloudstack-ec2/src/main/java/org/jclouds/cloudstack/ec2/CloudStackEC2ApiMetadata.java b/cloudstack-ec2/src/main/java/org/jclouds/cloudstack/ec2/CloudStackEC2ApiMetadata.java
deleted file mode 100644
index 6cb70a4..0000000
--- a/cloudstack-ec2/src/main/java/org/jclouds/cloudstack/ec2/CloudStackEC2ApiMetadata.java
+++ /dev/null
@@ -1,82 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.cloudstack.ec2;
-
-import java.net.URI;
-import java.util.Properties;
-
-import org.jclouds.apis.ApiMetadata;
-import org.jclouds.cloudstack.ec2.config.CloudStackEC2RestClientModule;
-import org.jclouds.ec2.EC2ApiMetadata;
-import org.jclouds.ec2.EC2AsyncClient;
-import org.jclouds.ec2.EC2Client;
-import org.jclouds.ec2.compute.config.EC2ComputeServiceContextModule;
-import org.jclouds.ec2.compute.config.EC2ResolveImagesModule;
-
-import com.google.common.collect.ImmutableSet;
-import com.google.inject.Module;
-
-/**
- * Implementation of {@link ApiMetadata} for the CloudStack's EC2-clone API
- */
-public class CloudStackEC2ApiMetadata extends EC2ApiMetadata {
-
- @Override
- public Builder toBuilder() {
- return new Builder().fromApiMetadata(this);
- }
-
- public CloudStackEC2ApiMetadata() {
- this(new Builder());
- }
-
- protected CloudStackEC2ApiMetadata(Builder builder) {
- super(builder);
- }
-
- public static Properties defaultProperties() {
- Properties properties = EC2ApiMetadata.defaultProperties();
- return properties;
- }
-
- public static class Builder extends EC2ApiMetadata.Builder<Builder> {
- protected Builder(){
- super(EC2Client.class, EC2AsyncClient.class);
- id("cloudstack-ec2")
- .name("CloudBridge (EC2 clone) API")
- .version("2010-11-15")
- .defaultEndpoint("http://localhost:8090/bridge/rest/AmazonEC2")
- .documentation(URI.create("http://docs.cloudstack.org/CloudBridge_Documentation"))
- .defaultProperties(CloudStackEC2ApiMetadata.defaultProperties())
- .context(CONTEXT_TOKEN)
- .defaultModules(ImmutableSet.<Class<? extends Module>>builder()
- .add(CloudStackEC2RestClientModule.class)
- .add(EC2ResolveImagesModule.class)
- .add(EC2ComputeServiceContextModule.class).build());
- }
-
- @Override
- public CloudStackEC2ApiMetadata build() {
- return new CloudStackEC2ApiMetadata(this);
- }
-
- @Override
- protected Builder self() {
- return this;
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/ba934d26/cloudstack-ec2/src/main/java/org/jclouds/cloudstack/ec2/config/CloudStackEC2RestClientModule.java
----------------------------------------------------------------------
diff --git a/cloudstack-ec2/src/main/java/org/jclouds/cloudstack/ec2/config/CloudStackEC2RestClientModule.java b/cloudstack-ec2/src/main/java/org/jclouds/cloudstack/ec2/config/CloudStackEC2RestClientModule.java
deleted file mode 100644
index d6991fe..0000000
--- a/cloudstack-ec2/src/main/java/org/jclouds/cloudstack/ec2/config/CloudStackEC2RestClientModule.java
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.cloudstack.ec2.config;
-
-import org.jclouds.ec2.EC2AsyncClient;
-import org.jclouds.ec2.EC2Client;
-import org.jclouds.ec2.config.EC2RestClientModule;
-import org.jclouds.rest.ConfiguresRestClient;
-
-@ConfiguresRestClient
-public class CloudStackEC2RestClientModule extends EC2RestClientModule<EC2Client, EC2AsyncClient> {
-
- @Override
- protected void configure() {
- super.configure();
- // override parsers, etc. here
- // ex.
- // bind(DescribeImagesResponseHandler.class).to(CloudStackDescribeImagesResponseHandler.class);
- }
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/ba934d26/cloudstack-ec2/src/main/resources/META-INF/services/org.jclouds.apis.ApiMetadata
----------------------------------------------------------------------
diff --git a/cloudstack-ec2/src/main/resources/META-INF/services/org.jclouds.apis.ApiMetadata b/cloudstack-ec2/src/main/resources/META-INF/services/org.jclouds.apis.ApiMetadata
deleted file mode 100644
index f68f5cc..0000000
--- a/cloudstack-ec2/src/main/resources/META-INF/services/org.jclouds.apis.ApiMetadata
+++ /dev/null
@@ -1 +0,0 @@
-org.jclouds.cloudstack.ec2.CloudStackEC2ApiMetadata
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/ba934d26/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/CloudStackEC2ApiMetadataTest.java
----------------------------------------------------------------------
diff --git a/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/CloudStackEC2ApiMetadataTest.java b/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/CloudStackEC2ApiMetadataTest.java
deleted file mode 100644
index 63eda3e..0000000
--- a/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/CloudStackEC2ApiMetadataTest.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.cloudstack.ec2;
-
-import org.jclouds.compute.internal.BaseComputeServiceApiMetadataTest;
-import org.testng.annotations.Test;
-
-@Test(groups = "unit", testName = "CloudStackEC2ApiMetadataTest")
-public class CloudStackEC2ApiMetadataTest extends BaseComputeServiceApiMetadataTest {
-
- public CloudStackEC2ApiMetadataTest() {
- super(new CloudStackEC2ApiMetadata());
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/ba934d26/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/features/CloudStackSubnetApiLiveTest.java
----------------------------------------------------------------------
diff --git a/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/features/CloudStackSubnetApiLiveTest.java b/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/features/CloudStackSubnetApiLiveTest.java
deleted file mode 100644
index a9dc203..0000000
--- a/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/features/CloudStackSubnetApiLiveTest.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.cloudstack.ec2.features;
-
-import org.jclouds.ec2.features.SubnetApiLiveTest;
-import org.testng.annotations.Test;
-
-@Test(groups = "live", testName = "CloudStackSubnetApiLiveTest")
-public class CloudStackSubnetApiLiveTest extends SubnetApiLiveTest {
- public CloudStackSubnetApiLiveTest() {
- provider = "cloudstack-ec2";
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/ba934d26/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/internal/BaseCloudStackEC2RestClientExpectTest.java
----------------------------------------------------------------------
diff --git a/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/internal/BaseCloudStackEC2RestClientExpectTest.java b/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/internal/BaseCloudStackEC2RestClientExpectTest.java
deleted file mode 100644
index 4f7a160..0000000
--- a/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/internal/BaseCloudStackEC2RestClientExpectTest.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.cloudstack.ec2.internal;
-
-import org.jclouds.cloudstack.ec2.config.CloudStackEC2RestClientModule;
-import org.jclouds.date.DateService;
-import org.jclouds.ec2.EC2Client;
-import org.jclouds.rest.ConfiguresRestClient;
-import org.jclouds.rest.internal.BaseRestClientExpectTest;
-
-import com.google.inject.Module;
-import com.google.inject.Provides;
-
-public abstract class BaseCloudStackEC2RestClientExpectTest extends BaseRestClientExpectTest<EC2Client> {
- protected static final String CONSTANT_DATE = "2012-04-16T15:54:08.897Z";
-
- public BaseCloudStackEC2RestClientExpectTest() {
- provider = "cloudstack-ec2";
- }
-
- @ConfiguresRestClient
- private static final class TestCloudStackEC2RestClientModule extends CloudStackEC2RestClientModule {
- @Override
- @Provides
- protected String provideTimeStamp(DateService dateService) {
- return CONSTANT_DATE;
- }
- }
-
- @Override
- protected Module createModule() {
- return new TestCloudStackEC2RestClientModule();
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/ba934d26/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/services/CloudStackEC2AMIClientLiveTest.java
----------------------------------------------------------------------
diff --git a/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/services/CloudStackEC2AMIClientLiveTest.java b/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/services/CloudStackEC2AMIClientLiveTest.java
deleted file mode 100644
index e19c295..0000000
--- a/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/services/CloudStackEC2AMIClientLiveTest.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.cloudstack.ec2.services;
-
-import org.jclouds.ec2.services.AMIClientLiveTest;
-import org.testng.annotations.Test;
-
-@Test(groups = "live", singleThreaded = true, testName = "CloudStackEC2AMIClientLiveTest")
-public class CloudStackEC2AMIClientLiveTest extends AMIClientLiveTest {
- public CloudStackEC2AMIClientLiveTest() {
- provider = "cloudstack-ec2";
- }
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/ba934d26/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/services/CloudStackEC2AvailabilityZoneAndRegionClientLiveTest.java
----------------------------------------------------------------------
diff --git a/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/services/CloudStackEC2AvailabilityZoneAndRegionClientLiveTest.java b/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/services/CloudStackEC2AvailabilityZoneAndRegionClientLiveTest.java
deleted file mode 100644
index 64f0775..0000000
--- a/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/services/CloudStackEC2AvailabilityZoneAndRegionClientLiveTest.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.cloudstack.ec2.services;
-
-import org.jclouds.ec2.services.AvailabilityZoneAndRegionClientLiveTest;
-import org.testng.annotations.Test;
-
-@Test(groups = "live", singleThreaded = true, testName = "CloudStackEC2AvailabilityZoneAndRegionClientLiveTest")
-public class CloudStackEC2AvailabilityZoneAndRegionClientLiveTest extends AvailabilityZoneAndRegionClientLiveTest {
- public CloudStackEC2AvailabilityZoneAndRegionClientLiveTest() {
- provider = "cloudstack-ec2";
- }
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/ba934d26/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/services/CloudStackEC2ElasticBlockStoreClientLiveTest.java
----------------------------------------------------------------------
diff --git a/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/services/CloudStackEC2ElasticBlockStoreClientLiveTest.java b/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/services/CloudStackEC2ElasticBlockStoreClientLiveTest.java
deleted file mode 100644
index 309467c..0000000
--- a/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/services/CloudStackEC2ElasticBlockStoreClientLiveTest.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.cloudstack.ec2.services;
-
-import org.jclouds.ec2.services.ElasticBlockStoreClientLiveTest;
-import org.testng.annotations.Test;
-
-@Test(groups = "live", singleThreaded = true, testName = "CloudStackEC2ElasticBlockStoreClientLiveTest")
-public class CloudStackEC2ElasticBlockStoreClientLiveTest extends ElasticBlockStoreClientLiveTest {
- public CloudStackEC2ElasticBlockStoreClientLiveTest() {
- provider = "cloudstack-ec2";
- }
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/ba934d26/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/services/CloudStackEC2ElasticIPAddressClientLiveTest.java
----------------------------------------------------------------------
diff --git a/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/services/CloudStackEC2ElasticIPAddressClientLiveTest.java b/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/services/CloudStackEC2ElasticIPAddressClientLiveTest.java
deleted file mode 100644
index 03283a1..0000000
--- a/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/services/CloudStackEC2ElasticIPAddressClientLiveTest.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.cloudstack.ec2.services;
-
-import org.jclouds.ec2.services.ElasticIPAddressClientLiveTest;
-import org.testng.annotations.Test;
-
-@Test(groups = "live", singleThreaded = true, testName = "CloudStackEC2ElasticIPAddressClientLiveTest")
-public class CloudStackEC2ElasticIPAddressClientLiveTest extends ElasticIPAddressClientLiveTest {
- public CloudStackEC2ElasticIPAddressClientLiveTest() {
- provider = "cloudstack-ec2";
- }
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/ba934d26/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/services/CloudStackEC2InstanceClientLiveTest.java
----------------------------------------------------------------------
diff --git a/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/services/CloudStackEC2InstanceClientLiveTest.java b/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/services/CloudStackEC2InstanceClientLiveTest.java
deleted file mode 100644
index 93c9545..0000000
--- a/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/services/CloudStackEC2InstanceClientLiveTest.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.cloudstack.ec2.services;
-
-import org.jclouds.ec2.services.InstanceClientLiveTest;
-import org.testng.annotations.Test;
-
-@Test(groups = "live", singleThreaded = true, testName = "CloudStackInstanceClientLiveTest")
-public class CloudStackEC2InstanceClientLiveTest extends InstanceClientLiveTest {
- public CloudStackEC2InstanceClientLiveTest() {
- provider = "cloudstack-ec2";
- }
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/ba934d26/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/services/CloudStackEC2KeyPairClientLiveTest.java
----------------------------------------------------------------------
diff --git a/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/services/CloudStackEC2KeyPairClientLiveTest.java b/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/services/CloudStackEC2KeyPairClientLiveTest.java
deleted file mode 100644
index 4155436..0000000
--- a/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/services/CloudStackEC2KeyPairClientLiveTest.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.cloudstack.ec2.services;
-
-import org.jclouds.ec2.services.KeyPairClientLiveTest;
-import org.testng.annotations.Test;
-
-@Test(groups = "live", singleThreaded = true, testName = "CloudStackEC2KeyPairClientLiveTest")
-public class CloudStackEC2KeyPairClientLiveTest extends KeyPairClientLiveTest {
- public CloudStackEC2KeyPairClientLiveTest() {
- provider = "cloudstack-ec2";
- }
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/ba934d26/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/services/CloudStackEC2SecurityGroupClientLiveTest.java
----------------------------------------------------------------------
diff --git a/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/services/CloudStackEC2SecurityGroupClientLiveTest.java b/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/services/CloudStackEC2SecurityGroupClientLiveTest.java
deleted file mode 100644
index 746e610..0000000
--- a/cloudstack-ec2/src/test/java/org/jclouds/cloudstack/ec2/services/CloudStackEC2SecurityGroupClientLiveTest.java
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.cloudstack.ec2.services;
-
-import org.jclouds.ec2.services.SecurityGroupClientLiveTest;
-import org.testng.annotations.Test;
-
-@Test(groups = "live", singleThreaded = true, testName = "CloudStackEC2SecurityGroupClientLiveTest")
-public class CloudStackEC2SecurityGroupClientLiveTest extends SecurityGroupClientLiveTest {
- public CloudStackEC2SecurityGroupClientLiveTest() {
- provider = "cloudstack-ec2";
- }
-
-}
[7/9] git commit: Remove nodepool,
which hasn't been published in over a year.
Posted by ad...@apache.org.
Remove nodepool, which hasn't been published in over a year.
Project: http://git-wip-us.apache.org/repos/asf/jclouds-labs/repo
Commit: http://git-wip-us.apache.org/repos/asf/jclouds-labs/commit/065071ca
Tree: http://git-wip-us.apache.org/repos/asf/jclouds-labs/tree/065071ca
Diff: http://git-wip-us.apache.org/repos/asf/jclouds-labs/diff/065071ca
Branch: refs/heads/master
Commit: 065071ca8a92fe996d63708715ab13c43ba9fcf9
Parents: 1795ff7
Author: Adrian Cole <ad...@gmail.com>
Authored: Sun Oct 5 09:20:13 2014 -0700
Committer: Adrian Cole <ad...@apache.org>
Committed: Sun Oct 5 10:22:45 2014 -0700
----------------------------------------------------------------------
nodepool/pom.xml | 146 --------
.../main/java/org/jclouds/nodepool/Backend.java | 38 ---
.../jclouds/nodepool/NodePoolApiMetadata.java | 100 ------
.../nodepool/NodePoolComputeServiceAdapter.java | 44 ---
.../nodepool/NodePoolComputeServiceContext.java | 73 ----
.../org/jclouds/nodepool/NodePoolStats.java | 73 ----
.../config/BindBackendComputeService.java | 338 -------------------
.../BindInputStreamToFilesystemBlobStore.java | 83 -----
.../nodepool/config/BindJcloudsModules.java | 62 ----
.../NodePoolComputeServiceContextModule.java | 71 ----
.../nodepool/config/NodePoolProperties.java | 74 ----
.../BaseNodePoolComputeServiceAdapter.java | 164 ---------
.../EagerNodePoolComputeServiceAdapter.java | 183 ----------
.../internal/JsonNodeMetadataStore.java | 144 --------
.../nodepool/internal/NodeMetadataStore.java | 75 ----
.../internal/NodeMetadataStoreCache.java | 86 -----
.../services/org.jclouds.apis.ApiMetadata | 1 -
.../jclouds/nodepool/BYONBackendLiveTest.java | 108 ------
.../jclouds/nodepool/NodeMetadataStoreTest.java | 138 --------
.../NodePoolComputeServiceContextTest.java | 63 ----
.../NodePoolComputeServiceLiveTest.java | 251 --------------
.../config/BindBackendComputeServiceTest.java | 82 -----
...indInputStreamToFilesystemBlobStoreTest.java | 62 ----
nodepool/src/test/resources/logback.xml | 71 ----
24 files changed, 2530 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/065071ca/nodepool/pom.xml
----------------------------------------------------------------------
diff --git a/nodepool/pom.xml b/nodepool/pom.xml
deleted file mode 100644
index 771893d..0000000
--- a/nodepool/pom.xml
+++ /dev/null
@@ -1,146 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
-
- Licensed to the Apache Software Foundation (ASF) under one or more
- contributor license agreements. See the NOTICE file distributed with
- this work for additional information regarding copyright ownership.
- The ASF licenses this file to You under the Apache License, Version 2.0
- (the "License"); you may not use this file except in compliance with
- the License. You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- 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.labs</groupId>
- <artifactId>jclouds-labs</artifactId>
- <version>2.0.0-SNAPSHOT</version>
- </parent>
-
- <!-- TODO: when out of labs, switch to org.jclouds.api? -->
- <groupId>org.apache.jclouds.labs</groupId>
- <artifactId>nodepool</artifactId>
- <name>jclouds nodepool api</name>
- <packaging>bundle</packaging>
-
- <properties>
- <jclouds.nodepool.backend-provider>byon</jclouds.nodepool.backend-provider>
- <jclouds.nodepool.backend-modules>org.jclouds.logging.slf4j.config.SLF4JLoggingModule,org.jclouds.sshj.config.SshjSshClientModule</jclouds.nodepool.backend-modules>
- <test.nodepool.endpoint>FIXME_ENDPOINT</test.nodepool.endpoint>
- <test.nodepool.api-version />
- <test.nodepool.build-version />
- <test.nodepool.identity>FIXME_IDENTITY</test.nodepool.identity>
- <test.nodepool.credential>FIXME_CREDENTIALS</test.nodepool.credential>
- <jclouds.osgi.export>org.jclouds.nodepool*;version="${project.version}"</jclouds.osgi.export>
- <jclouds.osgi.import>
- 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-compute</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.jclouds</groupId>
- <artifactId>jclouds-blobstore</artifactId>
- <version>${project.version}</version>
- </dependency>
- <!-- Add all compute so that we can run tests with any provider -->
- <dependency>
- <groupId>org.apache.jclouds</groupId>
- <artifactId>jclouds-allcompute</artifactId>
- <version>${project.version}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.jclouds.api</groupId>
- <artifactId>filesystem</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.jclouds</groupId>
- <artifactId>jclouds-compute</artifactId>
- <version>${project.version}</version>
- <type>test-jar</type>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.jclouds.api</groupId>
- <artifactId>byon</artifactId>
- <version>${project.version}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.jclouds</groupId>
- <artifactId>jclouds-core</artifactId>
- <version>${project.version}</version>
- <type>test-jar</type>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.jclouds.driver</groupId>
- <artifactId>jclouds-slf4j</artifactId>
- <version>${project.version}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.apache.jclouds.driver</groupId>
- <artifactId>jclouds-sshj</artifactId>
- <version>${project.version}</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>ch.qos.logback</groupId>
- <artifactId>logback-classic</artifactId>
- <scope>test</scope>
- </dependency>
- </dependencies>
-
- <profiles>
- <profile>
- <id>live</id>
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-plugin</artifactId>
- <executions>
- <execution>
- <id>integration</id>
- <phase>integration-test</phase>
- <goals>
- <goal>test</goal>
- </goals>
- <configuration>
- <systemPropertyVariables>
- <test.nodepool.endpoint>${test.nodepool.endpoint}</test.nodepool.endpoint>
- <test.nodepool.api-version>${test.nodepool.api-version}</test.nodepool.api-version>
- <test.nodepool.build-version>${test.nodepool.build-version}</test.nodepool.build-version>
- <test.nodepool.identity>${test.nodepool.identity}</test.nodepool.identity>
- <test.nodepool.credential>${test.nodepool.credential}</test.nodepool.credential>
- <jclouds.nodepool.backend-provider>${jclouds.nodepool.backend-provider}</jclouds.nodepool.backend-provider>
- <jclouds.nodepool.backend-modules>${jclouds.nodepool.backend-modules}</jclouds.nodepool.backend-modules>
- </systemPropertyVariables>
- </configuration>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
- </profile>
- </profiles>
-
-</project>
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/065071ca/nodepool/src/main/java/org/jclouds/nodepool/Backend.java
----------------------------------------------------------------------
diff --git a/nodepool/src/main/java/org/jclouds/nodepool/Backend.java b/nodepool/src/main/java/org/jclouds/nodepool/Backend.java
deleted file mode 100644
index c13fa7a..0000000
--- a/nodepool/src/main/java/org/jclouds/nodepool/Backend.java
+++ /dev/null
@@ -1,38 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.nodepool;
-
-import static java.lang.annotation.ElementType.ANNOTATION_TYPE;
-import static java.lang.annotation.ElementType.FIELD;
-import static java.lang.annotation.ElementType.METHOD;
-import static java.lang.annotation.ElementType.PARAMETER;
-import static java.lang.annotation.RetentionPolicy.RUNTIME;
-
-import java.lang.annotation.Retention;
-import java.lang.annotation.Target;
-
-import javax.inject.Qualifier;
-
-/**
- * Designates that this Resource qualifies an object to the back-end of the pool
- */
-@Target( { ANNOTATION_TYPE, FIELD, METHOD, PARAMETER })
-@Retention(RUNTIME)
-@Qualifier
-public @interface Backend {
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/065071ca/nodepool/src/main/java/org/jclouds/nodepool/NodePoolApiMetadata.java
----------------------------------------------------------------------
diff --git a/nodepool/src/main/java/org/jclouds/nodepool/NodePoolApiMetadata.java b/nodepool/src/main/java/org/jclouds/nodepool/NodePoolApiMetadata.java
deleted file mode 100644
index 468da40..0000000
--- a/nodepool/src/main/java/org/jclouds/nodepool/NodePoolApiMetadata.java
+++ /dev/null
@@ -1,100 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.nodepool;
-
-import static org.jclouds.nodepool.config.NodePoolProperties.BACKEND_GROUP;
-import static org.jclouds.nodepool.config.NodePoolProperties.BACKEND_MODULES;
-import static org.jclouds.nodepool.config.NodePoolProperties.MAX_SIZE;
-import static org.jclouds.nodepool.config.NodePoolProperties.METADATA_CONTAINER;
-import static org.jclouds.nodepool.config.NodePoolProperties.MIN_SIZE;
-import static org.jclouds.nodepool.config.NodePoolProperties.POOL_ADMIN_ACCESS;
-import static org.jclouds.nodepool.config.NodePoolProperties.REMOVE_DESTROYED;
-
-import java.io.File;
-import java.net.URI;
-import java.util.Properties;
-
-import org.jclouds.apis.internal.BaseApiMetadata;
-import org.jclouds.nodepool.config.BindBackendComputeService;
-import org.jclouds.nodepool.config.BindInputStreamToFilesystemBlobStore;
-import org.jclouds.nodepool.config.NodePoolComputeServiceContextModule;
-import org.jclouds.rest.internal.BaseRestApiMetadata;
-
-import com.google.common.collect.ImmutableSet;
-import com.google.inject.Module;
-
-public class NodePoolApiMetadata extends BaseApiMetadata {
-
- @Override
- public Builder toBuilder() {
- return new Builder().fromApiMetadata(this);
- }
-
- public NodePoolApiMetadata() {
- super(new Builder());
- }
-
- protected NodePoolApiMetadata(Builder builder) {
- super(builder);
- }
-
- public static Properties defaultProperties() {
- Properties properties = BaseRestApiMetadata.defaultProperties();
- properties.setProperty(BACKEND_GROUP, "nodepool");
- properties.setProperty(METADATA_CONTAINER, "nodes");
- properties.setProperty(BACKEND_MODULES,
- "org.jclouds.logging.slf4j.config.SLF4JLoggingModule,org.jclouds.sshj.config.SshjSshClientModule");
- properties.setProperty(MAX_SIZE, 10 + "");
- properties.setProperty(MIN_SIZE, 5 + "");
- properties.setProperty(REMOVE_DESTROYED, "true");
- // by default use the current user's user and private key if one exists, if not the properties
- // will need to be set (no default passwords)
- if (new File(System.getProperty("user.home") + "/.ssh/id_rsa").exists()) {
- properties.setProperty(POOL_ADMIN_ACCESS, "adminUsername=" + System.getProperty("user.name")
- + ",adminPrivateKeyFile=" + System.getProperty("user.home") + "/.ssh/id_rsa");
- }
- return properties;
- }
-
- public static class Builder extends BaseApiMetadata.Builder<Builder> {
- protected Builder() {
- id("nodepool")
- .name("node pool provider wrapper")
- .identityName("backend identity")
- .endpointName("backend endpoint")
- .defaultEndpoint("fixme")
- .documentation(URI.create("http://www.jclouds.org/documentation/userguide/compute"))
- .view(NodePoolComputeServiceContext.class)
- .defaultModules(
- ImmutableSet.<Class<? extends Module>> builder()
- .add(NodePoolComputeServiceContextModule.class)
- .add(BindInputStreamToFilesystemBlobStore.class)
- .add(BindBackendComputeService.class).build())
- .defaultProperties(NodePoolApiMetadata.defaultProperties());
- }
-
- @Override
- public NodePoolApiMetadata build() {
- return new NodePoolApiMetadata(this);
- }
-
- @Override
- protected Builder self() {
- return this;
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/065071ca/nodepool/src/main/java/org/jclouds/nodepool/NodePoolComputeServiceAdapter.java
----------------------------------------------------------------------
diff --git a/nodepool/src/main/java/org/jclouds/nodepool/NodePoolComputeServiceAdapter.java b/nodepool/src/main/java/org/jclouds/nodepool/NodePoolComputeServiceAdapter.java
deleted file mode 100644
index aac0c60..0000000
--- a/nodepool/src/main/java/org/jclouds/nodepool/NodePoolComputeServiceAdapter.java
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.nodepool;
-
-import org.jclouds.compute.ComputeServiceContext;
-import org.jclouds.compute.JCloudsNativeComputeServiceAdapter;
-import org.jclouds.nodepool.internal.EagerNodePoolComputeServiceAdapter;
-
-import com.google.inject.ImplementedBy;
-
-@ImplementedBy(EagerNodePoolComputeServiceAdapter.class)
-public interface NodePoolComputeServiceAdapter extends JCloudsNativeComputeServiceAdapter {
-
- int idleNodes();
-
- int maxNodes();
-
- int minNodes();
-
- int usedNodes();
-
- int currentSize();
-
- void destroyPool();
-
- ComputeServiceContext getBackendComputeServiceContext();
-
- String getPoolGroupName();
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/065071ca/nodepool/src/main/java/org/jclouds/nodepool/NodePoolComputeServiceContext.java
----------------------------------------------------------------------
diff --git a/nodepool/src/main/java/org/jclouds/nodepool/NodePoolComputeServiceContext.java b/nodepool/src/main/java/org/jclouds/nodepool/NodePoolComputeServiceContext.java
deleted file mode 100644
index da498cf..0000000
--- a/nodepool/src/main/java/org/jclouds/nodepool/NodePoolComputeServiceContext.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.nodepool;
-
-import javax.inject.Singleton;
-
-import org.jclouds.Context;
-import org.jclouds.compute.ComputeService;
-import org.jclouds.compute.ComputeServiceContext;
-import org.jclouds.compute.Utils;
-import org.jclouds.compute.internal.ComputeServiceContextImpl;
-import org.jclouds.location.Provider;
-
-import com.google.common.reflect.TypeToken;
-import com.google.inject.Inject;
-
-@Singleton
-public class NodePoolComputeServiceContext extends ComputeServiceContextImpl {
-
- private final NodePoolComputeServiceAdapter adapter;
-
- @Inject
- public NodePoolComputeServiceContext(@Provider Context backend, @Provider TypeToken<? extends Context> backendType,
- ComputeService computeService, Utils utils, NodePoolComputeServiceAdapter adapter) {
- super(backend, backendType, computeService, utils);
- this.adapter = adapter;
- }
-
- /**
- * Returns the statistics on the pool.
- *
- * @return
- */
- public NodePoolStats getPoolStats() {
- return new NodePoolStats(adapter.currentSize(), adapter.idleNodes(), adapter.usedNodes(), adapter.maxNodes(),
- adapter.minNodes());
- }
-
- /**
- * Destroys all (backing nodes) in the pool and deletes all state.
- */
- public void destroyPool() {
- this.adapter.destroyPool();
- }
-
- /**
- * Returns the backend context.
- *
- * @return
- */
- public ComputeServiceContext getBackendContext() {
- return this.adapter.getBackendComputeServiceContext();
- }
-
- public String getPoolGroupName() {
- return this.adapter.getPoolGroupName();
- }
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/065071ca/nodepool/src/main/java/org/jclouds/nodepool/NodePoolStats.java
----------------------------------------------------------------------
diff --git a/nodepool/src/main/java/org/jclouds/nodepool/NodePoolStats.java b/nodepool/src/main/java/org/jclouds/nodepool/NodePoolStats.java
deleted file mode 100644
index 07a9dc2..0000000
--- a/nodepool/src/main/java/org/jclouds/nodepool/NodePoolStats.java
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.nodepool;
-
-/**
- * NodePool statistics and status.
- */
-public class NodePoolStats {
-
- private final int currentSize;
- private final int idleNodes;
- private final int usedNodes;
- private final int maxNodes;
- private final int minNodes;
-
- NodePoolStats(int currentSize, int idleNodes, int usedNodes, int maxNodes, int minNodes) {
- this.currentSize = currentSize;
- this.idleNodes = idleNodes;
- this.usedNodes = usedNodes;
- this.maxNodes = maxNodes;
- this.minNodes = minNodes;
- }
-
- /**
- * The number of nodes currently allocated in the backend provider and in the pool.
- */
- public int currentSize() {
- return currentSize;
- }
-
- /**
- * The number of nodes in the pool not being used.
- */
- public int idleNodes() {
- return idleNodes;
- }
-
- /**
- * The number of nodes in the pool that are currently being used.
- */
- public int usedNodes() {
- return usedNodes;
- }
-
- /**
- * The maximum size the pool will reach.
- */
- public int maxNodes() {
- return maxNodes;
- }
-
- /**
- * The minimum size of the pool.
- */
- public int minNodes() {
- return minNodes;
- }
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/065071ca/nodepool/src/main/java/org/jclouds/nodepool/config/BindBackendComputeService.java
----------------------------------------------------------------------
diff --git a/nodepool/src/main/java/org/jclouds/nodepool/config/BindBackendComputeService.java b/nodepool/src/main/java/org/jclouds/nodepool/config/BindBackendComputeService.java
deleted file mode 100644
index d581e54..0000000
--- a/nodepool/src/main/java/org/jclouds/nodepool/config/BindBackendComputeService.java
+++ /dev/null
@@ -1,338 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.nodepool.config;
-
-import static com.google.common.base.Preconditions.checkNotNull;
-import static com.google.common.base.Preconditions.checkState;
-import static org.jclouds.nodepool.config.NodePoolProperties.BACKEND_GROUP;
-
-import java.net.URI;
-import java.util.Properties;
-import java.util.Set;
-
-import javax.inject.Named;
-import javax.inject.Singleton;
-
-import org.jclouds.ContextBuilder;
-import org.jclouds.compute.ComputeService;
-import org.jclouds.compute.ComputeServiceContext;
-import org.jclouds.compute.domain.Hardware;
-import org.jclouds.compute.domain.HardwareBuilder;
-import org.jclouds.compute.domain.Image;
-import org.jclouds.compute.domain.Image.Status;
-import org.jclouds.compute.domain.ImageBuilder;
-import org.jclouds.compute.domain.NodeMetadata;
-import org.jclouds.compute.domain.OsFamily;
-import org.jclouds.compute.domain.Template;
-import org.jclouds.compute.domain.TemplateBuilder;
-import org.jclouds.compute.domain.TemplateBuilderSpec;
-import org.jclouds.compute.options.TemplateOptions;
-import org.jclouds.compute.predicates.NodePredicates;
-import org.jclouds.domain.Credentials;
-import org.jclouds.domain.Location;
-import org.jclouds.internal.FilterStringsBoundToInjectorByName;
-import org.jclouds.lifecycle.Closer;
-import org.jclouds.location.Provider;
-import org.jclouds.nodepool.Backend;
-import org.jclouds.rest.annotations.ApiVersion;
-import org.jclouds.rest.annotations.BuildVersion;
-import org.jclouds.util.Predicates2;
-
-import com.google.common.annotations.Beta;
-import com.google.common.base.Function;
-import com.google.common.base.Predicate;
-import com.google.common.base.Predicates;
-import com.google.common.base.Supplier;
-import com.google.common.base.Suppliers;
-import com.google.common.collect.Iterables;
-import com.google.common.collect.Sets;
-import com.google.inject.Exposed;
-import com.google.inject.Module;
-import com.google.inject.Provides;
-
-public class BindBackendComputeService extends BindJcloudsModules {
-
- @Provides
- @Singleton
- @Backend
- protected String provideBackendProvider(@Named(NodePoolProperties.BACKEND_PROVIDER) String provider) {
- return provider;
- }
-
- // things wrapped in suppliers are intentional. They can cause network i/o
- // and shouldn't be invoked until after the injector is created.
-
- @Provides
- @Singleton
- @Backend
- @Exposed
- protected Supplier<ComputeService> makeBackendComputeService(@Backend final String provider,
- @Backend final Set<Module> modules, @Provider final Supplier<Credentials> creds,
- @Backend final Supplier<Properties> overrides, final Closer closer) {
- return Suppliers.memoize(new Supplier<ComputeService>() {
-
- @Override
- public ComputeService get() {
- Credentials currentCreds = checkNotNull(creds.get(), "credential supplier returned null");
- ComputeServiceContext ctx = ContextBuilder.newBuilder(provider)
- .credentials(currentCreds.identity, currentCreds.credential).overrides(overrides.get())
- .modules(modules).buildView(ComputeServiceContext.class);
- closer.addToClose(ctx);
- return ctx.getComputeService();
- }
-
- });
- }
-
- private static final Predicate<String> keys = Predicates.<String>and(
- Predicates.not(Predicates2.startsWith("jclouds.nodepool")),
- Predicates.not(Predicates2.startsWith("nodepool")));
-
- @Provides
- @Singleton
- @Backend
- protected Supplier<Properties> propertiesFor(final FilterStringsBoundToInjectorByName filterStringsBoundByName,
- @Backend final String provider, @Provider final Supplier<URI> endpoint,
- @ApiVersion final String apiVersion, @BuildVersion final String buildVersion) {
- return Suppliers.memoize(new Supplier<Properties>() {
-
- @Override
- public Properties get() {
- Properties props = new Properties();
- props.putAll(filterStringsBoundByName.apply(keys));
- props.put(provider + ".endpoint", endpoint.get().toASCIIString());
- props.put(provider + ".api-version", apiVersion);
- props.put(provider + ".build-version", buildVersion);
- return props;
- }
-
- });
- }
-
- @Provides
- @Exposed
- @Singleton
- protected TemplateBuilder templateBuilder(@Backend final Supplier<ComputeService> compute,
- @Backend final Supplier<Template> template) {
- try {
- // if the backend cannot provide a decent template we'll have problems with looking for
- // images, just provide a custom templatebuilder that returns our custom template.
- compute.get().templateBuilder().build();
- return compute.get().templateBuilder();
- } catch (Exception e) {
- return new TemplateBuilder() {
-
- @Override
- public TemplateBuilder smallest() {
- return this;
- }
-
- @Override
- public TemplateBuilder osVersionMatches(String osVersionRegex) {
- return this;
- }
-
- @Override
- public TemplateBuilder osNameMatches(String osNameRegex) {
- return this;
- }
-
- @Override
- public TemplateBuilder osFamily(OsFamily os) {
- return this;
- }
-
- @Override
- public TemplateBuilder osDescriptionMatches(String osDescriptionRegex) {
- return this;
- }
-
- @Override
- public TemplateBuilder osArchMatches(String architecture) {
- return this;
- }
-
- @Override
- public TemplateBuilder os64Bit(boolean is64bit) {
- return this;
- }
-
- @Override
- public TemplateBuilder options(TemplateOptions options) {
- return this;
- }
-
- @Override
- public TemplateBuilder minRam(int megabytes) {
- return this;
- }
-
- @Override
- public TemplateBuilder minDisk(double gigabytes) {
- return this;
- }
-
- @Override
- public TemplateBuilder minCores(double minCores) {
- return this;
- }
-
- @Override
- public TemplateBuilder locationId(String locationId) {
- return this;
- }
-
- @Override
- public TemplateBuilder imageVersionMatches(String imageVersionRegex) {
- return this;
- }
-
- @Override
- public TemplateBuilder imageNameMatches(String imageNameRegex) {
- return this;
- }
-
- @Override
- public TemplateBuilder imageMatches(Predicate<Image> condition) {
- return this;
- }
-
- @Override
- public TemplateBuilder imageId(String imageId) {
- return this;
- }
-
- @Override
- public TemplateBuilder imageDescriptionMatches(String imageDescriptionRegex) {
- return this;
- }
-
- @Override
- public TemplateBuilder hypervisorMatches(String hypervisorRegex) {
- return this;
- }
-
- @Override
- public TemplateBuilder hardwareId(String hardwareId) {
- return this;
- }
-
- @Override
- public TemplateBuilder fromTemplate(Template image) {
- return this;
- }
-
- @Override
- public TemplateBuilder fromImage(Image image) {
- return this;
- }
-
- @Override
- public TemplateBuilder fromHardware(Hardware hardware) {
- return this;
- }
-
- @Override
- @Beta
- public TemplateBuilder from(String spec) {
- return this;
- }
-
- @Override
- @Beta
- public TemplateBuilder from(TemplateBuilderSpec spec) {
- return this;
- }
-
- @Override
- public TemplateBuilder fastest() {
- return this;
- }
-
- @Override
- public Template build() {
- return template.get();
- }
-
- @Override
- public TemplateBuilder biggest() {
- return this;
- }
-
- @Override
- public TemplateBuilder any() {
- return this;
- }
- };
- }
- }
-
- @Provides
- @Singleton
- @Backend
- @Exposed
- protected Supplier<Template> makeBackendTemplate(@Backend Supplier<ComputeService> compute,
- @Named(BACKEND_GROUP) final String poolGroupPrefix) {
- return Suppliers.memoize(Suppliers.compose(new Function<ComputeService, Template>() {
- @Override
- public Template apply(ComputeService input) {
- try {
- return input.templateBuilder().build();
- } catch (IllegalStateException e) {
- // if there's no template we must be on byon and there must be at least one node in
- // our group
- Set<? extends NodeMetadata> nodes = Sets.filter(input.listNodesDetailsMatching(NodePredicates.all()),
- NodePredicates.inGroup(poolGroupPrefix));
- checkState(!nodes.isEmpty(), "service provided no template and no node was in this nodepool's group.");
- final NodeMetadata node = Iterables.get(nodes, 0);
- final Image image = new ImageBuilder().id(node.getId()).location(node.getLocation())
- .operatingSystem(node.getOperatingSystem()).status(Status.AVAILABLE)
- .description("physical node").build();
- final Hardware hardware = new HardwareBuilder().id(node.getId()).build();
- return new Template() {
-
- @Override
- public Image getImage() {
- return image;
- }
-
- @Override
- public Hardware getHardware() {
- return hardware;
- }
-
- @Override
- public Location getLocation() {
- return node.getLocation();
- }
-
- @Override
- public TemplateOptions getOptions() {
- return new TemplateOptions();
- }
-
- @Override
- public Template clone() {
- return this;
- }
- };
- }
- }
-
- }, compute));
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/065071ca/nodepool/src/main/java/org/jclouds/nodepool/config/BindInputStreamToFilesystemBlobStore.java
----------------------------------------------------------------------
diff --git a/nodepool/src/main/java/org/jclouds/nodepool/config/BindInputStreamToFilesystemBlobStore.java b/nodepool/src/main/java/org/jclouds/nodepool/config/BindInputStreamToFilesystemBlobStore.java
deleted file mode 100644
index 67c3bad..0000000
--- a/nodepool/src/main/java/org/jclouds/nodepool/config/BindInputStreamToFilesystemBlobStore.java
+++ /dev/null
@@ -1,83 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.nodepool.config;
-
-import java.io.File;
-import java.io.InputStream;
-import java.util.Map;
-import java.util.Properties;
-import java.util.Set;
-
-import javax.inject.Named;
-import javax.inject.Singleton;
-
-import org.jclouds.ContextBuilder;
-import org.jclouds.blobstore.BlobStoreContext;
-import org.jclouds.filesystem.reference.FilesystemConstants;
-import org.jclouds.lifecycle.Closer;
-import org.jclouds.nodepool.Backend;
-
-import com.google.common.base.Function;
-import com.google.common.base.Supplier;
-import com.google.common.base.Suppliers;
-import com.google.inject.Exposed;
-import com.google.inject.Module;
-import com.google.inject.Provides;
-
-public class BindInputStreamToFilesystemBlobStore extends BindJcloudsModules {
-
- @Override
- protected void configure() {
- }
-
- @Provides
- @Singleton
- @Exposed
- @Named("METADATA")
- protected Supplier<Map<String, InputStream>> provideInputStreamMapFromBlobStore(Supplier<BlobStoreContext> in,
- @Named(NodePoolProperties.METADATA_CONTAINER) final String container) {
- return Suppliers.ofInstance(new Function<BlobStoreContext, Map<String, InputStream>>() {
- @Override
- public Map<String, InputStream> apply(BlobStoreContext input) {
- input.getBlobStore().createContainerInLocation(null, container);
- return input.createInputStreamMap(container);
- }
-
- }.apply(in.get()));
- }
-
- @Provides
- @Singleton
- protected Supplier<BlobStoreContext> makeBlobStoreContext(@Named(NodePoolProperties.BASEDIR) final String basedir,
- @Backend final Set<Module> modules, final Closer closer) {
- final Properties overrides = new Properties();
- overrides.setProperty(FilesystemConstants.PROPERTY_BASEDIR, basedir);
- return Suppliers.memoize(new Supplier<BlobStoreContext>() {
-
- @Override
- public BlobStoreContext get() {
- // GAE alert!
- new File(basedir).mkdirs();
- BlobStoreContext returnVal = ContextBuilder.newBuilder("filesystem").overrides(overrides).modules(modules)
- .buildView(BlobStoreContext.class);
- closer.addToClose(returnVal);
- return returnVal;
- }
-
- });
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/065071ca/nodepool/src/main/java/org/jclouds/nodepool/config/BindJcloudsModules.java
----------------------------------------------------------------------
diff --git a/nodepool/src/main/java/org/jclouds/nodepool/config/BindJcloudsModules.java b/nodepool/src/main/java/org/jclouds/nodepool/config/BindJcloudsModules.java
deleted file mode 100644
index 8225e94..0000000
--- a/nodepool/src/main/java/org/jclouds/nodepool/config/BindJcloudsModules.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.nodepool.config;
-
-import java.util.Set;
-
-import javax.inject.Named;
-import javax.inject.Singleton;
-
-import org.jclouds.nodepool.Backend;
-
-import com.google.common.base.Function;
-import com.google.common.base.Splitter;
-import com.google.common.base.Throwables;
-import com.google.common.collect.ImmutableSet;
-import com.google.common.collect.Iterables;
-import com.google.inject.Module;
-import com.google.inject.PrivateModule;
-import com.google.inject.Provides;
-
-public class BindJcloudsModules extends PrivateModule {
-
- @Override
- protected void configure() {
- }
-
- @Provides
- @Singleton
- @Backend
- protected Set<Module> provideBackendModules(@Named(NodePoolProperties.BACKEND_MODULES) String moduleString) {
- return ImmutableSet.copyOf(Iterables.transform(Splitter.on(',').split(moduleString),
- new Function<String, Module>() {
-
- @Override
- public Module apply(String input) {
- try {
- return Module.class.cast(Class.forName(input).newInstance());
- } catch (InstantiationException e) {
- throw Throwables.propagate(e);
- } catch (IllegalAccessException e) {
- throw Throwables.propagate(e);
- } catch (ClassNotFoundException e) {
- throw Throwables.propagate(e);
- }
- }
- }));
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/065071ca/nodepool/src/main/java/org/jclouds/nodepool/config/NodePoolComputeServiceContextModule.java
----------------------------------------------------------------------
diff --git a/nodepool/src/main/java/org/jclouds/nodepool/config/NodePoolComputeServiceContextModule.java b/nodepool/src/main/java/org/jclouds/nodepool/config/NodePoolComputeServiceContextModule.java
deleted file mode 100644
index e047371..0000000
--- a/nodepool/src/main/java/org/jclouds/nodepool/config/NodePoolComputeServiceContextModule.java
+++ /dev/null
@@ -1,71 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.nodepool.config;
-
-import org.jclouds.apis.ApiMetadata;
-import org.jclouds.compute.ComputeServiceContext;
-import org.jclouds.compute.config.JCloudsNativeComputeServiceAdapterContextModule;
-import org.jclouds.compute.domain.Hardware;
-import org.jclouds.compute.domain.Image;
-import org.jclouds.compute.domain.NodeMetadata;
-import org.jclouds.compute.domain.Template;
-import org.jclouds.domain.Location;
-import org.jclouds.domain.LoginCredentials;
-import org.jclouds.javax.annotation.Nullable;
-import org.jclouds.nodepool.NodePoolApiMetadata;
-import org.jclouds.nodepool.NodePoolComputeServiceAdapter;
-import org.jclouds.nodepool.NodePoolComputeServiceContext;
-import org.jclouds.nodepool.internal.JsonNodeMetadataStore;
-import org.jclouds.nodepool.internal.NodeMetadataStore;
-
-import com.google.common.base.Function;
-import com.google.inject.TypeLiteral;
-
-public class NodePoolComputeServiceContextModule extends JCloudsNativeComputeServiceAdapterContextModule {
-
- private static class NullCredentialsOverrider implements Function<Template, LoginCredentials> {
-
- @Override
- @Nullable
- public LoginCredentials apply(@Nullable Template input) {
- return null;
- }
-
- }
-
- public NodePoolComputeServiceContextModule() {
- super(NodePoolComputeServiceAdapter.class);
- }
-
- @Override
- protected void configure() {
- super.configure();
- bind(NodeMetadataStore.class).to(JsonNodeMetadataStore.class);
- bind(ApiMetadata.class).to(NodePoolApiMetadata.class);
- bind(ComputeServiceContext.class).to(NodePoolComputeServiceContext.class);
- install(new LocationsFromComputeServiceAdapterModule<NodeMetadata, Hardware, Image, Location>() {
- });
-
- }
-
- @Override
- protected void bindCredentialsOverriderFunction() {
- bind(new TypeLiteral<Function<Template, LoginCredentials>>() {
- }).to(NullCredentialsOverrider.class);
- }
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/065071ca/nodepool/src/main/java/org/jclouds/nodepool/config/NodePoolProperties.java
----------------------------------------------------------------------
diff --git a/nodepool/src/main/java/org/jclouds/nodepool/config/NodePoolProperties.java b/nodepool/src/main/java/org/jclouds/nodepool/config/NodePoolProperties.java
deleted file mode 100644
index fb3e7d4..0000000
--- a/nodepool/src/main/java/org/jclouds/nodepool/config/NodePoolProperties.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.nodepool.config;
-
-/**
- * Constants for the {@link org.jclouds.nodepool.NodePoolComputeService}.
- */
-public interface NodePoolProperties {
-
- /**
- * Property to set the name of the backend group used for pooled nodes.
- */
- public static final String BACKEND_GROUP = "jclouds.nodepool.backend-group";
-
- /**
- * Property to set the {@link AdminAccess} that will be installed in the nodes pre-frontend
- * allocation.
- *
- * @see AdminAccessBuilderSpec for details on the format
- */
- public static final String POOL_ADMIN_ACCESS = "jclouds.nodepool.admin-access";
-
- /**
- * Property to set the provider or api of backend the pool
- */
- public static final String BACKEND_PROVIDER = "jclouds.nodepool.backend-provider";
-
- /**
- * Property to set the modules the backend will use for ssh and logging, comma delimited
- */
- public static final String BACKEND_MODULES = "jclouds.nodepool.backend-modules";
-
- /**
- * Property to set the basedir where metadata will be stored
- */
- public static final String BASEDIR = "jclouds.nodepool.basedir";
-
- /**
- * Property to set the container where metadata will be stored
- */
- public static final String METADATA_CONTAINER = "jclouds.nodepool.metadata-container";
-
- /**
- * Property to set the maximum size of the pool. Set this to {@literal -1} to have an unlimited
- * pool size.
- */
- public static final String MAX_SIZE = "jclouds.nodepool.max-size";
-
- /**
- * Property to set the minimum (initial) size of the pool.
- */
- public static final String MIN_SIZE = "jclouds.nodepool.min-size";
-
- /**
- * Property to set the pool behaviour to remove destroyed nodes rather than returning them to the
- * pool for re-use.
- */
- public static final String REMOVE_DESTROYED = "jclouds.nodepool.remove-destroyed";
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/065071ca/nodepool/src/main/java/org/jclouds/nodepool/internal/BaseNodePoolComputeServiceAdapter.java
----------------------------------------------------------------------
diff --git a/nodepool/src/main/java/org/jclouds/nodepool/internal/BaseNodePoolComputeServiceAdapter.java b/nodepool/src/main/java/org/jclouds/nodepool/internal/BaseNodePoolComputeServiceAdapter.java
deleted file mode 100644
index 336d90e..0000000
--- a/nodepool/src/main/java/org/jclouds/nodepool/internal/BaseNodePoolComputeServiceAdapter.java
+++ /dev/null
@@ -1,164 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.nodepool.internal;
-
-import static org.jclouds.nodepool.config.NodePoolProperties.BACKEND_GROUP;
-import static org.jclouds.nodepool.config.NodePoolProperties.POOL_ADMIN_ACCESS;
-
-import java.util.NoSuchElementException;
-import java.util.Set;
-
-import javax.inject.Named;
-
-import org.jclouds.compute.ComputeService;
-import org.jclouds.compute.ComputeServiceContext;
-import org.jclouds.compute.RunNodesException;
-import org.jclouds.compute.domain.Hardware;
-import org.jclouds.compute.domain.Image;
-import org.jclouds.compute.domain.NodeMetadata;
-import org.jclouds.compute.domain.Template;
-import org.jclouds.compute.predicates.NodePredicates;
-import org.jclouds.domain.Location;
-import org.jclouds.nodepool.Backend;
-import org.jclouds.nodepool.NodePoolComputeServiceAdapter;
-import org.jclouds.scriptbuilder.statements.login.AdminAccess;
-import org.jclouds.scriptbuilder.statements.login.AdminAccessBuilderSpec;
-
-import com.google.common.base.Supplier;
-import com.google.common.base.Throwables;
-import com.google.common.collect.ImmutableSet;
-import com.google.common.collect.Iterables;
-
-/**
- * A base class for {@link NodePoolComputeService}, takes care of keeping (not changing assignments)
- * and of everything that does not change the pool.
- */
-public abstract class BaseNodePoolComputeServiceAdapter implements NodePoolComputeServiceAdapter {
-
- protected final Supplier<ComputeService> backendComputeService;
- protected final Supplier<Template> backendTemplate;
- protected final String poolGroupName;
- protected final NodeMetadataStore metadataStore;
- protected final AdminAccess.Builder initialCredentialsBuilder;
-
- public BaseNodePoolComputeServiceAdapter(@Backend Supplier<ComputeService> backendComputeService,
-
- @Backend Supplier<Template> backendTemplate, @Named(BACKEND_GROUP) String poolGroupName,
-
- NodeMetadataStore metadataStore, @Named(POOL_ADMIN_ACCESS) String poolNodeAdminAccess,
- AdminAccess.Configuration configuration) {
- this.backendComputeService = backendComputeService;
- this.poolGroupName = poolGroupName;
- this.backendTemplate = backendTemplate;
- this.metadataStore = metadataStore;
- this.initialCredentialsBuilder = AdminAccessBuilderSpec.parse(poolNodeAdminAccess).copyTo(
- new AdminAccess.Builder());
- }
-
- @Override
- public NodeMetadata getNode(String id) {
- NodeMetadata backendMetadata = backendComputeService.get().getNodeMetadata(id);
- if (backendMetadata == null) {
- return null;
- }
- return metadataStore.load(backendMetadata);
- }
-
- @Override
- public Iterable<NodeMetadata> listNodes() {
- return metadataStore.loadAll(getBackendNodes());
- }
-
- @Override
- public Iterable<Hardware> listHardwareProfiles() {
- return ImmutableSet.of(backendTemplate.get().getHardware());
- }
-
- @Override
- public Iterable<Image> listImages() {
- return ImmutableSet.of(backendTemplate.get().getImage());
-
- }
-
- @Override
- public Iterable<Location> listLocations() {
- return ImmutableSet.of(backendTemplate.get().getLocation());
- }
-
- @Override
- public Image getImage(String id) {
- Image backendImage = backendTemplate.get().getImage();
- return backendImage.getId().equals(id) ? backendImage : null;
- }
-
- @Override
- public void suspendNode(String id) {
- if (getNode(id) != null) {
- backendComputeService.get().suspendNode(id);
- }
- throw new NoSuchElementException(id);
- }
-
- @Override
- public void resumeNode(String id) {
- if (getNode(id) != null) {
- backendComputeService.get().resumeNode(id);
- }
- throw new NoSuchElementException(id);
- }
-
- @Override
- public void rebootNode(String id) {
- if (getNode(id) != null) {
- backendComputeService.get().rebootNode(id);
- }
- throw new NoSuchElementException(id);
- }
-
- protected Set<NodeMetadata> getBackendNodes() {
- return ImmutableSet.copyOf(Iterables.filter(
- backendComputeService.get().listNodesDetailsMatching(NodePredicates.all()),
- NodePredicates.inGroup(poolGroupName)));
- }
-
- @Override
- public void destroyPool() {
- metadataStore.deleteAllMappings();
- backendComputeService.get().destroyNodesMatching(NodePredicates.inGroup(poolGroupName));
- }
-
- @Override
- public ComputeServiceContext getBackendComputeServiceContext() {
- return backendComputeService.get().getContext();
- }
-
- protected Set<? extends NodeMetadata> addToPool(int number) {
- try {
- Template template = backendTemplate.get().clone();
- template.getOptions().runScript(initialCredentialsBuilder.build());
- return backendComputeService.get().createNodesInGroup(poolGroupName, number, template);
- } catch (RunNodesException e) {
- throw Throwables.propagate(e);
- }
- }
-
- @Override
- public String getPoolGroupName() {
- return this.poolGroupName;
- }
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/065071ca/nodepool/src/main/java/org/jclouds/nodepool/internal/EagerNodePoolComputeServiceAdapter.java
----------------------------------------------------------------------
diff --git a/nodepool/src/main/java/org/jclouds/nodepool/internal/EagerNodePoolComputeServiceAdapter.java b/nodepool/src/main/java/org/jclouds/nodepool/internal/EagerNodePoolComputeServiceAdapter.java
deleted file mode 100644
index 90780ca..0000000
--- a/nodepool/src/main/java/org/jclouds/nodepool/internal/EagerNodePoolComputeServiceAdapter.java
+++ /dev/null
@@ -1,183 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.nodepool.internal;
-
-import static com.google.common.base.Preconditions.checkNotNull;
-import static com.google.common.base.Preconditions.checkState;
-import static org.jclouds.nodepool.config.NodePoolProperties.BACKEND_GROUP;
-import static org.jclouds.nodepool.config.NodePoolProperties.MAX_SIZE;
-import static org.jclouds.nodepool.config.NodePoolProperties.MIN_SIZE;
-import static org.jclouds.nodepool.config.NodePoolProperties.POOL_ADMIN_ACCESS;
-import static org.jclouds.nodepool.config.NodePoolProperties.REMOVE_DESTROYED;
-
-import java.util.Set;
-
-import javax.annotation.PostConstruct;
-import javax.annotation.Resource;
-import javax.inject.Inject;
-import javax.inject.Named;
-import javax.inject.Singleton;
-
-import org.jclouds.compute.ComputeService;
-import org.jclouds.compute.domain.NodeMetadata;
-import org.jclouds.compute.domain.Template;
-import org.jclouds.compute.options.TemplateOptions;
-import org.jclouds.compute.reference.ComputeServiceConstants;
-import org.jclouds.domain.LoginCredentials;
-import org.jclouds.logging.Logger;
-import org.jclouds.nodepool.Backend;
-import org.jclouds.scriptbuilder.statements.login.AdminAccess;
-
-import com.google.common.base.Supplier;
-import com.google.common.collect.Iterables;
-import com.google.common.collect.Sets;
-import com.google.common.collect.Sets.SetView;
-
-/**
- * An eager {@link NodePoolComputeService}. Eagerly builds and maintains a pool of nodes. It's only
- * "started" after min nodes are allocated and available.
- */
-@Singleton
-public class EagerNodePoolComputeServiceAdapter extends BaseNodePoolComputeServiceAdapter {
-
- @Resource
- @Named(ComputeServiceConstants.COMPUTE_LOGGER)
- protected Logger logger = Logger.NULL;
-
- private final int maxSize;
- private final int minSize;
- private final boolean removeDestroyed;
-
- @Inject
- public EagerNodePoolComputeServiceAdapter(@Backend Supplier<ComputeService> backendComputeService,
- @Backend Supplier<Template> backendTemplate, @Named(BACKEND_GROUP) String poolGroupPrefix,
- @Named(MAX_SIZE) int maxSize, @Named(MIN_SIZE) int minSize,
- @Named(REMOVE_DESTROYED) boolean removeDestroyed, NodeMetadataStore storage,
- @Named(POOL_ADMIN_ACCESS) String poolNodeAdminAccess, AdminAccess.Configuration configuration) {
- super(backendComputeService, backendTemplate, poolGroupPrefix, storage, poolNodeAdminAccess, configuration);
- this.maxSize = maxSize;
- this.minSize = minSize;
- this.removeDestroyed = removeDestroyed;
- }
-
- @PostConstruct
- public void startEagerPool() {
- Set<? extends NodeMetadata> backendNodes = getBackendNodes();
- int currentNodes = backendNodes.size();
- int newNodes = backendNodes.size() < minSize ? minSize - backendNodes.size() : 0;
- logger.info(
- ">> initializing nodepool [backend provider: %s]. [existing nodes: %s, min nodes: %s, allocating: %s ]",
- backendComputeService.get().getClass().getSimpleName(), currentNodes, minSize, newNodes);
- if (backendNodes.size() < minSize) {
- addToPool(minSize - backendNodes.size());
- }
- logger.info("<< pool initialized.");
- }
-
- @Override
- public NodeWithInitialCredentials createNodeWithGroupEncodedIntoName(String group, String name, Template template) {
- int count = 1;
- synchronized (this) {
- TemplateOptions options = template.getOptions().clone();
-
- // if no user is provided we set the pool's user
- if (options.getLoginUser() == null) {
- options.overrideLoginCredentials(LoginCredentials.fromCredentials(checkNotNull(initialCredentialsBuilder
- .build().getAdminCredentials())));
- }
-
- logger.info(">> assigning pool node to frontend group %s", group);
- Set<NodeMetadata> backendNodes = getBackendNodes();
- checkState(!backendNodes.isEmpty());
- Set<NodeMetadata> frontendNodes = metadataStore.loadAll(backendNodes);
- checkState(frontendNodes.size() + count <= maxSize,
- "cannot add more nodes to pool [requested: %s, current: %s, max: %s]", count, frontendNodes.size(),
- maxSize);
-
- SetView<NodeMetadata> availableNodes = Sets.difference(backendNodes, frontendNodes);
-
- if (availableNodes.size() < 1) {
- if (backendNodes.size() < maxSize && backendNodes.size() + count <= maxSize) {
- logger.info(
- ">> all pool nodes are assigned, requiring additional nodes [requested: %s, current: %s, next: %s, max: %s]",
- count, frontendNodes.size(), frontendNodes.size() + 1, maxSize);
- addToPool(count);
- // update backend and available sets, no need to update frontend
- backendNodes = getBackendNodes();
- availableNodes = Sets.difference(backendNodes, frontendNodes);
- logger.info("<< additional nodes added to the pool and ready");
- } else {
- logger.error("maximum pool size reached (%s)", maxSize);
- throw new IllegalStateException(String.format("maximum pool size reached (%s)", maxSize));
- }
- }
- NodeMetadata userNode = Iterables.get(availableNodes, 0);
- NodeMetadata node = metadataStore.store(userNode, options, group);
- logger.info("pool node assigned");
- return new NodeWithInitialCredentials(node);
- }
- }
-
- @Override
- public synchronized void destroyNode(String id) {
- checkState(getNode(id) != null);
- logger.info(">> destroying node %s", id);
- metadataStore.deleteMapping(id);
- if (removeDestroyed) {
- backendComputeService.get().destroyNode(id);
- if (currentSize() < minSize) {
- logger.info(">> policy is remove destroyed node and pool "
- + "would fall below minsize, replacing node with id %s", id);
- Set<? extends NodeMetadata> replacement = addToPool(1);
- logger.info("<< node %s replaced with %s", id, Iterables.getOnlyElement(replacement));
- }
- }
- // TODO we should allow the user to hook a way to "clean" the node
- else {
-
- }
- logger.info("<< node destroyed %s", id);
- }
-
- @Override
- public int currentSize() {
- return getBackendNodes().size();
- }
-
- @Override
- public int idleNodes() {
- Set<NodeMetadata> backendNodes = getBackendNodes();
- Set<NodeMetadata> frontendNodes = metadataStore.loadAll(backendNodes);
- return backendNodes.size() - frontendNodes.size();
- }
-
- @Override
- public int maxNodes() {
- return maxSize;
- }
-
- @Override
- public int minNodes() {
- return minSize;
- }
-
- @Override
- public int usedNodes() {
- return metadataStore.loadAll(getBackendNodes()).size();
- }
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/065071ca/nodepool/src/main/java/org/jclouds/nodepool/internal/JsonNodeMetadataStore.java
----------------------------------------------------------------------
diff --git a/nodepool/src/main/java/org/jclouds/nodepool/internal/JsonNodeMetadataStore.java b/nodepool/src/main/java/org/jclouds/nodepool/internal/JsonNodeMetadataStore.java
deleted file mode 100644
index 9150fe1..0000000
--- a/nodepool/src/main/java/org/jclouds/nodepool/internal/JsonNodeMetadataStore.java
+++ /dev/null
@@ -1,144 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.nodepool.internal;
-
-import static com.google.common.base.Preconditions.checkNotNull;
-import static com.google.common.base.Preconditions.checkState;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.util.Map;
-import java.util.Set;
-
-import javax.inject.Named;
-
-import org.jclouds.compute.domain.NodeMetadata;
-import org.jclouds.compute.domain.NodeMetadataBuilder;
-import org.jclouds.compute.options.TemplateOptions;
-import org.jclouds.domain.LoginCredentials;
-import org.jclouds.json.Json;
-import org.jclouds.util.Strings2;
-
-import com.google.common.base.Supplier;
-import com.google.common.base.Throwables;
-import com.google.common.collect.ImmutableSet;
-import com.google.common.collect.Sets;
-import com.google.inject.Inject;
-import com.google.inject.Singleton;
-
-/**
- * An implementation of {@link NodeMetadataStore} that stores all that is needed by building a json
- * string.
- */
-@Singleton
-public class JsonNodeMetadataStore implements NodeMetadataStore {
-
- private Supplier<Map<String, InputStream>> storage;
- private final Json json;
-
- private static class JsonUserNodeMetadata {
- private String group;
- private Set<String> tags;
- private Map<String, String> userMetadata;
- private String user;
- private String password;
- private String privateKey;
- private boolean authenticateSudo;
- }
-
- @Inject
- public JsonNodeMetadataStore(@Named("METADATA") Supplier<Map<String, InputStream>> storage, Json json) {
- this.storage = storage;
- this.json = json;
- }
-
- @Override
- public NodeMetadata store(NodeMetadata backendNodeMetadata, TemplateOptions userOptions, String userGroup) {
- checkNotNull(backendNodeMetadata);
- checkNotNull(userGroup);
- checkNotNull(userOptions);
- checkNotNull(userOptions.getLoginUser());
- checkState(userOptions.getLoginPassword() != null || userOptions.getLoginPrivateKey() != null);
- JsonUserNodeMetadata jsonMetadata = new JsonUserNodeMetadata();
- jsonMetadata.user = userOptions.getLoginUser();
- jsonMetadata.password = userOptions.getLoginPassword();
- jsonMetadata.privateKey = userOptions.getLoginPrivateKey();
- jsonMetadata.authenticateSudo = userOptions.shouldAuthenticateSudo() != null ? userOptions
- .shouldAuthenticateSudo().booleanValue() : false;
- jsonMetadata.userMetadata = userOptions.getUserMetadata();
- jsonMetadata.tags = userOptions.getTags();
- jsonMetadata.group = userGroup;
- storage.get().put(backendNodeMetadata.getId(), Strings2.toInputStream(json.toJson(jsonMetadata)));
- return buildFromJsonAndBackendMetadata(backendNodeMetadata, jsonMetadata);
- }
-
- @Override
- public NodeMetadata load(NodeMetadata backendNodeMetadata) {
- try {
- InputStream storedMetadata = storage.get().get(checkNotNull(backendNodeMetadata).getId());
- if (storedMetadata == null) {
- return null;
- }
- String jsonMetadataAsString = Strings2.toStringAndClose(storedMetadata);
- JsonUserNodeMetadata jsonMetadata = json.fromJson(jsonMetadataAsString, JsonUserNodeMetadata.class);
- return buildFromJsonAndBackendMetadata(backendNodeMetadata, jsonMetadata);
- } catch (IOException e) {
- throw Throwables.propagate(e);
- }
- }
-
- @Override
- public Set<NodeMetadata> loadAll(Set<NodeMetadata> backendNodes) {
- if (backendNodes == null || backendNodes.isEmpty()) {
- return ImmutableSet.of();
- }
- final Set<NodeMetadata> loadedSet = Sets.newLinkedHashSet();
- for (NodeMetadata input : backendNodes) {
- NodeMetadata loaded = load(input);
- if (loaded != null) {
- loadedSet.add(loaded);
- }
-
- }
- return loadedSet;
- }
-
- private NodeMetadata buildFromJsonAndBackendMetadata(NodeMetadata backendNodeMetadata,
- JsonUserNodeMetadata jsonMetadata) {
- return NodeMetadataBuilder
- .fromNodeMetadata(backendNodeMetadata)
- .tags(jsonMetadata.tags)
- .group(jsonMetadata.group)
- .userMetadata(jsonMetadata.userMetadata)
- .credentials(LoginCredentials.builder()
- .user(jsonMetadata.user)
- .privateKey(jsonMetadata.privateKey)
- .password(jsonMetadata.password)
- .authenticateSudo(jsonMetadata.authenticateSudo).build()).build();
- }
-
- @Override
- public void deleteAllMappings() {
- storage.get().clear();
- }
-
- @Override
- public void deleteMapping(String backendNodeId) {
- storage.get().remove(backendNodeId);
- }
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/065071ca/nodepool/src/main/java/org/jclouds/nodepool/internal/NodeMetadataStore.java
----------------------------------------------------------------------
diff --git a/nodepool/src/main/java/org/jclouds/nodepool/internal/NodeMetadataStore.java b/nodepool/src/main/java/org/jclouds/nodepool/internal/NodeMetadataStore.java
deleted file mode 100644
index 04d3766..0000000
--- a/nodepool/src/main/java/org/jclouds/nodepool/internal/NodeMetadataStore.java
+++ /dev/null
@@ -1,75 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.nodepool.internal;
-
-import java.util.Set;
-
-import org.jclouds.compute.domain.NodeMetadata;
-import org.jclouds.compute.options.TemplateOptions;
-
-/**
- * Stores/Loads frontend {@link NodeMetadata} mappings.
- */
-public interface NodeMetadataStore {
-
- /**
- * Associates the provided user options and group with the provided backend {@link NodeMetadata},
- * then build a frontend version of node metadata that has some fields from the backend node such
- * as id, name or location, and some fields from the provided userOptions, such as userMetadata
- * or tags.
- *
- * @param backendNode
- * the backend node's {@link NodeMetadata}
- * @param userOptions
- * the user provided options
- * @param userGroup
- * the user selected group
- * @return a version of NodeMetadata that includes information from the backend node and form the
- * user provided options and group.
- */
- public NodeMetadata store(NodeMetadata backendNode, TemplateOptions userOptions, String userGroup);
-
- /**
- * Removes the mapping from storage.
- *
- * @param backendNodeId
- */
- public void deleteMapping(String backendNodeId);
-
- /**
- * Clears all mappings.
- */
- public void deleteAllMappings();
-
- /**
- * Loads the previously stored user {@link NodeMetadata} corresponding to the provided backend
- * {@link NodeMetadata}.
- *
- * @param backendNode
- *
- * @return the frontend {@link NodeMetadata} or null of this backend node has no mapping
- */
- public NodeMetadata load(NodeMetadata backendNode);
-
- /**
- * Loads frontend {@link NodeMetadata} for all provided backend nodes.
- *
- * @param backendNodes
- * @return
- */
- public Set<NodeMetadata> loadAll(Set<NodeMetadata> backendNodes);
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/065071ca/nodepool/src/main/java/org/jclouds/nodepool/internal/NodeMetadataStoreCache.java
----------------------------------------------------------------------
diff --git a/nodepool/src/main/java/org/jclouds/nodepool/internal/NodeMetadataStoreCache.java b/nodepool/src/main/java/org/jclouds/nodepool/internal/NodeMetadataStoreCache.java
deleted file mode 100644
index 34e3fc9..0000000
--- a/nodepool/src/main/java/org/jclouds/nodepool/internal/NodeMetadataStoreCache.java
+++ /dev/null
@@ -1,86 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.nodepool.internal;
-
-import java.util.Map;
-import java.util.Set;
-
-import javax.inject.Inject;
-import javax.inject.Singleton;
-
-import org.jclouds.compute.domain.NodeMetadata;
-import org.jclouds.compute.options.TemplateOptions;
-
-import com.google.common.base.Function;
-import com.google.common.collect.ImmutableSet;
-import com.google.common.collect.Iterables;
-import com.google.common.collect.Maps;
-
-@Singleton
-public class NodeMetadataStoreCache implements NodeMetadataStore {
-
- private Map<String, NodeMetadata> frontendMetadataCache = Maps.newHashMap();
- private NodeMetadataStore backend;
-
- @Inject
- public NodeMetadataStoreCache(NodeMetadataStore backend) {
- this.backend = backend;
- }
-
- @Override
- public synchronized NodeMetadata store(NodeMetadata backendNode, TemplateOptions userOptions, String userGroup) {
- NodeMetadata frontEndNode = backend.store(backendNode, userOptions, userGroup);
- frontendMetadataCache.put(backendNode.getId(), frontEndNode);
- return frontEndNode;
- }
-
- @Override
- public synchronized void deleteMapping(String backendNodeId) {
- frontendMetadataCache.remove(backendNodeId);
- backend.deleteMapping(backendNodeId);
-
- }
-
- @Override
- public synchronized void deleteAllMappings() {
- frontendMetadataCache.clear();
- backend.deleteAllMappings();
- }
-
- @Override
- public synchronized NodeMetadata load(NodeMetadata backendNode) {
- NodeMetadata frontendNode = frontendMetadataCache.get(backendNode.getId());
- if (frontendNode == null) {
- frontendNode = backend.load(backendNode);
- if (frontendNode != null) {
- frontendMetadataCache.put(backendNode.getId(), frontendNode);
- }
- }
- return frontendNode;
- }
-
- @Override
- public synchronized Set<NodeMetadata> loadAll(Set<NodeMetadata> backendNodes) {
- return ImmutableSet.copyOf(Iterables.transform(backendNodes, new Function<NodeMetadata, NodeMetadata>() {
- @Override
- public NodeMetadata apply(NodeMetadata input) {
- return load(input);
- }
- }));
- }
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/065071ca/nodepool/src/main/resources/META-INF/services/org.jclouds.apis.ApiMetadata
----------------------------------------------------------------------
diff --git a/nodepool/src/main/resources/META-INF/services/org.jclouds.apis.ApiMetadata b/nodepool/src/main/resources/META-INF/services/org.jclouds.apis.ApiMetadata
deleted file mode 100644
index 64dfe90..0000000
--- a/nodepool/src/main/resources/META-INF/services/org.jclouds.apis.ApiMetadata
+++ /dev/null
@@ -1 +0,0 @@
-org.jclouds.nodepool.NodePoolApiMetadata
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/065071ca/nodepool/src/test/java/org/jclouds/nodepool/BYONBackendLiveTest.java
----------------------------------------------------------------------
diff --git a/nodepool/src/test/java/org/jclouds/nodepool/BYONBackendLiveTest.java b/nodepool/src/test/java/org/jclouds/nodepool/BYONBackendLiveTest.java
deleted file mode 100644
index 674917e..0000000
--- a/nodepool/src/test/java/org/jclouds/nodepool/BYONBackendLiveTest.java
+++ /dev/null
@@ -1,108 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.nodepool;
-
-import static org.jclouds.compute.options.RunScriptOptions.Builder.wrapInInitScript;
-import static org.jclouds.nodepool.config.NodePoolProperties.BACKEND_PROVIDER;
-import static org.jclouds.nodepool.config.NodePoolProperties.BASEDIR;
-import static org.jclouds.nodepool.config.NodePoolProperties.MAX_SIZE;
-import static org.jclouds.nodepool.config.NodePoolProperties.MIN_SIZE;
-import static org.jclouds.nodepool.config.NodePoolProperties.REMOVE_DESTROYED;
-import static org.jclouds.scriptbuilder.domain.Statements.exec;
-
-import java.io.File;
-import java.util.Properties;
-import java.util.Set;
-
-import org.jclouds.compute.domain.ExecResponse;
-import org.jclouds.compute.domain.NodeMetadata;
-import org.jclouds.compute.internal.BaseComputeServiceContextLiveTest;
-import org.jclouds.scriptbuilder.domain.OsFamily;
-import org.jclouds.sshj.config.SshjSshClientModule;
-import org.testng.annotations.Test;
-
-import com.google.common.collect.Iterables;
-import com.google.inject.Module;
-
-@Test(groups = "live", testName = "BYONBackendLiveTest")
-public class BYONBackendLiveTest extends BaseComputeServiceContextLiveTest {
-
- final String basedir = "target/" + this.getClass().getSimpleName();
-
- public BYONBackendLiveTest() {
- provider = "nodepool";
- }
-
- @Override
- protected Properties setupProperties() {
-
- Properties contextProperties = super.setupProperties();
-
- contextProperties.setProperty(BACKEND_PROVIDER, "byon");
- contextProperties.setProperty(BASEDIR, basedir);
- contextProperties.setProperty(MAX_SIZE, 1 + "");
- contextProperties.setProperty(MIN_SIZE, 1 + "");
- contextProperties.setProperty(REMOVE_DESTROYED, false + "");
- contextProperties.setProperty("nodepool.identity", System.getProperty("user.name"));
-
- StringBuilder nodes = new StringBuilder();
- nodes.append("nodes:\n");
- nodes.append(" - id: mymachine\n");
- nodes.append(" location_id: localhost\n");
- nodes.append(" name: my local machine\n");
- nodes.append(" hostname: localhost\n");
- nodes.append(" os_arch: ").append(System.getProperty("os.arch")).append("\n");
- nodes.append(" os_family: ").append(OsFamily.UNIX).append("\n");
- nodes.append(" os_description: ").append(System.getProperty("os.name")).append("\n");
- nodes.append(" os_version: ").append(System.getProperty("os.version")).append("\n");
- nodes.append(" group: ").append("nodepool").append("\n");
- nodes.append(" tags:\n");
- nodes.append(" - local\n");
- nodes.append(" username: ").append(System.getProperty("user.name")).append("\n");
- nodes.append(" credential_url: file://").append(System.getProperty("user.home")).append("/.ssh/id_rsa")
- .append("\n");
-
- contextProperties.setProperty("byon.nodes", nodes.toString());
- contextProperties.setProperty("byon.template", "locationId=localhost");
- return contextProperties;
- }
-
- @Override
- protected Module getSshModule() {
- return new SshjSshClientModule();
- }
-
- @Test(groups = "live")
- public void testCanRunCommandAsCurrentUser() throws Exception {
- Set<? extends NodeMetadata> nodes = view.getComputeService().createNodesInGroup("goo", 1);
- NodeMetadata node = Iterables.get(nodes, 0);
-
- try {
- ExecResponse response = view.getComputeService().runScriptOnNode(node.getId(), exec("id"),
- wrapInInitScript(false).runAsRoot(false));
- assert response.getOutput().trim().contains(System.getProperty("user.name")) : node + ": " + response;
- } finally {
- view.getComputeService().destroyNode(node.getId());
- }
- }
-
- @Override
- protected void tearDownContext() {
- super.tearDownContext();
- new File(basedir).delete();
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/065071ca/nodepool/src/test/java/org/jclouds/nodepool/NodeMetadataStoreTest.java
----------------------------------------------------------------------
diff --git a/nodepool/src/test/java/org/jclouds/nodepool/NodeMetadataStoreTest.java b/nodepool/src/test/java/org/jclouds/nodepool/NodeMetadataStoreTest.java
deleted file mode 100644
index a1b5238..0000000
--- a/nodepool/src/test/java/org/jclouds/nodepool/NodeMetadataStoreTest.java
+++ /dev/null
@@ -1,138 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.nodepool;
-
-import static org.jclouds.nodepool.config.NodePoolProperties.POOL_ADMIN_ACCESS;
-import static org.testng.Assert.assertEquals;
-import static org.testng.Assert.assertNull;
-import static org.testng.Assert.assertSame;
-import static org.testng.Assert.assertTrue;
-
-import java.io.File;
-import java.io.FileNotFoundException;
-import java.io.IOException;
-import java.util.Properties;
-import java.util.Set;
-
-import javax.inject.Inject;
-
-import org.jclouds.Context;
-import org.jclouds.ContextBuilder;
-import org.jclouds.compute.domain.NodeMetadata;
-import org.jclouds.compute.domain.NodeMetadata.Status;
-import org.jclouds.compute.domain.NodeMetadataBuilder;
-import org.jclouds.compute.options.TemplateOptions;
-import org.jclouds.logging.slf4j.config.SLF4JLoggingModule;
-import org.jclouds.nodepool.config.NodePoolProperties;
-import org.jclouds.nodepool.internal.NodeMetadataStore;
-import org.testng.annotations.BeforeMethod;
-import org.testng.annotations.Test;
-
-import com.google.common.base.Charsets;
-import com.google.common.collect.ImmutableList;
-import com.google.common.collect.ImmutableSet;
-import com.google.common.io.Files;
-import com.google.inject.Injector;
-
-@Test(groups = "unit", testName = "NodeMetadataStoreTest")
-public class NodeMetadataStoreTest {
-
- @Inject
- NodeMetadataStore store;
-
- private String baseDir;
- private NodeMetadata nodeMeta1;
- private NodeMetadata nodeMeta2;
- private TemplateOptions templateOptions;
-
- @BeforeMethod
- public void setUp() {
- Injector injector = createInjector();
- injector.injectMembers(this);
- this.nodeMeta1 = new NodeMetadataBuilder().id("testmeta1").status(Status.ERROR).build();
- this.nodeMeta2 = new NodeMetadataBuilder().id("testmeta2").status(Status.ERROR).build();
- this.templateOptions = new TemplateOptions().overrideLoginUser("testuser").overrideLoginPassword("testpass")
- .overrideAuthenticateSudo(true).userMetadata("testmetakey", "testmetavalue")
- .overrideLoginPrivateKey("pk").userMetadata("testmetakey2", "testmetavalue2")
- .tags(ImmutableList.of("tag1", "tag2"));
- }
-
- protected Injector createInjector() {
- this.baseDir = "target/nodemetadatastoretest";
- Properties overrides = new Properties();
- overrides.setProperty(NodePoolProperties.BACKEND_PROVIDER, "stub");
- overrides.setProperty(NodePoolProperties.MIN_SIZE, "0");
- overrides.setProperty(NodePoolProperties.BASEDIR, baseDir);
- overrides.setProperty(POOL_ADMIN_ACCESS, "adminUsername=pooluser,adminPassword=poolpass");
- // note no ssh module since we are stub and not trying ssh, yet
- overrides.setProperty(NodePoolProperties.BACKEND_MODULES, SLF4JLoggingModule.class.getName());
- Context nodePoolCtx = ContextBuilder.newBuilder("nodepool").credentials("foo", "bar").overrides(overrides)
- .build();
- return nodePoolCtx.utils().getInjector();
- }
-
- @Test(groups = "unit")
- public void testStore() throws FileNotFoundException, IOException {
- store.store(nodeMeta1, templateOptions, "testgroup");
- store.store(nodeMeta2, templateOptions, "testgroup");
- String readJSon = Files.toString(new File(baseDir + File.separator + "nodes"
- + File.separator + nodeMeta1.getId()), Charsets.UTF_8);
- assertEquals(readJSon, "{\"group\":\"testgroup\",\"tags\":[\"tag1\",\"tag2\"],"
- + "\"userMetadata\":{\"testmetakey\":\"testmetavalue\",\"testmetakey2\":\"testmetavalue2\"},"
- + "\"user\":\"testuser\",\"password\":\"testpass\",\"privateKey\":\"pk\",\"authenticateSudo\":true}");
- }
-
- @Test(groups = "unit", dependsOnMethods = "testStore")
- public void testLoad() {
- NodeMetadata loaded = store.load(nodeMeta1);
- assertEquals(loaded.getId(), nodeMeta1.getId());
- assertTrue(loaded.getTags().contains("tag1"));
- assertTrue(loaded.getTags().contains("tag2"));
- assertTrue(loaded.getUserMetadata().containsKey("testmetakey")
- && loaded.getUserMetadata().get("testmetakey").equals("testmetavalue"));
- assertTrue(loaded.getUserMetadata().containsKey("testmetakey2")
- && loaded.getUserMetadata().get("testmetakey2").equals("testmetavalue2"));
- assertEquals(loaded.getCredentials().getUser(), "testuser");
- assertEquals(loaded.getCredentials().getPassword(), "testpass");
- assertEquals(loaded.getCredentials().getPrivateKey(), "pk");
- assertEquals(loaded.getCredentials().shouldAuthenticateSudo(), true);
- assertEquals(loaded.getGroup(), "testgroup");
- }
-
- @Test(groups = "unit", dependsOnMethods = "testLoad")
- public void testLoadAll() {
- Set<NodeMetadata> loaded = store.loadAll(ImmutableSet.of(nodeMeta1, nodeMeta2));
- assertSame(loaded.size(), 2);
- }
-
- @Test(groups = "unit", dependsOnMethods = "testLoadAll")
- public void testDeleteMapping() {
- store.deleteMapping(nodeMeta1.getId());
- // make sure the other node is still there and this one isn't
- assertNull(store.load(nodeMeta1));
- assertEquals(nodeMeta2.getId(), store.load(nodeMeta2).getId());
- }
-
- @Test(groups = "unit", dependsOnMethods = "testDeleteMapping")
- public void testDeleteAllMappings() {
- store.deleteAllMappings();
- assertNull(store.load(nodeMeta1));
- assertNull(store.load(nodeMeta2));
- assertSame(new File(baseDir + File.separator + "nodes").listFiles().length, 0);
- }
-
-}
[6/9] Remove nodepool, which hasn't been published in over a year.
Posted by ad...@apache.org.
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/065071ca/nodepool/src/test/java/org/jclouds/nodepool/NodePoolComputeServiceContextTest.java
----------------------------------------------------------------------
diff --git a/nodepool/src/test/java/org/jclouds/nodepool/NodePoolComputeServiceContextTest.java b/nodepool/src/test/java/org/jclouds/nodepool/NodePoolComputeServiceContextTest.java
deleted file mode 100644
index 4a02b3b..0000000
--- a/nodepool/src/test/java/org/jclouds/nodepool/NodePoolComputeServiceContextTest.java
+++ /dev/null
@@ -1,63 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.nodepool;
-
-import static org.jclouds.nodepool.config.NodePoolProperties.POOL_ADMIN_ACCESS;
-import static org.testng.Assert.assertEquals;
-
-import java.io.File;
-import java.util.Properties;
-
-import org.jclouds.ContextBuilder;
-import org.jclouds.compute.ComputeService;
-import org.jclouds.logging.slf4j.config.SLF4JLoggingModule;
-import org.jclouds.nodepool.config.NodePoolProperties;
-import org.testng.annotations.Test;
-
-import com.google.common.base.Supplier;
-import com.google.inject.Key;
-import com.google.inject.TypeLiteral;
-
-@Test(groups = "unit", testName = "NodePoolComputeServiceContextTest")
-public class NodePoolComputeServiceContextTest {
-
- public void testBinds() {
- final String basedir = "target/" + this.getClass().getSimpleName();
- new File(basedir).delete();
-
- Properties overrides = new Properties();
- overrides.setProperty(NodePoolProperties.BACKEND_PROVIDER, "stub");
- overrides.setProperty(NodePoolProperties.BASEDIR, basedir);
- // note no ssh module since we are stub and not trying ssh, yet
- overrides.setProperty(NodePoolProperties.BACKEND_MODULES, SLF4JLoggingModule.class.getName());
- overrides.setProperty(POOL_ADMIN_ACCESS, "adminUsername=pooluser,adminPassword=poolpass");
-
- ComputeService stub = ContextBuilder.newBuilder("nodepool").credentials("foo", "bar").endpoint("gooend")
- .apiVersion("1.1").buildVersion("1.1-2").overrides(overrides).buildInjector()
- .getInstance(Key.get(new TypeLiteral<Supplier<ComputeService>>() {
- }, Backend.class)).get();
-
- assertEquals(stub.getContext().unwrap().getProviderMetadata().getEndpoint(), "gooend");
- assertEquals(stub.getContext().unwrap().getProviderMetadata().getApiMetadata().getVersion(), "1.1");
- assertEquals(stub.getContext().unwrap().getProviderMetadata().getApiMetadata().getBuildVersion().get(), "1.1-2");
-
- stub.getContext().close();
- new File(basedir).delete();
-
- }
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/065071ca/nodepool/src/test/java/org/jclouds/nodepool/NodePoolComputeServiceLiveTest.java
----------------------------------------------------------------------
diff --git a/nodepool/src/test/java/org/jclouds/nodepool/NodePoolComputeServiceLiveTest.java b/nodepool/src/test/java/org/jclouds/nodepool/NodePoolComputeServiceLiveTest.java
deleted file mode 100644
index cd32e92..0000000
--- a/nodepool/src/test/java/org/jclouds/nodepool/NodePoolComputeServiceLiveTest.java
+++ /dev/null
@@ -1,251 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.nodepool;
-
-import static org.jclouds.compute.config.ComputeServiceProperties.TIMEOUT_PORT_OPEN;
-import static org.jclouds.compute.config.ComputeServiceProperties.TIMEOUT_SCRIPT_COMPLETE;
-import static org.jclouds.nodepool.config.NodePoolProperties.BASEDIR;
-import static org.jclouds.nodepool.config.NodePoolProperties.MAX_SIZE;
-import static org.jclouds.nodepool.config.NodePoolProperties.MIN_SIZE;
-import static org.jclouds.nodepool.config.NodePoolProperties.POOL_ADMIN_ACCESS;
-import static org.testng.Assert.assertEquals;
-import static org.testng.Assert.assertNotNull;
-import static org.testng.Assert.assertSame;
-import static org.testng.Assert.assertTrue;
-
-import java.util.NoSuchElementException;
-import java.util.Properties;
-
-import org.jclouds.compute.RunNodesException;
-import org.jclouds.compute.domain.NodeMetadata;
-import org.jclouds.compute.internal.BaseComputeServiceLiveTest;
-import org.jclouds.compute.predicates.NodePredicates;
-import org.jclouds.logging.config.LoggingModule;
-import org.jclouds.logging.slf4j.config.SLF4JLoggingModule;
-import org.jclouds.rest.AuthorizationException;
-import org.jclouds.sshj.config.SshjSshClientModule;
-import org.jclouds.utils.Closeables2;
-import org.testng.annotations.AfterClass;
-import org.testng.annotations.Test;
-
-import com.google.common.collect.Iterables;
-import com.google.common.collect.Sets;
-import com.google.inject.Module;
-
-public class NodePoolComputeServiceLiveTest extends BaseComputeServiceLiveTest {
-
- private final String basedir = "target/" + this.getClass().getSimpleName().toLowerCase();
-
- public NodePoolComputeServiceLiveTest() {
- provider = "nodepool";
- }
-
- @Override
- protected Properties setupProperties() {
- Properties contextProperties = super.setupProperties();
- contextProperties.setProperty(BASEDIR, basedir);
- contextProperties.setProperty("nodepool.identity", "pooluser");
- contextProperties.setProperty(POOL_ADMIN_ACCESS, "adminUsername=pooluser,adminPassword=poolpassword");
- contextProperties.setProperty(TIMEOUT_SCRIPT_COMPLETE, (1200 * 1000) + "");
- contextProperties.setProperty(TIMEOUT_PORT_OPEN, (1200 * 1000) + "");
- contextProperties.setProperty(BASEDIR, basedir);
- contextProperties.setProperty(POOL_ADMIN_ACCESS, "adminUsername=pooluser,adminPassword=poolpassword");
- contextProperties.setProperty(MAX_SIZE, 2 + "");
- contextProperties.setProperty(MIN_SIZE, 1 + "");
- return contextProperties;
- }
-
- @AfterClass(groups = { "integration", "live" })
- @Override
- protected void tearDownContext() {
- Closeables2.closeQuietly(context);
- }
-
- @Override
- protected Module getSshModule() {
- return new SshjSshClientModule();
- }
-
- @Override
- protected LoggingModule getLoggingModule() {
- return new SLF4JLoggingModule();
- }
-
- @Override
- @Test(enabled = true, groups = "live")
- public void testCreateAndRunAService() throws Exception {
- createAndRunAServiceInGroup(group);
- }
-
- @Test(enabled = true, groups = "live", dependsOnMethods = "testCreateAndRunAService")
- public void testRebuildPoolStateFromStore() {
- tearDownContext();
- setupContext();
- assertSame(client.listNodes().size(), 1);
- assertEquals(((NodeMetadata) Iterables.get(client.listNodes(), 0)).getGroup(), this.group);
- }
-
- @Test(enabled = true, groups = "live", dependsOnMethods = "testRebuildPoolStateFromStore")
- public void testIncreasePoolAllowed() throws RunNodesException {
- client.createNodesInGroup(this.group, 1);
- assertSame(client.listNodes().size(), 2);
- }
-
- @Test(enabled = true, groups = "live", dependsOnMethods = "testIncreasePoolAllowed")
- public void testIncreasePoolNotAllowed() throws RunNodesException {
- boolean caughtException = false;
- try {
- client.createNodesInGroup(this.group, 1);
- } catch (Exception e) {
- caughtException = true;
- }
- assertTrue(caughtException, "expected an exception to be thrown");
- }
-
- @Test(enabled = true, groups = "live", dependsOnMethods = "testIncreasePoolNotAllowed")
- public void testGetBackendComputeServiceContext() {
- NodePoolComputeServiceContext ctx = context.utils().injector().getInstance(NodePoolComputeServiceContext.class);
- assertNotNull(ctx.getBackendContext());
- assertSame(
- Sets.filter(ctx.getBackendContext().getComputeService().listNodesDetailsMatching(NodePredicates.all()),
- NodePredicates.inGroup(ctx.getPoolGroupName())).size(), 2);
- }
-
- @Test(enabled = true, groups = "live", dependsOnMethods = "testGetBackendComputeServiceContext")
- public void testDestroyPoolNodes() {
- client.destroyNodesMatching(NodePredicates.inGroup(this.group));
- // after we destroy all nodes we should still have minsize nodes in the pool
- NodePoolComputeServiceContext ctx = context.utils().injector().getInstance(NodePoolComputeServiceContext.class);
- assertSame(ctx.getPoolStats().currentSize(), 1);
- }
-
- @Test(enabled = true, groups = "live", dependsOnMethods = "testDestroyPoolNodes")
- public void testDestroyPool() {
- // TODO get the ctx without the injector
- NodePoolComputeServiceContext ctx = context.utils().injector().getInstance(NodePoolComputeServiceContext.class);
- ctx.destroyPool();
- assertSame(
- Sets.filter(ctx.getBackendContext().getComputeService().listNodesDetailsMatching(NodePredicates.all()),
- NodePredicates.inGroup(ctx.getPoolGroupName())).size(), 0);
- }
-
- @Override
- @Test(enabled = false)
- public void testAScriptExecutionAfterBootWithBasicTemplate() throws Exception {
- }
-
- @Override
- @Test(enabled = false)
- public void testCompareSizes() throws Exception {
- }
-
- @Override
- @Test(enabled = false)
- public void testConcurrentUseOfComputeServiceToCreateNodes() throws Exception {
- }
-
- @Override
- @Test(enabled = false, expectedExceptions = AuthorizationException.class)
- public void testCorrectAuthException() throws Exception {
- }
-
- @Override
- @Test(enabled = false, expectedExceptions = NoSuchElementException.class)
- public void testCorrectExceptionRunningNodesNotFound() throws Exception {
- }
-
- @Override
- @Test(enabled = false, dependsOnMethods = "testCreateTwoNodesWithRunScript")
- public void testCreateAnotherNodeWithANewContextToEnsureSharedMemIsntRequired() throws Exception {
- }
-
- @Override
- @Test(enabled = false, dependsOnMethods = "testConcurrentUseOfComputeServiceToCreateNodes")
- public void testCreateTwoNodesWithRunScript() throws Exception {
- }
-
- @Override
- @Test(enabled = false, dependsOnMethods = "testCreateAnotherNodeWithANewContextToEnsureSharedMemIsntRequired")
- public void testCredentialsCache() throws Exception {
- }
-
- @Override
- @Test(enabled = false, dependsOnMethods = { "testListNodes", "testGetNodesWithDetails" })
- public void testDestroyNodes() {
- }
-
- @Override
- @Test(enabled = false, dependsOnMethods = "testCreateAnotherNodeWithANewContextToEnsureSharedMemIsntRequired")
- public void testGet() throws Exception {
- }
-
- @Override
- @Test(enabled = false, groups = { "integration", "live" })
- public void testGetAssignableLocations() throws Exception {
- }
-
- @Override
- @Test(enabled = false, dependsOnMethods = "testSuspendResume")
- public void testGetNodesWithDetails() throws Exception {
- }
-
- @Override
- @Test(enabled = false)
- public void testImageById() {
- }
-
- @Override
- @Test(enabled = false)
- public void testImagesCache() throws Exception {
- }
-
- @Override
- @Test(enabled = false)
- public void testListImages() throws Exception {
- }
-
- @Override
- @Test(enabled = false, dependsOnMethods = "testSuspendResume")
- public void testListNodes() throws Exception {
- }
-
- @Override
- @Test(enabled = false)
- public void testListSizes() throws Exception {
- }
-
- @Override
- @Test(enabled = false)
- public void testOptionToNotBlock() throws Exception {
- }
-
- @Override
- @Test(enabled = false, dependsOnMethods = "testGet")
- public void testReboot() throws Exception {
- }
-
- @Override
- @Test(enabled = false, dependsOnMethods = "testReboot")
- public void testSuspendResume() throws Exception {
- }
-
- @Override
- @Test(enabled = false, dependsOnMethods = "testImagesCache")
- public void testTemplateMatch() throws Exception {
- }
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/065071ca/nodepool/src/test/java/org/jclouds/nodepool/config/BindBackendComputeServiceTest.java
----------------------------------------------------------------------
diff --git a/nodepool/src/test/java/org/jclouds/nodepool/config/BindBackendComputeServiceTest.java b/nodepool/src/test/java/org/jclouds/nodepool/config/BindBackendComputeServiceTest.java
deleted file mode 100644
index 754bb6a..0000000
--- a/nodepool/src/test/java/org/jclouds/nodepool/config/BindBackendComputeServiceTest.java
+++ /dev/null
@@ -1,82 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.nodepool.config;
-
-import static org.easymock.EasyMock.createNiceMock;
-import static org.jclouds.nodepool.config.NodePoolProperties.POOL_ADMIN_ACCESS;
-import static org.testng.Assert.assertEquals;
-
-import java.io.File;
-import java.util.Properties;
-
-import org.jclouds.ContextBuilder;
-import org.jclouds.compute.ComputeService;
-import org.jclouds.domain.LoginCredentials;
-import org.jclouds.logging.slf4j.config.SLF4JLoggingModule;
-import org.jclouds.nodepool.Backend;
-import org.jclouds.ssh.SshClient;
-import org.testng.annotations.Test;
-
-import com.google.common.base.Supplier;
-import com.google.common.net.HostAndPort;
-import com.google.inject.AbstractModule;
-import com.google.inject.Key;
-import com.google.inject.Scopes;
-import com.google.inject.TypeLiteral;
-
-@Test(groups = "unit", testName = "BindBackendComputeServiceTest")
-public class BindBackendComputeServiceTest {
-
- public void testBinds() {
- final String basedir = "target/" + this.getClass().getSimpleName();
- new File(basedir).delete();
-
- Properties overrides = new Properties();
- overrides.setProperty(NodePoolProperties.BACKEND_PROVIDER, "stub");
- overrides.setProperty(NodePoolProperties.BASEDIR, basedir);
- // note no ssh module since we are stub and not trying ssh, yet
- overrides.setProperty(NodePoolProperties.BACKEND_MODULES, SLF4JLoggingModule.class.getName() + ","
- + StubSshClientModule.class.getName());
- overrides.setProperty(POOL_ADMIN_ACCESS, "adminUsername=pooluser,adminPassword=poolpass");
-
- ComputeService stub = ContextBuilder.newBuilder("nodepool").credentials("foo", "bar").endpoint("gooend")
- .apiVersion("1.1").buildVersion("1.1-2").overrides(overrides).buildInjector()
- .getInstance(Key.get(new TypeLiteral<Supplier<ComputeService>>() {
- }, Backend.class)).get();
-
- assertEquals(stub.getContext().unwrap().getProviderMetadata().getEndpoint(), "gooend");
- assertEquals(stub.getContext().unwrap().getProviderMetadata().getApiMetadata().getVersion(), "1.1");
- assertEquals(stub.getContext().unwrap().getProviderMetadata().getApiMetadata().getBuildVersion().get(), "1.1-2");
-
- stub.getContext().close();
- new File(basedir).delete();
-
- }
-
- public static class StubSshClientModule extends AbstractModule {
-
- protected void configure() {
- bind(SshClient.Factory.class).to(Factory.class).in(Scopes.SINGLETON);
- }
-
- private static class Factory implements SshClient.Factory {
- public SshClient create(HostAndPort socket, LoginCredentials credentials) {
- return createNiceMock(SshClient.class);
- }
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/065071ca/nodepool/src/test/java/org/jclouds/nodepool/config/BindInputStreamToFilesystemBlobStoreTest.java
----------------------------------------------------------------------
diff --git a/nodepool/src/test/java/org/jclouds/nodepool/config/BindInputStreamToFilesystemBlobStoreTest.java b/nodepool/src/test/java/org/jclouds/nodepool/config/BindInputStreamToFilesystemBlobStoreTest.java
deleted file mode 100644
index 84ca720..0000000
--- a/nodepool/src/test/java/org/jclouds/nodepool/config/BindInputStreamToFilesystemBlobStoreTest.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jclouds.nodepool.config;
-
-import static org.testng.Assert.assertEquals;
-
-import java.io.File;
-import java.io.InputStream;
-import java.util.Map;
-
-import org.jclouds.logging.slf4j.config.SLF4JLoggingModule;
-import org.testng.annotations.Test;
-
-import com.google.common.base.Supplier;
-import com.google.common.collect.ImmutableSet;
-import com.google.inject.AbstractModule;
-import com.google.inject.Guice;
-import com.google.inject.Key;
-import com.google.inject.TypeLiteral;
-import com.google.inject.name.Names;
-
-@Test(groups = "unit", testName = "BindInputStreamToFilesystemBlobStoreTest")
-public class BindInputStreamToFilesystemBlobStoreTest {
-
- public void testCreatesDir() {
- final String basedir = "target/" + this.getClass().getSimpleName();
- new File(basedir).delete();
- Map<String, InputStream> file = Guice
- .createInjector(new AbstractModule() {
- @Override
- protected void configure() {
- bindConstant().annotatedWith(Names.named(NodePoolProperties.BASEDIR)).to(basedir);
- bindConstant().annotatedWith(Names.named(NodePoolProperties.METADATA_CONTAINER)).to("barr");
- bindConstant().annotatedWith(Names.named(NodePoolProperties.POOL_ADMIN_ACCESS)).to(
- "adminUsername=pooluser,adminPassword=poolpass");
- bindConstant().annotatedWith(Names.named(NodePoolProperties.BACKEND_MODULES)).to(
- SLF4JLoggingModule.class.getName());
- }
- }, new BindInputStreamToFilesystemBlobStore())
- .getInstance(Key.get(new TypeLiteral<Supplier<Map<String, InputStream>>>() {
- }, Names.named("METADATA"))).get();
-
- assert (new File(basedir + "/barr").exists());
- assertEquals(file.keySet(), ImmutableSet.of());
- new File(basedir).delete();
- }
-
-}
http://git-wip-us.apache.org/repos/asf/jclouds-labs/blob/065071ca/nodepool/src/test/resources/logback.xml
----------------------------------------------------------------------
diff --git a/nodepool/src/test/resources/logback.xml b/nodepool/src/test/resources/logback.xml
deleted file mode 100644
index 4f0c2ef..0000000
--- a/nodepool/src/test/resources/logback.xml
+++ /dev/null
@@ -1,71 +0,0 @@
-<?xml version="1.0"?>
-<configuration scan="false">
- <appender name="FILE" class="ch.qos.logback.core.FileAppender">
- <file>target/test-data/jclouds.log</file>
-
- <layout class="ch.qos.logback.classic.PatternLayout">
- <Pattern>%d %-5p [%c] (%t) %m%n</Pattern>
- </layout>
- </appender>
-
- <appender name="WIREFILE" class="ch.qos.logback.core.FileAppender">
- <file>target/test-data/jclouds-wire.log</file>
-
- <layout class="ch.qos.logback.classic.PatternLayout">
- <Pattern>%d %-5p [%c] (%t) %m%n</Pattern>
- </layout>
- </appender>
-
- <appender name="COMPUTEFILE" class="ch.qos.logback.core.FileAppender">
- <file>target/test-data/jclouds-compute.log</file>
-
- <layout class="ch.qos.logback.classic.PatternLayout">
- <Pattern>%d %-5p [%c] (%t) %m%n</Pattern>
- </layout>
- </appender>
-
- <appender name="SSHFILE" class="ch.qos.logback.core.FileAppender">
- <file>target/test-data/jclouds-ssh.log</file>
-
- <layout class="ch.qos.logback.classic.PatternLayout">
- <Pattern>%d %-5p [%c] (%t) %m%n</Pattern>
- </layout>
- </appender>
-
- <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
- <encoder>
- <Pattern>%-4r [%thread] %-5level - %msg%n</Pattern>
- </encoder>
- </appender>
-
- <root>
- <level value="DEBUG" />
- <appender-ref ref="CONSOLE" />
- </root>
-
- <logger name="org.jclouds">
- <level value="INFO" />
- <appender-ref ref="FILE" />
- </logger>
-
- <logger name="jclouds.wire">
- <level value="WARN" />
- <appender-ref ref="WIREFILE" />
- </logger>
-
- <logger name="jclouds.headers">
- <level value="WARN" />
- <appender-ref ref="WIREFILE" />
- </logger>
-
- <logger name="jclouds.compute">
- <level value="INFO" />
- <appender-ref ref="COMPUTEFILE" />
- </logger>
-
- <logger name="jclouds.ssh">
- <level value="INFO" />
- <appender-ref ref="SSHFILE" />
- </logger>
-
-</configuration>