[INFO] Scanning for projects...
[WARNING] 
[WARNING] Some problems were encountered while building the effective model for org.jclouds.provider:elastichosts-sat-p:bundle:1.2.0-SNAPSHOT
[WARNING] 'parent.relativePath' of POM org.jclouds:jclouds-project:1.2.0-SNAPSHOT (/Users/adriancole/workspace/git/1.2.0/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.2.0-SNAPSHOT, /Users/adriancole/workspace/git/1.2.0/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 ElasticHosts Peer1 San Antonio provider 1.2.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO] 
[INFO] --- maven-clean-plugin:2.4.1:clean (default-clean) @ elastichosts-sat-p ---
[INFO] Deleting /Users/adriancole/workspace/git/1.2.0/jclouds/providers/elastichosts-sat-p/target
[INFO] 
[INFO] --- maven-enforcer-plugin:1.0.1:enforce (enforce-maven) @ elastichosts-sat-p ---
[INFO] 
[INFO] --- maven-enforcer-plugin:1.0.1:enforce (enforce-banned-dependencies) @ elastichosts-sat-p ---
[INFO] 
[INFO] --- maven-enforcer-plugin:1.0.1:enforce (enforce-java) @ elastichosts-sat-p ---
[INFO] 
[INFO] --- maven-remote-resources-plugin:1.2:process (process-remote-resources) @ elastichosts-sat-p ---
[INFO] Setting property: classpath.resource.loader.class => 'org.codehaus.plexus.velocity.ContextClassLoaderResourceLoader'.
[INFO] Setting property: velocimacro.messages.on => 'false'.
[INFO] Setting property: resource.loader => 'classpath'.
[INFO] Setting property: resource.manager.logwhenfound => 'false'.
[INFO] 
[INFO] --- maven-resources-plugin:2.4.2:resources (default-resources) @ elastichosts-sat-p ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory /Users/adriancole/workspace/git/1.2.0/jclouds/providers/elastichosts-sat-p/src/main/clojure
[INFO] Copying 2 resources
[INFO] Copying 2 resources
[INFO] 
[INFO] --- maven-compiler-plugin:2.3:compile (default-compile) @ elastichosts-sat-p ---
[INFO] Compiling 2 source files to /Users/adriancole/workspace/git/1.2.0/jclouds/providers/elastichosts-sat-p/target/classes
[INFO] 
[INFO] --- maven-resources-plugin:2.4.2:testResources (default-testResources) @ elastichosts-sat-p ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory /Users/adriancole/workspace/git/1.2.0/jclouds/providers/elastichosts-sat-p/src/test/clojure
[INFO] skip non existing resourceDirectory /Users/adriancole/workspace/git/1.2.0/jclouds/providers/elastichosts-sat-p/src/test/resources
[INFO] Copying 2 resources
[INFO] 
[INFO] --- maven-compiler-plugin:2.3:testCompile (default-testCompile) @ elastichosts-sat-p ---
[INFO] Compiling 4 source files to /Users/adriancole/workspace/git/1.2.0/jclouds/providers/elastichosts-sat-p/target/test-classes
[INFO] 
[INFO] --- maven-surefire-plugin:2.5:test (default-test) @ elastichosts-sat-p ---
[INFO] Surefire report directory: /Users/adriancole/workspace/git/1.2.0/jclouds/providers/elastichosts-sat-p/target/surefire-reports

-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running TestSuite
Starting test testInRestProperties(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioProviderTest)
Starting test testAllContains(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioProviderTest)
Starting test testOfTypeContains(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioProviderTest)
Starting test testWithId(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioProviderTest)
[pool-2-thread-3] Test testAllContains(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioProviderTest) succeeded: 32ms
Test suite progress: tests succeeded: 1, failed: 0, skipped: 0.
[pool-2-thread-2] Test testWithId(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioProviderTest) succeeded: 14ms
Test suite progress: tests succeeded: 2, failed: 0, skipped: 0.
[pool-2-thread-4] Test testOfTypeContains(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioProviderTest) succeeded: 29ms
Test suite progress: tests succeeded: 3, failed: 0, skipped: 0.
[pool-2-thread-1] Test testInRestProperties(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioProviderTest) succeeded: 122ms
Test suite progress: tests succeeded: 4, failed: 0, skipped: 0.
Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.384 sec

