[INFO] Scanning for projects...
[WARNING] 
[WARNING] Some problems were encountered while building the effective model for org.jclouds.provider:hpcloud-compute:bundle:1.5.0-SNAPSHOT
[WARNING] 'parent.relativePath' of POM org.jclouds:jclouds-project:1.5.0-SNAPSHOT (/Users/adriancole/workspace/git/jclouds/project/pom.xml) points at org.jclouds:jclouds-multi instead of org.sonatype.oss:oss-parent, please verify your project structure @ org.jclouds:jclouds-project:1.5.0-SNAPSHOT, /Users/adriancole/workspace/git/jclouds/project/pom.xml, line 24, column 13
[WARNING] 
[WARNING] It is highly recommended to fix these problems because they threaten the stability of your build.
[WARNING] 
[WARNING] For this reason, future Maven versions might no longer support building such malformed projects.
[WARNING] 
[INFO]                                                                         
[INFO] ------------------------------------------------------------------------
[INFO] Building jclouds HP Cloud Compute provider 1.5.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO] 
[INFO] --- maven-clean-plugin:2.4.1:clean (default-clean) @ hpcloud-compute ---
[INFO] Deleting /Users/adriancole/workspace/git/jclouds/providers/hpcloud-compute/target
[INFO] 
[INFO] --- maven-enforcer-plugin:1.1:enforce (enforce-maven) @ hpcloud-compute ---
[INFO] 
[INFO] --- maven-enforcer-plugin:1.1:enforce (enforce-banned-dependencies) @ hpcloud-compute ---
[INFO] 
[INFO] --- maven-enforcer-plugin:1.1:enforce (enforce-java) @ hpcloud-compute ---
[INFO] 
[INFO] --- maven-remote-resources-plugin:1.3:process (process-remote-resources) @ hpcloud-compute ---
[INFO] 
[INFO] --- maven-resources-plugin:2.5:resources (default-resources) @ hpcloud-compute ---
[debug] execute contextualize
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory /Users/adriancole/workspace/git/jclouds/providers/hpcloud-compute/src/main/clojure
[INFO] Copying 1 resource
[INFO] Copying 2 resources
[INFO] 
[INFO] --- maven-compiler-plugin:2.5:compile (default-compile) @ hpcloud-compute ---
[INFO] Compiling 3 source files to /Users/adriancole/workspace/git/jclouds/providers/hpcloud-compute/target/classes
[INFO] 
[INFO] --- maven-resources-plugin:2.5:testResources (default-testResources) @ hpcloud-compute ---
[debug] execute contextualize
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory /Users/adriancole/workspace/git/jclouds/providers/hpcloud-compute/src/test/clojure
[INFO] skip non existing resourceDirectory /Users/adriancole/workspace/git/jclouds/providers/hpcloud-compute/src/test/resources
[INFO] Copying 2 resources
[INFO] 
[INFO] --- maven-compiler-plugin:2.5:testCompile (default-testCompile) @ hpcloud-compute ---
[INFO] Compiling 11 source files to /Users/adriancole/workspace/git/jclouds/providers/hpcloud-compute/target/test-classes
[INFO] 
[INFO] --- maven-surefire-plugin:2.12:test (default-test) @ hpcloud-compute ---
[INFO] Surefire report directory: /Users/adriancole/workspace/git/jclouds/providers/hpcloud-compute/target/surefire-reports

-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running org.jclouds.hpcloud.compute.HPCloudComputeProviderTest
Configuring TestNG with: org.apache.maven.surefire.testng.conf.TestNGMapConfigurator@5a77a7f9
Starting test testTransformableToContains(org.jclouds.hpcloud.compute.HPCloudComputeProviderTest)
Starting test testOfApiContains(org.jclouds.hpcloud.compute.HPCloudComputeProviderTest)
Starting test testWithId(org.jclouds.hpcloud.compute.HPCloudComputeProviderTest)
Starting test testAllContains(org.jclouds.hpcloud.compute.HPCloudComputeProviderTest)
[pool-2-thread-4] Test testWithId(org.jclouds.hpcloud.compute.HPCloudComputeProviderTest) succeeded: 554ms
Test suite progress: tests succeeded: 1, failed: 0, skipped: 0.
[pool-2-thread-1] Test testAllContains(org.jclouds.hpcloud.compute.HPCloudComputeProviderTest) succeeded: 563ms
Test suite progress: tests succeeded: 2, failed: 0, skipped: 0.
[pool-2-thread-3] Test testTransformableToContains(org.jclouds.hpcloud.compute.HPCloudComputeProviderTest) succeeded: 566ms
Test suite progress: tests succeeded: 3, failed: 0, skipped: 0.
[pool-2-thread-2] Test testOfApiContains(org.jclouds.hpcloud.compute.HPCloudComputeProviderTest) succeeded: 566ms
Test suite progress: tests succeeded: 4, failed: 0, skipped: 0.
Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 5.291 sec

Results :

Tests run: 4, Failures: 0, Errors: 0, Skipped: 0

[INFO] 
[INFO] --- maven-bundle-plugin:2.3.7:bundle (default-bundle) @ hpcloud-compute ---
[INFO] 
[INFO] --- maven-jar-plugin:2.4:test-jar (default) @ hpcloud-compute ---
[INFO] Building jar: /Users/adriancole/workspace/git/jclouds/providers/hpcloud-compute/target/hpcloud-compute-1.5.0-SNAPSHOT-tests.jar
[INFO] 
[INFO] --- maven-surefire-plugin:2.12:test (integration) @ hpcloud-compute ---
[INFO] Surefire report directory: /Users/adriancole/workspace/git/jclouds/providers/hpcloud-compute/target/surefire-reports