Results :

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

[INFO] 
[INFO] --- clojure-maven-plugin:1.3.3:test (test-clojure) @ elastichosts-sat-p ---

Testing user

Ran 0 tests containing 0 assertions.
0 failures, 0 errors.
[INFO] 
[INFO] --- maven-bundle-plugin:2.3.4:bundle (default-bundle) @ elastichosts-sat-p ---
[INFO] 
[INFO] --- maven-source-plugin:2.1.1:jar-no-fork (attach-sources) @ elastichosts-sat-p ---
[INFO] Building jar: /Users/adriancole/workspace/git/1.2.0/jclouds/providers/elastichosts-sat-p/target/elastichosts-sat-p-1.2.0-SNAPSHOT-sources.jar
[INFO] 
[INFO] --- maven-javadoc-plugin:2.8:jar (javadoc) @ elastichosts-sat-p ---
[INFO] Skipping javadoc generation
[INFO] 
[INFO] --- maven-jar-plugin:2.3.1:test-jar (default) @ elastichosts-sat-p ---
[INFO] Building jar: /Users/adriancole/workspace/git/1.2.0/jclouds/providers/elastichosts-sat-p/target/elastichosts-sat-p-1.2.0-SNAPSHOT-tests.jar
[INFO] 
[INFO] --- maven-surefire-plugin:2.5:test (integration) @ elastichosts-sat-p ---
[INFO] Surefire report directory: /Users/adriancole/workspace/git/1.2.0/jclouds/providers/elastichosts-sat-p/target/surefire-reports

-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running TestSuite
Starting test testCreateDrive(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioClientLiveTest)
Starting test setServiceDefaults(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioComputeServiceLiveTest)
[pool-2-thread-2] Test setServiceDefaults(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioComputeServiceLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 1, failed: 0, skipped: 0.
Starting test testCompareSizes(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioComputeServiceLiveTest)
Oct 15, 2011 11:17:35 AM org.jclouds.compute.BaseComputeServiceLiveTest testCompareSizes
INFO: smallest [id=cpu=1000.000000,ram=512,disk=1.000000, providerId=cpu=1000.000000,ram=512,disk=1.000000, name=null, processors=[[cores=1.0, speed=1000.0]], ram=512, volumes=[[id=null, type=LOCAL, size=1.0, device=null, durable=true, isBootDevice=true]], supportsImage=sizeLessThanOrEqual(1.0), tags=[]]
Oct 15, 2011 11:17:35 AM org.jclouds.compute.BaseComputeServiceLiveTest testCompareSizes
INFO: fastest [id=cpu=20000.000000,ram=512,disk=20.000000, providerId=cpu=20000.000000,ram=512,disk=20.000000, name=null, processors=[[cores=1.0, speed=20000.0]], ram=512, volumes=[[id=null, type=LOCAL, size=20.0, device=null, durable=true, isBootDevice=true]], supportsImage=sizeLessThanOrEqual(20.0), tags=[]]
Oct 15, 2011 11:17:35 AM org.jclouds.compute.BaseComputeServiceLiveTest testCompareSizes
INFO: biggest [id=cpu=20000.000000,ram=8192,disk=20.000000, providerId=cpu=20000.000000,ram=8192,disk=20.000000, name=null, processors=[[cores=1.0, speed=20000.0]], ram=8192, volumes=[[id=null, type=LOCAL, size=20.0, device=null, durable=true, isBootDevice=true]], supportsImage=sizeLessThanOrEqual(20.0), tags=[]]
[pool-2-thread-2] Test testCompareSizes(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioComputeServiceLiveTest) succeeded: 12017ms
Test suite progress: tests succeeded: 2, failed: 0, skipped: 0.
Starting test testAScriptExecutionAfterBootWithBasicTemplate(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioComputeServiceLiveTest)
[pool-2-thread-1] Test testCreateDrive(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioClientLiveTest) succeeded: 13091ms
Test suite progress: tests succeeded: 3, failed: 0, skipped: 0.
Starting test testSetDriveData(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioClientLiveTest)
[pool-2-thread-1] Test testSetDriveData(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioClientLiveTest) succeeded: 1650ms
Test suite progress: tests succeeded: 4, failed: 0, skipped: 0.
Starting test testCreateAndStartServer(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioClientLiveTest)
Oct 15, 2011 11:17:38 AM org.jclouds.elasticstack.ElasticStackClientLiveTest testCreateAndStartServer
INFO: preparing drive
before prepare[size=1073741824, claimType=shared, readers=[ffffffff-ffff-ffff-ffff-ffffffffffff], uuid=7d98e5b7-8dca-4d2a-8b01-14a4f90206db, name=rediculous, tags=[networking, security, gateway], userMetadata={foo=bar}, status=active, user=8df7463d-94d0-4564-9037-30665f45ba47, claimed=[], encryptionCipher=aes-xts-plain, imaging=null, metrics=[readBytes=0, readRequests=0, writeBytes=0, writeRequests=0]]
after prepare[size=1073741824, claimType=shared, readers=[ffffffff-ffff-ffff-ffff-ffffffffffff], uuid=7d98e5b7-8dca-4d2a-8b01-14a4f90206db, name=rediculous, tags=[networking, security, gateway], userMetadata={foo=bar}, status=active, user=8df7463d-94d0-4564-9037-30665f45ba47, claimed=[], encryptionCipher=aes-xts-plain, imaging=null, metrics=[readBytes=0, readRequests=0, writeBytes=0, writeRequests=0]]
Oct 15, 2011 11:18:14 AM org.jclouds.elasticstack.ElasticStackClientLiveTest testCreateAndStartServer
INFO: starting server
{"status":"ACTIVE","started":"Jan 15, 1970 10:18:22 PM","user":"8df7463d-94d0-4564-9037-30665f45ba47","metrics":{"txPackets":0,"tx":0,"rxPackets":0,"rx":0,"driveMetrics":{"ide:0:0":{"readBytes":0,"readRequests":0,"writeBytes":0,"writeRequests":0}}},"cpu":1000,"smp":1,"mem":512,"persistent":true,"devices":{"ide:0:0":{"bus":0,"unit":0,"driveUuid":"7d98e5b7-8dca-4d2a-8b01-14a4f90206db","mediaType":"DISK"}},"bootDeviceIds":["ide:0:0"],"nics":[{"dhcp":"216.157.83.203","model":"E1000","block":[]}],"vnc":{"ip":"216.157.83.203","password":"Il0veVNC","tls":false},"uuid":"e579f6d5-0e6b-42ed-98c0-23ecd04a2d7d","name":"adriancole.test","tags":[],"userMetadata":{}}
[pool-2-thread-1] Test testCreateAndStartServer(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioClientLiveTest) succeeded: 44197ms
Test suite progress: tests succeeded: 5, failed: 0, skipped: 0.
Oct 15, 2011 11:18:22 AM org.jclouds.elasticstack.ElasticStackClientLiveTest testConnectivity
INFO: awaiting vnc: [address=216.157.83.203, port=5900]
Starting test testConnectivity(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioClientLiveTest)
Oct 15, 2011 11:18:23 AM org.jclouds.elasticstack.ElasticStackClientLiveTest testConnectivity
INFO: awaiting ssh: [address=216.157.83.203, port=22]
SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/sda               1032824    486972    494932  50% /
none                    248456       160    248296   1% /dev
none                    252964         0    252964   0% /dev/shm
none                    252964        40    252924   1% /var/run
none                    252964         0    252964   0% /var/lock
none                    252964         0    252964   0% /lib/init/rw

/dev/sda on / type ext3 (rw,noatime)
proc on /proc type proc (rw)
none on /sys type sysfs (rw,noexec,nosuid,nodev)
none on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
none on /dev type devtmpfs (rw,mode=0755)
none on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
none on /dev/shm type tmpfs (rw,nosuid,nodev)
none on /var/run type tmpfs (rw,nosuid,mode=0755)
none on /var/lock type tmpfs (rw,noexec,nosuid,nodev)
none on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
none on /var/lib/ureadahead/debugfs type debugfs (rw,relatime)

Linux ubuntu 2.6.32-25-generic #44-Ubuntu SMP Fri Sep 17 20:05:27 UTC 2010 x86_64 GNU/Linux

[pool-2-thread-1] Test testConnectivity(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioClientLiveTest) succeeded: 19233ms
Test suite progress: tests succeeded: 6, failed: 0, skipped: 0.
Starting test testLifeCycle(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioClientLiveTest)
[pool-2-thread-1] Test testLifeCycle(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioClientLiveTest) succeeded: 10181ms
Test suite progress: tests succeeded: 7, failed: 0, skipped: 0.
Starting test testSetServerConfiguration(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioClientLiveTest)
[pool-2-thread-1] Test testSetServerConfiguration(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioClientLiveTest) succeeded: 3101ms
Test suite progress: tests succeeded: 8, failed: 0, skipped: 0.
Starting test testDestroyServer(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioClientLiveTest)
[pool-2-thread-1] Test testDestroyServer(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioClientLiveTest) succeeded: 704ms
Test suite progress: tests succeeded: 9, failed: 0, skipped: 0.
Starting test testDestroyDrive(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioClientLiveTest)
[pool-2-thread-1] Test testDestroyDrive(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioClientLiveTest) succeeded: 1669ms
Test suite progress: tests succeeded: 10, failed: 0, skipped: 0.
Starting test testWeCanReadAndWriteToDrive(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioClientLiveTest)
[pool-2-thread-1] Test testWeCanReadAndWriteToDrive(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioClientLiveTest) succeeded: 11361ms
Test suite progress: tests succeeded: 11, failed: 0, skipped: 0.
Starting test testWeCopyADriveContentsViaGzip(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioClientLiveTest)
<< problem applying options to node(40ad27f1-e935-43e6-aec2-5411df9d6000): 
org.jclouds.rest.AuthorizationException: (toor:password@216.157.83.178:22) (toor:password@216.157.83.178:22) error acquiring SSHClient(timeout=60000): Exhausted available authentication methods
	at org.jclouds.sshj.SshjSshClient.propagate(SshjSshClient.java:413)
	at org.jclouds.sshj.SshjSshClient.acquire(SshjSshClient.java:244)
	at org.jclouds.sshj.SshjSshClient.connect(SshjSshClient.java:255)
	at org.jclouds.compute.callables.RunScriptOnNodeUsingSsh.call(RunScriptOnNodeUsingSsh.java:73)
	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:204)
	at net.schmizz.sshj.SSHClient.auth(SSHClient.java:189)
	at net.schmizz.sshj.SSHClient.authPassword(SSHClient.java:265)
	at net.schmizz.sshj.SSHClient.authPassword(SSHClient.java:235)
	at net.schmizz.sshj.SSHClient.authPassword(SSHClient.java:219)
	at org.jclouds.sshj.SshjSshClient$1.create(SshjSshClient.java:195)
	at org.jclouds.sshj.SshjSshClient$1.create(SshjSshClient.java:171)
	at org.jclouds.sshj.SshjSshClient.acquire(SshjSshClient.java:220)
	... 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