-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running TestSuite
Configuring TestNG with: org.apache.maven.surefire.testng.conf.TestNGMapConfigurator@39d85f79
Starting test setServiceDefaults(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest)
[TestNG] Test setServiceDefaults(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 1, failed: 0, skipped: 0.
Starting test testCompareSizes(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest)
Sep 16, 2012 11:53:40 PM org.jclouds.compute.internal.BaseComputeServiceLiveTest testCompareSizes
INFO: smallest {id=az-2.region-a.geo-1/100, providerId=100, name=standard.xsmall, location={scope=ZONE, id=az-2.region-a.geo-1, description=az-2.region-a.geo-1, parent=hpcloud-compute}, processors=[{cores=1.0, speed=1.0}], ram=1024, volumes=[{type=LOCAL, size=30.0, bootDevice=true, durable=true}], supportsImage=ALWAYS_TRUE}
Sep 16, 2012 11:53:40 PM org.jclouds.compute.internal.BaseComputeServiceLiveTest testCompareSizes
INFO: fastest {id=az-3.region-a.geo-1/105, providerId=105, name=standard.2xlarge, location={scope=ZONE, id=az-3.region-a.geo-1, description=az-3.region-a.geo-1, parent=hpcloud-compute}, processors=[{cores=8.0, speed=1.0}], ram=32768, volumes=[{type=LOCAL, size=960.0, bootDevice=true, durable=true}], supportsImage=ALWAYS_TRUE}
Sep 16, 2012 11:53:40 PM org.jclouds.compute.internal.BaseComputeServiceLiveTest testCompareSizes
INFO: biggest {id=az-3.region-a.geo-1/105, providerId=105, name=standard.2xlarge, location={scope=ZONE, id=az-3.region-a.geo-1, description=az-3.region-a.geo-1, parent=hpcloud-compute}, processors=[{cores=8.0, speed=1.0}], ram=32768, volumes=[{type=LOCAL, size=960.0, bootDevice=true, durable=true}], supportsImage=ALWAYS_TRUE}
[TestNG] Test testCompareSizes(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest) succeeded: 8049ms
Test suite progress: tests succeeded: 2, failed: 0, skipped: 0.
Starting test testCorrectExceptionRunningNodesNotFound(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest)
[TestNG] Test testCorrectExceptionRunningNodesNotFound(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest) succeeded: 1794ms
Test suite progress: tests succeeded: 3, failed: 0, skipped: 0.
Starting test testGetAssignableLocations(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest)
Sep 16, 2012 11:53:42 PM org.jclouds.compute.internal.BaseComputeServiceLiveTest testGetAssignableLocations
WARNING: location {scope=ZONE, id=az-3.region-a.geo-1, description=az-3.region-a.geo-1, parent=hpcloud-compute}
Sep 16, 2012 11:53:42 PM org.jclouds.compute.internal.BaseComputeServiceLiveTest testGetAssignableLocations
WARNING: location {scope=ZONE, id=az-2.region-a.geo-1, description=az-2.region-a.geo-1, parent=hpcloud-compute}
Sep 16, 2012 11:53:42 PM org.jclouds.compute.internal.BaseComputeServiceLiveTest testGetAssignableLocations
WARNING: location {scope=ZONE, id=az-1.region-a.geo-1, description=az-1.region-a.geo-1, parent=hpcloud-compute}
[TestNG] Test testGetAssignableLocations(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 4, failed: 0, skipped: 0.
Starting test testImageById(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest)
[TestNG] Test testImageById(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest) succeeded: 759ms
Test suite progress: tests succeeded: 5, failed: 0, skipped: 0.
Starting test testImagesCache(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest)
[TestNG] Test testImagesCache(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 6, failed: 0, skipped: 0.
Starting test testListImages(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest)
[TestNG] Test testListImages(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 7, failed: 0, skipped: 0.
Starting test testListSizes(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest)
[TestNG] Test testListSizes(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 8, failed: 0, skipped: 0.
Starting test testOptionToNotBlock(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest)
[TestNG] Test testOptionToNotBlock(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 9, failed: 0, skipped: 0.
Starting test testCreateAndRunAService(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest)
Sep 16, 2012 11:54:13 PM org.jclouds.compute.internal.BaseComputeServiceLiveTest createAndRunAServiceInGroup
INFO: << available node(az-2.region-a.geo-1/511251) os({family=ubuntu, name=Ubuntu Precise 12.04 LTS Server 64-bit 20120424, version=12.04, description=Ubuntu Precise 12.04 LTS Server 64-bit 20120424, is64Bit=true}) in 28s
Sep 16, 2012 11:56:16 PM org.jclouds.compute.internal.BaseComputeServiceLiveTest createAndRunAServiceInGroup
INFO: << configured node(az-2.region-a.geo-1/511251) with java full version "1.6.0_24-b24" and jetty jetty-8.1.5.v20120716 in 113s
Sep 16, 2012 11:56:21 PM org.jclouds.compute.internal.BaseComputeServiceLiveTest trackAvailabilityOfProcessOnNode
INFO: << start jetty on node(az-2.region-a.geo-1/511251)[15.185.169.61:8080] [backgroundProcessMilliseconds=2219, socketOpenMilliseconds=3042]
Sep 16, 2012 11:56:30 PM org.jclouds.compute.internal.BaseComputeServiceLiveTest trackAvailabilityOfProcessOnNode
INFO: << start jetty on node(az-2.region-a.geo-1/511251)[15.185.169.61:8080] [backgroundProcessMilliseconds=2322, socketOpenMilliseconds=3092]
[TestNG] Test testCreateAndRunAService(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest) succeeded: 183541ms
Test suite progress: tests succeeded: 10, failed: 0, skipped: 0.
Starting test testCorrectAuthException(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest)
com.google.common.util.concurrent.UncheckedExecutionException: java.lang.IllegalArgumentException: current configuration is set to [jclouds.keystone.requires-tenant]. Unless you set [jclouds.keystone.tenant-name] or [jclouds.keystone.tenant-id], you must prefix your identity with 'tenantName:'
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2258)
	at com.google.common.cache.LocalCache.get(LocalCache.java:3990)
	at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3994)
	at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4878)
	at org.jclouds.openstack.keystone.v2_0.config.KeystoneAuthenticationModule$2.get(KeystoneAuthenticationModule.java:206)
	at org.jclouds.openstack.keystone.v2_0.config.KeystoneAuthenticationModule$2.get(KeystoneAuthenticationModule.java:202)
	at org.jclouds.openstack.keystone.v2_0.suppliers.LocationIdToURIFromAccessForTypeAndVersion.get(LocationIdToURIFromAccessForTypeAndVersion.java:63)
	at org.jclouds.openstack.keystone.v2_0.suppliers.LocationIdToURIFromAccessForTypeAndVersion.get(LocationIdToURIFromAccessForTypeAndVersion.java:42)
	at org.jclouds.rest.suppliers.MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier$SetAndThrowAuthorizationExceptionSupplierBackedLoader.load(MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier.java:91)
	at org.jclouds.rest.suppliers.MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier$SetAndThrowAuthorizationExceptionSupplierBackedLoader.load(MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier.java:72)
	at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3589)
	at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2374)
	at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2337)
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2252)
	at com.google.common.cache.LocalCache.get(LocalCache.java:3990)
	at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3994)
	at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4878)
	at org.jclouds.rest.suppliers.MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier.get(MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier.java:140)
	at org.jclouds.location.suppliers.derived.ZoneIdsFromZoneIdToURIKeySet.get(ZoneIdsFromZoneIdToURIKeySet.java:48)
	at org.jclouds.location.suppliers.derived.ZoneIdsFromZoneIdToURIKeySet.get(ZoneIdsFromZoneIdToURIKeySet.java:36)
	at org.jclouds.util.Suppliers2$SupplierComposition.get(Suppliers2.java:179)
	at org.jclouds.rest.suppliers.MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier$SetAndThrowAuthorizationExceptionSupplierBackedLoader.load(MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier.java:91)
	at org.jclouds.rest.suppliers.MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier$SetAndThrowAuthorizationExceptionSupplierBackedLoader.load(MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier.java:72)
	at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3589)
	at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2374)
	at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2337)
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2252)
	at com.google.common.cache.LocalCache.get(LocalCache.java:3990)
	at com.google.common.cache.LocalCache.getOrLoad(LocalCache.java:3994)
	at com.google.common.cache.LocalCache$LocalLoadingCache.get(LocalCache.java:4878)
	at org.jclouds.rest.suppliers.MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier.get(MemoizedRetryOnTimeOutButNotOnAuthorizationExceptionSupplier.java:140)
	at org.jclouds.openstack.nova.v2_0.compute.NovaComputeServiceAdapter.listNodes(NovaComputeServiceAdapter.java:196)
	at org.jclouds.compute.strategy.impl.AdaptingComputeServiceStrategies.listDetailsOnNodesMatching(AdaptingComputeServiceStrategies.java:115)
	at org.jclouds.compute.strategy.impl.AdaptingComputeServiceStrategies.listNodes(AdaptingComputeServiceStrategies.java:110)
	at org.jclouds.compute.internal.BaseComputeService.listNodes(BaseComputeService.java:342)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at com.google.inject.internal.DelegatingInvocationHandler.invoke(DelegatingInvocationHandler.java:37)
	at $Proxy77.listNodes(Unknown Source)
	at org.jclouds.compute.internal.BaseComputeServiceLiveTest.testCorrectAuthException(BaseComputeServiceLiveTest.java:176)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:597)
	at org.testng.internal.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:80)
	at org.testng.internal.Invoker.invokeMethod(Invoker.java:702)
	at org.testng.internal.Invoker.invokeTestMethod(Invoker.java:894)
	at org.testng.internal.Invoker.invokeTestMethods(Invoker.java:1219)
	at org.testng.internal.TestMethodWorker.invokeTestMethods(TestMethodWorker.java:127)
	at org.testng.internal.TestMethodWorker.run(TestMethodWorker.java:111)
	at org.testng.TestRunner.privateRun(TestRunner.java:768)
	at org.testng.TestRunner.run(TestRunner.java:617)
	at org.testng.SuiteRunner.runTest(SuiteRunner.java:334)
	at org.testng.SuiteRunner.access$000(SuiteRunner.java:37)
	at org.testng.SuiteRunner$SuiteWorker.run(SuiteRunner.java:368)
	at org.testng.internal.thread.ThreadUtil$2.call(ThreadUtil.java:64)
	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
	at java.util.concurrent.FutureTask.run(FutureTask.java:138)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
	at java.lang.Thread.run(Thread.java:680)
Caused by: java.lang.IllegalArgumentException: current configuration is set to [jclouds.keystone.requires-tenant]. Unless you set [jclouds.keystone.tenant-name] or [jclouds.keystone.tenant-id], you must prefix your identity with 'tenantName:'
	at org.jclouds.openstack.keystone.v2_0.functions.internal.BaseAuthenticator.apply(BaseAuthenticator.java:83)
	at org.jclouds.openstack.keystone.v2_0.functions.internal.BaseAuthenticator.apply(BaseAuthenticator.java:36)
	at org.jclouds.concurrent.RetryOnTimeOutExceptionFunction.apply(RetryOnTimeOutExceptionFunction.java:49)
	at com.google.common.cache.CacheLoader$FunctionToCacheLoader.load(CacheLoader.java:146)
	at com.google.common.cache.LocalCache$LoadingValueReference.loadFuture(LocalCache.java:3589)
	at com.google.common.cache.LocalCache$Segment.loadSync(LocalCache.java:2374)
	at com.google.common.cache.LocalCache$Segment.lockedGetOrLoad(LocalCache.java:2337)
	at com.google.common.cache.LocalCache$Segment.get(LocalCache.java:2252)
	... 62 more
[TestNG] Test testCorrectAuthException(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest) failed.
Test suite progress: tests succeeded: 10, failed: 1, skipped: 0.
Starting test testAScriptExecutionAfterBootWithBasicTemplate(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest)
<< problem applying options to node(az-2.region-a.geo-1/511261): 
org.jclouds.rest.AuthorizationException: (ubuntu:pw[5d907853a9617cfd55fb62eae803595b]@15.185.169.61:22) (ubuntu:pw[5d907853a9617cfd55fb62eae803595b]@15.185.169.61:22) error acquiring {hostAndPort=15.185.169.61:22, loginUser=ubuntu, ssh=null, connectTimeout=60000, sessionTimeout=60000} (out of retries - max 7): Exhausted available authentication methods
	at org.jclouds.sshj.SshjSshClient.propagate(SshjSshClient.java:380)
	at org.jclouds.sshj.SshjSshClient.acquire(SshjSshClient.java:201)
	at org.jclouds.sshj.SshjSshClient.connect(SshjSshClient.java:221)
	at org.jclouds.compute.callables.RunScriptOnNodeUsingSsh.call(RunScriptOnNodeUsingSsh.java:80)
	at org.jclouds.compute.strategy.RunScriptOnNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(RunScriptOnNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:69)
	at org.jclouds.compute.strategy.RunScriptOnNodeAndAddToGoodMapOrPutExceptionIntoBadMap.call(RunScriptOnNodeAndAddToGoodMapOrPutExceptionIntoBadMap.java:44)
	at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
	at java.util.concurrent.FutureTask.run(FutureTask.java:138)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
	at java.lang.Thread.run(Thread.java:680)