before image; drive 2[size=4194304, claimType=exclusive, readers=[], uuid=86c25756-1be9-4d49-942d-0008f550a77d, name=adriancole.test2, tags=[], userMetadata={}, status=active, user=8df7463d-94d0-4564-9037-30665f45ba47, claimed=[], encryptionCipher=aes-xts-plain, imaging=null, metrics=[readBytes=0, readRequests=0, writeBytes=0, writeRequests=0]]
before image; drive 3[size=4194304, claimType=exclusive, readers=[], uuid=5cea7478-ecc6-4505-ae7c-2afc5deeb6e2, name=adriancole.test3, tags=[], userMetadata={}, status=active, user=8df7463d-94d0-4564-9037-30665f45ba47, claimed=[], encryptionCipher=aes-xts-plain, imaging=null, metrics=[readBytes=0, readRequests=0, writeBytes=0, writeRequests=0]]
after image; drive 2[size=4194304, claimType=exclusive, readers=[], uuid=86c25756-1be9-4d49-942d-0008f550a77d, name=adriancole.test2, tags=[], userMetadata={}, status=active, user=8df7463d-94d0-4564-9037-30665f45ba47, claimed=[], encryptionCipher=aes-xts-plain, imaging=null, metrics=[readBytes=0, readRequests=0, writeBytes=0, writeRequests=0]]
after image; drive 3[size=4194304, claimType=exclusive, readers=[], uuid=5cea7478-ecc6-4505-ae7c-2afc5deeb6e2, name=adriancole.test3, tags=[], userMetadata={}, status=active, user=8df7463d-94d0-4564-9037-30665f45ba47, claimed=[], encryptionCipher=aes-xts-plain, imaging=null, metrics=[readBytes=0, readRequests=0, writeBytes=0, writeRequests=0]]
[pool-2-thread-1] Test testWeCopyADriveContentsViaGzip(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioClientLiveTest) succeeded: 22746ms
Test suite progress: tests succeeded: 12, failed: 0, skipped: 0.
Starting test testCompareSizes(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
smallest [id=cpu=1000.000000,ram=512,disk=1.000000, providerId=cpu=1000.000000,ram=512,disk=1.000000, name=null, processors=[[cores=1.0, speed=1000.0]], ram=512, volumes=[[id=null, type=LOCAL, size=1.0, device=null, durable=true, isBootDevice=true]], supportsImage=sizeLessThanOrEqual(1.0), tags=[]]
fastest [id=cpu=20000.000000,ram=512,disk=20.000000, providerId=cpu=20000.000000,ram=512,disk=20.000000, name=null, processors=[[cores=1.0, speed=20000.0]], ram=512, volumes=[[id=null, type=LOCAL, size=20.0, device=null, durable=true, isBootDevice=true]], supportsImage=sizeLessThanOrEqual(20.0), tags=[]]
biggest [id=cpu=20000.000000,ram=8192,disk=20.000000, providerId=cpu=20000.000000,ram=8192,disk=20.000000, name=null, processors=[[cores=1.0, speed=20000.0]], ram=8192, volumes=[[id=null, type=LOCAL, size=20.0, device=null, durable=true, isBootDevice=true]], supportsImage=sizeLessThanOrEqual(20.0), tags=[]]
[pool-2-thread-1] Test testCompareSizes(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 12421ms
Test suite progress: tests succeeded: 13, failed: 0, skipped: 0.
Starting test testDefaultTemplateBuilder(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testDefaultTemplateBuilder(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 2ms
Test suite progress: tests succeeded: 14, failed: 0, skipped: 0.
Starting test testFromTemplate(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testFromTemplate(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 4ms
Test suite progress: tests succeeded: 15, failed: 0, skipped: 0.
Starting test testGetAssignableLocations(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testGetAssignableLocations(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 2ms
Test suite progress: tests succeeded: 16, failed: 0, skipped: 0.
location [id=elastichosts-sat-p, scope=PROVIDER, description=https://api.sat-p.elastichosts.com, parent=null, iso3166Codes=[US-TX], metadata={}]
Starting test testTemplateBuilderCanFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 3ms
Test suite progress: tests succeeded: 17, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 18, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 2ms
Test suite progress: tests succeeded: 19, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 2ms
Test suite progress: tests succeeded: 20, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 21, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 2ms
Test suite progress: tests succeeded: 22, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 30ms
Test suite progress: tests succeeded: 23, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 2ms
Test suite progress: tests succeeded: 24, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 2ms
Test suite progress: tests succeeded: 25, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 11ms
Test suite progress: tests succeeded: 26, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 6ms
Test suite progress: tests succeeded: 27, failed: 0, skipped: 0.
Starting test testTemplateBuilderCanUseImageId(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCanUseImageId(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 2ms
Test suite progress: tests succeeded: 28, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 29, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 30, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 31, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 32, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 33, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 34, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 35, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 36, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 37, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 38, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 9ms
Test suite progress: tests succeeded: 39, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 40, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 41, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 3ms
Test suite progress: tests succeeded: 42, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 2ms
Test suite progress: tests succeeded: 43, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 44, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 45, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 46, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 2ms
Test suite progress: tests succeeded: 47, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 48, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 49, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 50, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 51, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 52, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 53, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 54, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 55, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 56, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 57, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 58, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 59, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 60, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 4ms
Test suite progress: tests succeeded: 61, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 4ms
Test suite progress: tests succeeded: 62, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 2ms
Test suite progress: tests succeeded: 63, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 2ms
Test suite progress: tests succeeded: 64, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 65, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 66, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 67, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 68, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 69, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 70, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 71, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 72, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 73, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 74, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 75, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 76, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 77, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 78, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 79, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 80, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 81, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 82, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 83, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 84, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 85, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 86, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 87, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 88, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 89, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 90, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 91, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 92, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 93, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 94, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 95, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 96, failed: 0, skipped: 0.
Starting test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilderCannotFind(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 97, failed: 0, skipped: 0.
Starting test testTemplateBuilder(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest)
[pool-2-thread-1] Test testTemplateBuilder(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioTemplateBuilderLiveTest) succeeded: 2ms
Test suite progress: tests succeeded: 98, failed: 0, skipped: 0.
Starting test testGetDrive(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioClientLiveTest)
[pool-2-thread-1] Test testGetDrive(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioClientLiveTest) succeeded: 4710ms
Test suite progress: tests succeeded: 99, failed: 0, skipped: 0.
Starting test testGetServer(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioClientLiveTest)
[pool-2-thread-1] Test testGetServer(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioClientLiveTest) succeeded: 712ms
Test suite progress: tests succeeded: 100, failed: 0, skipped: 0.
Starting test testListDriveInfo(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioClientLiveTest)
[pool-2-thread-1] Test testListDriveInfo(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioClientLiveTest) succeeded: 387ms
Test suite progress: tests succeeded: 101, failed: 0, skipped: 0.
Starting test testListDrives(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioClientLiveTest)
[pool-2-thread-1] Test testListDrives(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioClientLiveTest) succeeded: 357ms
Test suite progress: tests succeeded: 102, failed: 0, skipped: 0.
Starting test testListServers(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioClientLiveTest)
[pool-2-thread-1] Test testListServers(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioClientLiveTest) succeeded: 372ms
Test suite progress: tests succeeded: 103, failed: 0, skipped: 0.
Starting test testListServerInfo(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioClientLiveTest)
[pool-2-thread-1] Test testListServerInfo(org.jclouds.elastichosts.ElasticHostsPeer1SanAntonioClientLiveTest) succeeded: 353ms
Test suite progress: tests succeeded: 104, failed: 0, skipped: 0.
[pool-2-thread-2] Test testAScriptExecutionAfterBootWithBasicTemplate(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioComputeServiceLiveTest) succeeded: 236489ms
Test suite progress: tests succeeded: 105, failed: 0, skipped: 0.
Starting test testCorrectAuthException(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioComputeServiceLiveTest)
[pool-2-thread-2] Test testCorrectAuthException(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioComputeServiceLiveTest) succeeded: 353ms
Test suite progress: tests succeeded: 106, failed: 0, skipped: 0.
Starting test testCreateAndRunAService(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioComputeServiceLiveTest)
Oct 15, 2011 11:22:38 AM org.jclouds.compute.BaseComputeServiceLiveTest testCreateAndRunAService
INFO: << available node(7c594cb9-2219-42d6-883f-39428e613b2a) os([name=Ubuntu Linux 10.10, family=ubuntu, version=10.10, arch=null, is64Bit=true, description=img/Ubuntu Linux 10.10/1]) in 65s
Oct 15, 2011 11:25:18 AM org.jclouds.compute.BaseComputeServiceLiveTest testCreateAndRunAService
INFO: << configured node(7c594cb9-2219-42d6-883f-39428e613b2a) with java full version "1.6.0_20-b20" in 151s
Oct 15, 2011 11:25:25 AM org.jclouds.compute.BaseComputeServiceLiveTest trackAvailabilityOfProcessOnNode
INFO: << initial start of jboss on node(7c594cb9-2219-42d6-883f-39428e613b2a) [backgroundProcessSeconds=4, socketOpenMilliseconds=5487, reportedStartupTimeMilliseconds=3352]
Oct 15, 2011 11:25:31 AM org.jclouds.compute.BaseComputeServiceLiveTest trackAvailabilityOfProcessOnNode
INFO: << warm start of jboss on node(7c594cb9-2219-42d6-883f-39428e613b2a) [backgroundProcessSeconds=2, socketOpenMilliseconds=3480, reportedStartupTimeMilliseconds=3066]
[pool-2-thread-2] Test testCreateAndRunAService(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioComputeServiceLiveTest) succeeded: 245804ms
Test suite progress: tests succeeded: 107, failed: 0, skipped: 0.
Starting test testCreateTwoNodesWithRunScript(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioComputeServiceLiveTest)
[pool-2-thread-2] Test testCreateTwoNodesWithRunScript(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioComputeServiceLiveTest) failed.
Oct 15, 2011 11:28:07 AM org.jclouds.compute.BaseComputeServiceLiveTest testGetAssignableLocations
Test suite progress: tests succeeded: 107, failed: 1, skipped: 0.
WARNING: location [id=elastichosts-sat-p, scope=PROVIDER, description=https://api.sat-p.elastichosts.com, parent=null, iso3166Codes=[US-TX], metadata={}]
[pool-2-thread-2] Test testCreateAnotherNodeWithANewContextToEnsureSharedMemIsntRequired(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioComputeServiceLiveTest) skipped.
Test suite progress: tests succeeded: 107, failed: 1, skipped: 1.
[pool-2-thread-2] Test testCredentialsCache(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioComputeServiceLiveTest) skipped.
Test suite progress: tests succeeded: 107, failed: 1, skipped: 2.
[pool-2-thread-2] Test testGet(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioComputeServiceLiveTest) skipped.
Test suite progress: tests succeeded: 107, failed: 1, skipped: 3.
Starting test testGetAssignableLocations(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioComputeServiceLiveTest)
[pool-2-thread-2] Test testGetAssignableLocations(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioComputeServiceLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 108, failed: 1, skipped: 3.
Starting test testImagesCache(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioComputeServiceLiveTest)
[pool-2-thread-2] Test testImagesCache(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioComputeServiceLiveTest) succeeded: 8944ms
Test suite progress: tests succeeded: 109, failed: 1, skipped: 3.
Starting test testListImages(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioComputeServiceLiveTest)
[pool-2-thread-2] Test testListImages(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioComputeServiceLiveTest) succeeded: 3ms
Test suite progress: tests succeeded: 110, failed: 1, skipped: 3.
Starting test testListSizes(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioComputeServiceLiveTest)
[pool-2-thread-2] Test testListSizes(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioComputeServiceLiveTest) succeeded: 1ms
Test suite progress: tests succeeded: 111, failed: 1, skipped: 3.
[pool-2-thread-2] Test testReboot(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioComputeServiceLiveTest) skipped.
Test suite progress: tests succeeded: 111, failed: 1, skipped: 4.
[pool-2-thread-2] Test testSuspendResume(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioComputeServiceLiveTest) skipped.
Test suite progress: tests succeeded: 111, failed: 1, skipped: 5.
[pool-2-thread-2] Test testGetNodesWithDetails(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioComputeServiceLiveTest) skipped.
Test suite progress: tests succeeded: 111, failed: 1, skipped: 6.
[pool-2-thread-2] Test testListNodes(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioComputeServiceLiveTest) skipped.
Test suite progress: tests succeeded: 111, failed: 1, skipped: 7.
[pool-2-thread-2] Test testDestroyNodes(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioComputeServiceLiveTest) skipped.
Test suite progress: tests succeeded: 111, failed: 1, skipped: 8.
Starting test testTemplateMatch(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioComputeServiceLiveTest)
[pool-2-thread-2] Test testTemplateMatch(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioComputeServiceLiveTest) succeeded: 2ms
Test suite progress: tests succeeded: 112, failed: 1, skipped: 8.
Starting test testCorrectExceptionRunningNodesNotFound(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioComputeServiceLiveTest)
[pool-2-thread-2] Test testCorrectExceptionRunningNodesNotFound(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioComputeServiceLiveTest) succeeded: 371ms
Test suite progress: tests succeeded: 113, failed: 1, skipped: 8.
Starting test testOptionToNotBlock(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioComputeServiceLiveTest)
[pool-2-thread-2] Test testOptionToNotBlock(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioComputeServiceLiveTest) succeeded: 0ms
Test suite progress: tests succeeded: 114, failed: 1, skipped: 8.
Tests run: 123, Failures: 1, Errors: 0, Skipped: 8, Time elapsed: 664.027 sec <<< FAILURE!

Results :

Failed tests: 
  testCreateTwoNodesWithRunScript(org.jclouds.elastichosts.compute.ElasticHostsPeer1SanAntonioComputeServiceLiveTest)

Tests run: 123, Failures: 1, Errors: 0, Skipped: 8

[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 11:18.670s
[INFO] Finished at: Sat Oct 15 11:28:25 PDT 2011
[INFO] Final Memory: 20M/125M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.5:test (integration) on project elastichosts-sat-p: There are test failures.
[ERROR] 
[ERROR] Please refer to /Users/adriancole/workspace/git/1.2.0/jclouds/providers/elastichosts-sat-p/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