Caused by: net.schmizz.sshj.userauth.UserAuthException: Exhausted available authentication methods
	at net.schmizz.sshj.userauth.UserAuthImpl.authenticate(UserAuthImpl.java:114)
	at net.schmizz.sshj.SSHClient.auth(SSHClient.java:205)
	at net.schmizz.sshj.SSHClient.auth(SSHClient.java:190)
	at net.schmizz.sshj.SSHClient.authPassword(SSHClient.java:266)
	at net.schmizz.sshj.SSHClient.authPassword(SSHClient.java:236)
	at net.schmizz.sshj.SSHClient.authPassword(SSHClient.java:220)
	at org.jclouds.sshj.SSHClientConnection.create(SSHClientConnection.java:140)
	at org.jclouds.sshj.SSHClientConnection.create(SSHClientConnection.java:40)
	at org.jclouds.sshj.SshjSshClient.acquire(SshjSshClient.java:191)
	... 9 more
Caused by: net.schmizz.sshj.userauth.UserAuthException: keyboard-interactive auth not allowed by server
	at net.schmizz.sshj.userauth.UserAuthImpl.authenticate(UserAuthImpl.java:81)
	... 17 more
[TestNG] Test testAScriptExecutionAfterBootWithBasicTemplate(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest) succeeded: 433646ms
Test suite progress: tests succeeded: 11, failed: 1, skipped: 0.
Starting test testConcurrentUseOfComputeServiceToCreateNodes(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest)
Sep 17, 2012 12:05:08 AM org.jclouds.compute.internal.BaseComputeServiceLiveTest$1 call
INFO: Started node az-2.region-a.geo-1/511277
Sep 17, 2012 12:05:28 AM org.jclouds.compute.internal.BaseComputeServiceLiveTest$1 call
INFO: Started node az-2.region-a.geo-1/511275
[TestNG] Test testConcurrentUseOfComputeServiceToCreateNodes(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest) succeeded: 120012ms
Test suite progress: tests succeeded: 12, failed: 1, skipped: 0.
Starting test testTemplateMatch(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest)
[TestNG] Test testTemplateMatch(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest) succeeded: 13ms
Test suite progress: tests succeeded: 13, failed: 1, skipped: 0.
Starting test testCreateTwoNodesWithRunScript(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest)
[TestNG] Test testCreateTwoNodesWithRunScript(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest) succeeded: 414005ms
Test suite progress: tests succeeded: 14, failed: 1, skipped: 0.
Starting test testCreateAnotherNodeWithANewContextToEnsureSharedMemIsntRequired(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest)
Sep 17, 2012 12:13:04 AM org.jclouds.compute.internal.BaseComputeServiceLiveTest testCreateAnotherNodeWithANewContextToEnsureSharedMemIsntRequired
INFO: {scope=HOST, id=5be5b5bc607bd1e9af4034d0063487ac5cd6a94c3de539eb26e5efb0, description=5be5b5bc607bd1e9af4034d0063487ac5cd6a94c3de539eb26e5efb0, parent=az-2.region-a.geo-1} is not assignable; using template's location {scope=ZONE, id=az-2.region-a.geo-1, description=az-2.region-a.geo-1, parent=hpcloud-compute} as  
[TestNG] Test testCreateAnotherNodeWithANewContextToEnsureSharedMemIsntRequired(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest) succeeded: 407327ms
Test suite progress: tests succeeded: 15, failed: 1, skipped: 0.
Starting test testCredentialsCache(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest)
[TestNG] Test testCredentialsCache(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest) succeeded: 290ms
Test suite progress: tests succeeded: 16, failed: 1, skipped: 0.
Starting test testGet(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest)
[TestNG] Test testGet(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest) failed.
Test suite progress: tests succeeded: 16, failed: 2, skipped: 0.
[TestNG] Test testReboot(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest) skipped.
Test suite progress: tests succeeded: 16, failed: 2, skipped: 1.
[TestNG] Test testSuspendResume(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest) skipped.
Test suite progress: tests succeeded: 16, failed: 2, skipped: 2.
[TestNG] Test testGetNodesWithDetails(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest) skipped.
Test suite progress: tests succeeded: 16, failed: 2, skipped: 3.
[TestNG] Test testListNodes(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest) skipped.
Test suite progress: tests succeeded: 16, failed: 2, skipped: 4.
[TestNG] Test testDestroyNodes(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest) skipped.
Test suite progress: tests succeeded: 16, failed: 2, skipped: 5.
Starting test testCompareSizes(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
smallest {id=az-2.region-a.geo-1/100, providerId=100, name=standard.xsmall, location={scope=ZONE, id=az-2.region-a.geo-1, description=az-2.region-a.geo-1, parent=hpcloud-compute}, processors=[{cores=1.0, speed=1.0}], ram=1024, volumes=[{type=LOCAL, size=30.0, bootDevice=true, durable=true}], supportsImage=ALWAYS_TRUE}
fastest {id=az-3.region-a.geo-1/105, providerId=105, name=standard.2xlarge, location={scope=ZONE, id=az-3.region-a.geo-1, description=az-3.region-a.geo-1, parent=hpcloud-compute}, processors=[{cores=8.0, speed=1.0}], ram=32768, volumes=[{type=LOCAL, size=960.0, bootDevice=true, durable=true}], supportsImage=ALWAYS_TRUE}
biggest {id=az-3.region-a.geo-1/105, providerId=105, name=standard.2xlarge, location={scope=ZONE, id=az-3.region-a.geo-1, description=az-3.region-a.geo-1, parent=hpcloud-compute}, processors=[{cores=8.0, speed=1.0}], ram=32768, volumes=[{type=LOCAL, size=960.0, bootDevice=true, durable=true}], supportsImage=ALWAYS_TRUE}
[TestNG] Test testCompareSizes(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 5505ms
Test suite progress: tests succeeded: 17, failed: 2, skipped: 5.
Starting test testDefaultTemplateBuilder(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testDefaultTemplateBuilder(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 27ms
Test suite progress: tests succeeded: 18, failed: 2, skipped: 5.
Starting test testFromTemplate(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testFromTemplate(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 36ms
Test suite progress: tests succeeded: 19, failed: 2, skipped: 5.
Starting test testGetAssignableLocations(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
location {scope=ZONE, id=az-3.region-a.geo-1, description=az-3.region-a.geo-1, parent=hpcloud-compute}
location {scope=ZONE, id=az-2.region-a.geo-1, description=az-2.region-a.geo-1, parent=hpcloud-compute}
location {scope=ZONE, id=az-1.region-a.geo-1, description=az-1.region-a.geo-1, parent=hpcloud-compute}
[TestNG] Test testGetAssignableLocations(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 2ms
Test suite progress: tests succeeded: 20, failed: 2, skipped: 5.
Starting test testTemplateBuilderCanFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCanFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 4ms
Test suite progress: tests succeeded: 21, failed: 2, skipped: 5.
Starting test testTemplateBuilderCanFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCanFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 5ms
Test suite progress: tests succeeded: 22, failed: 2, skipped: 5.
Starting test testTemplateBuilderCanFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCanFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 2ms
Test suite progress: tests succeeded: 23, failed: 2, skipped: 5.
Starting test testTemplateBuilderCanFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCanFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 8ms
Test suite progress: tests succeeded: 24, failed: 2, skipped: 5.
Starting test testTemplateBuilderCanFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCanFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 2ms
Test suite progress: tests succeeded: 25, failed: 2, skipped: 5.
Starting test testTemplateBuilderCanFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCanFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 4ms
Test suite progress: tests succeeded: 26, failed: 2, skipped: 5.
Starting test testTemplateBuilderCanFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCanFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 6ms
Test suite progress: tests succeeded: 27, failed: 2, skipped: 5.
Starting test testTemplateBuilderCanFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCanFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 7ms
Test suite progress: tests succeeded: 28, failed: 2, skipped: 5.
Starting test testTemplateBuilderCanFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCanFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 3ms
Test suite progress: tests succeeded: 29, failed: 2, skipped: 5.
Starting test testTemplateBuilderCanFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCanFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 7ms
Test suite progress: tests succeeded: 30, failed: 2, skipped: 5.
Starting test testTemplateBuilderCanFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCanFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 2ms
Test suite progress: tests succeeded: 31, failed: 2, skipped: 5.
Starting test testTemplateBuilderCanUseImageId(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCanUseImageId(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 6280ms
Test suite progress: tests succeeded: 32, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 33, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 34, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 35, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 14ms
Test suite progress: tests succeeded: 36, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 37, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 38, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 39, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 40, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 41, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 42, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 43, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 44, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 45, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 46, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 47, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 48, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 49, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 50, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 51, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 52, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 53, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 54, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 55, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 56, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 57, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 58, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 59, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 60, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 61, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 62, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 63, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 64, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 65, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 66, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 67, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 68, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 69, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 70, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 71, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 72, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 73, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 74, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 75, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 76, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 77, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 78, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 79, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 80, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 81, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 82, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 83, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 84, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 85, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 86, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 87, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 88, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 89, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 90, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 2ms
Test suite progress: tests succeeded: 91, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 92, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 93, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 94, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 95, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 96, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 97, failed: 2, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) failed.
Test suite progress: tests succeeded: 97, failed: 3, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 98, failed: 3, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 22ms
Test suite progress: tests succeeded: 99, failed: 3, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 100, failed: 3, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 101, failed: 3, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 102, failed: 3, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 103, failed: 3, skipped: 5.
Starting test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 104, failed: 3, skipped: 5.
Starting test testTemplateBuilderWithImageIdSpecified(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderWithImageIdSpecified(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 12777ms
Test suite progress: tests succeeded: 105, failed: 3, skipped: 5.
Starting test testTemplateBuilderWithLoginUserSpecified(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilderWithLoginUserSpecified(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 13054ms
Test suite progress: tests succeeded: 106, failed: 3, skipped: 5.
Starting test testTemplateBuilder(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest)
[TestNG] Test testTemplateBuilder(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest) succeeded: 4ms
Test suite progress: tests succeeded: 107, failed: 3, skipped: 5.
Starting test testListFlavors(org.jclouds.hpcloud.compute.features.HPCloudComputeFlavorApiLiveTest)
[TestNG] Test testListFlavors(org.jclouds.hpcloud.compute.features.HPCloudComputeFlavorApiLiveTest) succeeded: 1077ms
Test suite progress: tests succeeded: 108, failed: 3, skipped: 5.
Starting test testListFlavorsInDetail(org.jclouds.hpcloud.compute.features.HPCloudComputeFlavorApiLiveTest)
[TestNG] Test testListFlavorsInDetail(org.jclouds.hpcloud.compute.features.HPCloudComputeFlavorApiLiveTest) succeeded: 1130ms
Test suite progress: tests succeeded: 109, failed: 3, skipped: 5.
Starting test testGetFlavorById(org.jclouds.hpcloud.compute.features.HPCloudComputeFlavorApiLiveTest)
[TestNG] Test testGetFlavorById(org.jclouds.hpcloud.compute.features.HPCloudComputeFlavorApiLiveTest) succeeded: 8505ms
Test suite progress: tests succeeded: 110, failed: 3, skipped: 5.
Starting test testAddAndRemoveFloatingIp(org.jclouds.hpcloud.compute.features.HPCloudComputeFloatingIPApiLiveTest)
blocking on status ACTIVE
Server{id=212223, name=adriancole, links=[Link{relation=SELF, href=https://az-3.region-a.geo-1.compute.hpcloudsvc.com/v1.1/37936628937291/servers/212223}, Link{relation=BOOKMARK, href=https://az-3.region-a.geo-1.compute.hpcloudsvc.com/37936628937291/servers/212223}], uuid=2419b362-bc88-4091-8a25-799a9d238d45, tenantId=37936628937291, userId=54297837463082, updated=Mon Sep 17 00:21:15 PDT 2012, created=Mon Sep 17 00:21:14 PDT 2012, hostId=51615f219e2befa09430e7734053d0b2a05b41331b0a20d5b2287a5b, accessIPv4=null, accessIPv6=null, status=BUILD, image=Resource{id=100, name=null, links=[Link{relation=BOOKMARK, href=https://az-3.region-a.geo-1.compute.hpcloudsvc.com/37936628937291/images/100}]}, flavor=Resource{id=100, name=null, links=[Link{relation=BOOKMARK, href=https://az-3.region-a.geo-1.compute.hpcloudsvc.com/37936628937291/flavors/100}]}, keyName=null, configDrive=null, addresses={}, metadata={}, extendedStatus=Optional.absent(), extendedAttributes=Optional.absent(), diskConfig=Optional.absent()}
blocking on status ACTIVE
Server{id=212223, name=adriancole, links=[Link{relation=SELF, href=https://az-3.region-a.geo-1.compute.hpcloudsvc.com/v1.1/37936628937291/servers/212223}, Link{relation=BOOKMARK, href=https://az-3.region-a.geo-1.compute.hpcloudsvc.com/37936628937291/servers/212223}], uuid=2419b362-bc88-4091-8a25-799a9d238d45, tenantId=37936628937291, userId=54297837463082, updated=Mon Sep 17 00:21:17 PDT 2012, created=Mon Sep 17 00:21:14 PDT 2012, hostId=51615f219e2befa09430e7734053d0b2a05b41331b0a20d5b2287a5b, accessIPv4=null, accessIPv6=null, status=BUILD, image=Resource{id=100, name=null, links=[Link{relation=BOOKMARK, href=https://az-3.region-a.geo-1.compute.hpcloudsvc.com/37936628937291/images/100}]}, flavor=Resource{id=100, name=null, links=[Link{relation=BOOKMARK, href=https://az-3.region-a.geo-1.compute.hpcloudsvc.com/37936628937291/flavors/100}]}, keyName=null, configDrive=null, addresses={private=[Address{addr=10.2.83.191, version=4}, Address{addr=15.185.224.249, version=4}]}, metadata={}, extendedStatus=Optional.absent(), extendedAttributes=Optional.absent(), diskConfig=Optional.absent()}
blocking on status ACTIVE
Server{id=511311, name=adriancole, links=[Link{relation=SELF, href=https://az-2.region-a.geo-1.compute.hpcloudsvc.com/v1.1/37936628937291/servers/511311}, Link{relation=BOOKMARK, href=https://az-2.region-a.geo-1.compute.hpcloudsvc.com/37936628937291/servers/511311}], uuid=7c5e53ec-18a4-47c7-95b2-d25a834e793c, tenantId=37936628937291, userId=54297837463082, updated=Mon Sep 17 00:21:37 PDT 2012, created=Mon Sep 17 00:21:36 PDT 2012, hostId=cdbd1da59f08e755496aec64596c9e888aa4cebdb870e99d51920860, accessIPv4=null, accessIPv6=null, status=BUILD, image=Resource{id=219, name=null, links=[Link{relation=BOOKMARK, href=https://az-2.region-a.geo-1.compute.hpcloudsvc.com/37936628937291/images/219}]}, flavor=Resource{id=100, name=null, links=[Link{relation=BOOKMARK, href=https://az-2.region-a.geo-1.compute.hpcloudsvc.com/37936628937291/flavors/100}]}, keyName=null, configDrive=null, addresses={}, metadata={}, extendedStatus=Optional.absent(), extendedAttributes=Optional.absent(), diskConfig=Optional.absent()}
blocking on status ACTIVE
Server{id=511311, name=adriancole, links=[Link{relation=SELF, href=https://az-2.region-a.geo-1.compute.hpcloudsvc.com/v1.1/37936628937291/servers/511311}, Link{relation=BOOKMARK, href=https://az-2.region-a.geo-1.compute.hpcloudsvc.com/37936628937291/servers/511311}], uuid=7c5e53ec-18a4-47c7-95b2-d25a834e793c, tenantId=37936628937291, userId=54297837463082, updated=Mon Sep 17 00:21:39 PDT 2012, created=Mon Sep 17 00:21:36 PDT 2012, hostId=cdbd1da59f08e755496aec64596c9e888aa4cebdb870e99d51920860, accessIPv4=null, accessIPv6=null, status=BUILD, image=Resource{id=219, name=null, links=[Link{relation=BOOKMARK, href=https://az-2.region-a.geo-1.compute.hpcloudsvc.com/37936628937291/images/219}]}, flavor=Resource{id=100, name=null, links=[Link{relation=BOOKMARK, href=https://az-2.region-a.geo-1.compute.hpcloudsvc.com/37936628937291/flavors/100}]}, keyName=null, configDrive=null, addresses={private=[Address{addr=10.7.244.49, version=4}, Address{addr=15.185.165.97, version=4}]}, metadata={}, extendedStatus=Optional.absent(), extendedAttributes=Optional.absent(), diskConfig=Optional.absent()}
blocking on status ACTIVE
Server{id=376271, name=adriancole, links=[Link{relation=SELF, href=https://az-1.region-a.geo-1.compute.hpcloudsvc.com/v1.1/37936628937291/servers/376271}, Link{relation=BOOKMARK, href=https://az-1.region-a.geo-1.compute.hpcloudsvc.com/37936628937291/servers/376271}], uuid=549d9799-73fb-47a1-b829-adeb58e16e26, tenantId=37936628937291, userId=54297837463082, updated=Mon Sep 17 00:21:57 PDT 2012, created=Mon Sep 17 00:21:56 PDT 2012, hostId=da8ed18cacdda37c84eea6472921f38e868f82b3050391ac74e36d87, accessIPv4=null, accessIPv6=null, status=BUILD, image=Resource{id=1232, name=null, links=[Link{relation=BOOKMARK, href=https://az-1.region-a.geo-1.compute.hpcloudsvc.com/37936628937291/images/1232}]}, flavor=Resource{id=100, name=null, links=[Link{relation=BOOKMARK, href=https://az-1.region-a.geo-1.compute.hpcloudsvc.com/37936628937291/flavors/100}]}, keyName=null, configDrive=null, addresses={}, metadata={}, extendedStatus=Optional.absent(), extendedAttributes=Optional.absent(), diskConfig=Optional.absent()}
blocking on status ACTIVE
Server{id=376271, name=adriancole, links=[Link{relation=SELF, href=https://az-1.region-a.geo-1.compute.hpcloudsvc.com/v1.1/37936628937291/servers/376271}, Link{relation=BOOKMARK, href=https://az-1.region-a.geo-1.compute.hpcloudsvc.com/37936628937291/servers/376271}], uuid=549d9799-73fb-47a1-b829-adeb58e16e26, tenantId=37936628937291, userId=54297837463082, updated=Mon Sep 17 00:21:59 PDT 2012, created=Mon Sep 17 00:21:56 PDT 2012, hostId=da8ed18cacdda37c84eea6472921f38e868f82b3050391ac74e36d87, accessIPv4=null, accessIPv6=null, status=BUILD, image=Resource{id=1232, name=null, links=[Link{relation=BOOKMARK, href=https://az-1.region-a.geo-1.compute.hpcloudsvc.com/37936628937291/images/1232}]}, flavor=Resource{id=100, name=null, links=[Link{relation=BOOKMARK, href=https://az-1.region-a.geo-1.compute.hpcloudsvc.com/37936628937291/flavors/100}]}, keyName=null, configDrive=null, addresses={private=[Address{addr=10.4.234.34, version=4}, Address{addr=15.185.108.61, version=4}]}, metadata={}, extendedStatus=Optional.absent(), extendedAttributes=Optional.absent(), diskConfig=Optional.absent()}
[TestNG] Test testAddAndRemoveFloatingIp(org.jclouds.hpcloud.compute.features.HPCloudComputeFloatingIPApiLiveTest) succeeded: 62450ms
Test suite progress: tests succeeded: 111, failed: 3, skipped: 5.
Starting test testAllocateAndDecreateFloatingIPs(org.jclouds.hpcloud.compute.features.HPCloudComputeFloatingIPApiLiveTest)
[TestNG] Test testAllocateAndDecreateFloatingIPs(org.jclouds.hpcloud.compute.features.HPCloudComputeFloatingIPApiLiveTest) succeeded: 6593ms
Test suite progress: tests succeeded: 112, failed: 3, skipped: 5.
Starting test testListFloatingIPs(org.jclouds.hpcloud.compute.features.HPCloudComputeFloatingIPApiLiveTest)
[TestNG] Test testListFloatingIPs(org.jclouds.hpcloud.compute.features.HPCloudComputeFloatingIPApiLiveTest) succeeded: 4644ms
Test suite progress: tests succeeded: 113, failed: 3, skipped: 5.
Starting test testListImages(org.jclouds.hpcloud.compute.features.HPCloudComputeImageApiLiveTest)
[TestNG] Test testListImages(org.jclouds.hpcloud.compute.features.HPCloudComputeImageApiLiveTest) succeeded: 4433ms
Test suite progress: tests succeeded: 114, failed: 3, skipped: 5.
Starting test testListImagesInDetail(org.jclouds.hpcloud.compute.features.HPCloudComputeImageApiLiveTest)
[TestNG] Test testListImagesInDetail(org.jclouds.hpcloud.compute.features.HPCloudComputeImageApiLiveTest) succeeded: 4307ms
Test suite progress: tests succeeded: 115, failed: 3, skipped: 5.
Starting test testGetImageById(org.jclouds.hpcloud.compute.features.HPCloudComputeImageApiLiveTest)
[TestNG] Test testGetImageById(org.jclouds.hpcloud.compute.features.HPCloudComputeImageApiLiveTest) succeeded: 77133ms
Test suite progress: tests succeeded: 116, failed: 3, skipped: 5.
Starting test testCreateAndDeleteKeyPair(org.jclouds.hpcloud.compute.features.HPCloudComputeKeyPairApiLiveTest)
[TestNG] Test testCreateAndDeleteKeyPair(org.jclouds.hpcloud.compute.features.HPCloudComputeKeyPairApiLiveTest) succeeded: 3674ms
Test suite progress: tests succeeded: 117, failed: 3, skipped: 5.
Starting test testCreateAndDeleteKeyPairWithPublicKey(org.jclouds.hpcloud.compute.features.HPCloudComputeKeyPairApiLiveTest)
[TestNG] Test testCreateAndDeleteKeyPairWithPublicKey(org.jclouds.hpcloud.compute.features.HPCloudComputeKeyPairApiLiveTest) succeeded: 3516ms
Test suite progress: tests succeeded: 118, failed: 3, skipped: 5.
Starting test testListKeyPairs(org.jclouds.hpcloud.compute.features.HPCloudComputeKeyPairApiLiveTest)
[TestNG] Test testListKeyPairs(org.jclouds.hpcloud.compute.features.HPCloudComputeKeyPairApiLiveTest) succeeded: 1535ms
Test suite progress: tests succeeded: 119, failed: 3, skipped: 5.
Starting test createAndDeleteSecurityGroupRule(org.jclouds.hpcloud.compute.features.HPCloudComputeSecurityGroupApiLiveTest)
[TestNG] Test createAndDeleteSecurityGroupRule(org.jclouds.hpcloud.compute.features.HPCloudComputeSecurityGroupApiLiveTest) succeeded: 10570ms
Test suite progress: tests succeeded: 120, failed: 3, skipped: 5.
Starting test createGetAndDeleteSecurityGroup(org.jclouds.hpcloud.compute.features.HPCloudComputeSecurityGroupApiLiveTest)
[TestNG] Test createGetAndDeleteSecurityGroup(org.jclouds.hpcloud.compute.features.HPCloudComputeSecurityGroupApiLiveTest) succeeded: 3327ms
Test suite progress: tests succeeded: 121, failed: 3, skipped: 5.
Starting test list(org.jclouds.hpcloud.compute.features.HPCloudComputeSecurityGroupApiLiveTest)
[TestNG] Test list(org.jclouds.hpcloud.compute.features.HPCloudComputeSecurityGroupApiLiveTest) succeeded: 1121ms
Test suite progress: tests succeeded: 122, failed: 3, skipped: 5.
Starting test testListServers(org.jclouds.hpcloud.compute.features.HPCloudComputeServerApiLiveTest)
[TestNG] Test testListServers(org.jclouds.hpcloud.compute.features.HPCloudComputeServerApiLiveTest) succeeded: 2040ms
Test suite progress: tests succeeded: 123, failed: 3, skipped: 5.
Starting test testListServersInDetail(org.jclouds.hpcloud.compute.features.HPCloudComputeServerApiLiveTest)
[TestNG] Test testListServersInDetail(org.jclouds.hpcloud.compute.features.HPCloudComputeServerApiLiveTest) succeeded: 2004ms
Test suite progress: tests succeeded: 124, failed: 3, skipped: 5.
Starting test testGetServerById(org.jclouds.hpcloud.compute.features.HPCloudComputeServerApiLiveTest)
[TestNG] Test testGetServerById(org.jclouds.hpcloud.compute.features.HPCloudComputeServerApiLiveTest) succeeded: 1719ms
Test suite progress: tests succeeded: 125, failed: 3, skipped: 5.
Starting test testCreateVolume(org.jclouds.hpcloud.compute.features.HPCloudComputeVolumeApiLiveTest)
[TestNG] Test testCreateVolume(org.jclouds.hpcloud.compute.features.HPCloudComputeVolumeApiLiveTest) failed.
Test suite progress: tests succeeded: 125, failed: 4, skipped: 5.
[TestNG] Test testAttachments(org.jclouds.hpcloud.compute.features.HPCloudComputeVolumeApiLiveTest) skipped.
Test suite progress: tests succeeded: 125, failed: 4, skipped: 6.
[TestNG] Test testCreateSnapshot(org.jclouds.hpcloud.compute.features.HPCloudComputeVolumeApiLiveTest) skipped.
Test suite progress: tests succeeded: 125, failed: 4, skipped: 7.
[TestNG] Test testListVolumes(org.jclouds.hpcloud.compute.features.HPCloudComputeVolumeApiLiveTest) skipped.
Test suite progress: tests succeeded: 125, failed: 4, skipped: 8.
[TestNG] Test testListVolumesInDetail(org.jclouds.hpcloud.compute.features.HPCloudComputeVolumeApiLiveTest) skipped.
Test suite progress: tests succeeded: 125, failed: 4, skipped: 9.
[TestNG] Test testListSnapshots(org.jclouds.hpcloud.compute.features.HPCloudComputeVolumeApiLiveTest) skipped.
Test suite progress: tests succeeded: 125, failed: 4, skipped: 10.
[TestNG] Test testListSnapshotsInDetail(org.jclouds.hpcloud.compute.features.HPCloudComputeVolumeApiLiveTest) skipped.
Test suite progress: tests succeeded: 125, failed: 4, skipped: 11.
Tests run: 140, Failures: 4, Errors: 0, Skipped: 11, Time elapsed: 1,864.423 sec <<< FAILURE!

Results :

Failed tests:   testCorrectAuthException(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest): (..)
  testGet(org.jclouds.hpcloud.compute.compute.HPCloudComputeComputeServiceLiveTest): [[15.185.169.61, 15.185.169.182]] didn't match: [1] expected:<1> but was:<2>
  testTemplateBuilderCannotFind(org.jclouds.hpcloud.compute.compute.HPCloudComputeTemplateBuilderLiveTest): (..)
  testCreateVolume(org.jclouds.hpcloud.compute.features.HPCloudComputeVolumeApiLiveTest): {"overLimit": {"message": "Volume quota exceeded. You cannot create a volume of size 1G", "code": 413, "retryAfter": 0}}

Tests run: 140, Failures: 4, Errors: 0, Skipped: 11

[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 31:35.781s
[INFO] Finished at: Mon Sep 17 00:24:34 PDT 2012
[INFO] Final Memory: 18M/265M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.12:test (integration) on project hpcloud-compute: There are test failures.
[ERROR] 
[ERROR] Please refer to /Users/adriancole/workspace/git/jclouds/providers/hpcloud-compute/target/surefire-reports for the individual test results.
[ERROR] -> [Help 1]
[ERROR] 
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR] 
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
