[INFO] Scanning for projects...
[WARNING] 
[WARNING] Some problems were encountered while building the effective model for org.jclouds.provider:cloudloadbalancers-us:bundle:1.4.0-SNAPSHOT
[WARNING] 'parent.relativePath' of POM org.jclouds:jclouds-project:1.4.0-SNAPSHOT (/Users/adriancole/workspace/git/1.4.x/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.4.0-SNAPSHOT, /Users/adriancole/workspace/git/1.4.x/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 CloudLoadBalancers US provider 1.4.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO] 
[INFO] --- maven-clean-plugin:2.4.1:clean (default-clean) @ cloudloadbalancers-us ---
[INFO] Deleting /Users/adriancole/workspace/git/1.4.x/jclouds/providers/cloudloadbalancers-us/target
[INFO] 
[INFO] --- maven-enforcer-plugin:1.0.1:enforce (enforce-maven) @ cloudloadbalancers-us ---
[INFO] 
[INFO] --- maven-enforcer-plugin:1.0.1:enforce (enforce-banned-dependencies) @ cloudloadbalancers-us ---
[INFO] 
[INFO] --- maven-enforcer-plugin:1.0.1:enforce (enforce-java) @ cloudloadbalancers-us ---
[INFO] 
[INFO] --- maven-remote-resources-plugin:1.2:process (process-remote-resources) @ cloudloadbalancers-us ---
[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) @ cloudloadbalancers-us ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory /Users/adriancole/workspace/git/1.4.x/jclouds/providers/cloudloadbalancers-us/src/main/clojure
[INFO] Copying 1 resource
[INFO] Copying 2 resources
[INFO] 
[INFO] --- maven-compiler-plugin:2.3:compile (default-compile) @ cloudloadbalancers-us ---
[INFO] Compiling 2 source files to /Users/adriancole/workspace/git/1.4.x/jclouds/providers/cloudloadbalancers-us/target/classes
[INFO] 
[INFO] --- maven-resources-plugin:2.4.2:testResources (default-testResources) @ cloudloadbalancers-us ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory /Users/adriancole/workspace/git/1.4.x/jclouds/providers/cloudloadbalancers-us/src/test/clojure
[INFO] skip non existing resourceDirectory /Users/adriancole/workspace/git/1.4.x/jclouds/providers/cloudloadbalancers-us/src/test/resources
[INFO] Copying 2 resources
[INFO] 
[INFO] --- maven-compiler-plugin:2.3:testCompile (default-testCompile) @ cloudloadbalancers-us ---
[INFO] Compiling 3 source files to /Users/adriancole/workspace/git/1.4.x/jclouds/providers/cloudloadbalancers-us/target/test-classes
[INFO] 
[INFO] --- maven-surefire-plugin:2.10:test (default-test) @ cloudloadbalancers-us ---
[INFO] Surefire report directory: /Users/adriancole/workspace/git/1.4.x/jclouds/providers/cloudloadbalancers-us/target/surefire-reports
[INFO] Using configured provider org.apache.maven.surefire.testng.TestNGProvider

-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSProviderTest
Starting test testOfTypeContains(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSProviderTest)
Starting test testAllContains(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSProviderTest)
Starting test testInRestProperties(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSProviderTest)
Starting test testWithId(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSProviderTest)
[pool-2-thread-3] Test testOfTypeContains(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSProviderTest) succeeded: 45ms
Test suite progress: tests succeeded: 1, failed: 0, skipped: 0.
[pool-2-thread-1] Test testAllContains(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSProviderTest) succeeded: 30ms
Test suite progress: tests succeeded: 2, failed: 0, skipped: 0.
[pool-2-thread-4] Test testWithId(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSProviderTest) succeeded: 35ms
Test suite progress: tests succeeded: 3, failed: 0, skipped: 0.
[pool-2-thread-2] Test testInRestProperties(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSProviderTest) succeeded: 123ms
Test suite progress: tests succeeded: 4, failed: 0, skipped: 0.
Tests run: 4, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.794 sec

Results :

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

[INFO] 
[INFO] --- clojure-maven-plugin:1.3.8:test (test-clojure) @ cloudloadbalancers-us ---

Testing com.theoryinpractise.clojure.testrunner

Ran 0 tests containing 0 assertions.
0 failures, 0 errors.
[INFO] 
[INFO] --- maven-bundle-plugin:2.3.4:bundle (default-bundle) @ cloudloadbalancers-us ---
[INFO] 
[INFO] --- maven-source-plugin:2.1.1:jar-no-fork (attach-sources) @ cloudloadbalancers-us ---
[INFO] Building jar: /Users/adriancole/workspace/git/1.4.x/jclouds/providers/cloudloadbalancers-us/target/cloudloadbalancers-us-1.4.0-SNAPSHOT-sources.jar
[INFO] 
[INFO] --- maven-javadoc-plugin:2.8:jar (javadoc) @ cloudloadbalancers-us ---
[INFO] Skipping javadoc generation
[INFO] 
[INFO] --- maven-jar-plugin:2.3.1:test-jar (default) @ cloudloadbalancers-us ---
[INFO] Building jar: /Users/adriancole/workspace/git/1.4.x/jclouds/providers/cloudloadbalancers-us/target/cloudloadbalancers-us-1.4.0-SNAPSHOT-tests.jar
[INFO] 
[INFO] --- maven-surefire-plugin:2.10:test (integration) @ cloudloadbalancers-us ---
[INFO] Surefire report directory: /Users/adriancole/workspace/git/1.4.x/jclouds/providers/cloudloadbalancers-us/target/surefire-reports
[INFO] Using configured provider org.apache.maven.surefire.testng.TestNGProvider

-------------------------------------------------------
 T E S T S
-------------------------------------------------------
Running TestSuite
Starting test setupClient(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSLoadBalancerClientLiveTest)
Mar 7, 2012 4:49:31 PM org.jclouds.cloudloadbalancers.features.LoadBalancerClientLiveTest setupClient
INFO: running against regions [ORD, DFW]
[TestNG] Test setupClient(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSLoadBalancerClientLiveTest) succeeded: 305ms
Test suite progress: tests succeeded: 1, failed: 0, skipped: 0.
Starting test testCreateLoadBalancer(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSLoadBalancerClientLiveTest)
Mar 7, 2012 4:49:31 PM org.jclouds.cloudloadbalancers.features.LoadBalancerClientLiveTest testCreateLoadBalancer
INFO: starting lb in region ORD
Mar 7, 2012 4:50:11 PM org.jclouds.cloudloadbalancers.features.LoadBalancerClientLiveTest testCreateLoadBalancer
INFO: starting lb in region DFW
[TestNG] Test testCreateLoadBalancer(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSLoadBalancerClientLiveTest) succeeded: 51948ms
Test suite progress: tests succeeded: 2, failed: 0, skipped: 0.
Starting test testCreateLoadBalancers(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSNodeClientLiveTest)
Mar 7, 2012 4:50:23 PM org.jclouds.cloudloadbalancers.features.NodeClientLiveTest testCreateLoadBalancers
INFO: running against regions [ORD, DFW]
Mar 7, 2012 4:50:23 PM org.jclouds.cloudloadbalancers.features.NodeClientLiveTest testCreateLoadBalancers
INFO: starting lb in region ORD
Mar 7, 2012 4:51:00 PM org.jclouds.cloudloadbalancers.features.NodeClientLiveTest testCreateLoadBalancers
INFO: starting lb in region DFW
[TestNG] Test testCreateLoadBalancers(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSNodeClientLiveTest) succeeded: 51622ms
Test suite progress: tests succeeded: 3, failed: 0, skipped: 0.
Starting test testUpdateLoadBalancer(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSLoadBalancerClientLiveTest)
[TestNG] Test testUpdateLoadBalancer(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSLoadBalancerClientLiveTest) succeeded: 11376ms
Test suite progress: tests succeeded: 4, failed: 0, skipped: 0.
Starting test testAddNodes(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSNodeClientLiveTest)
Mar 7, 2012 4:51:26 PM org.jclouds.cloudloadbalancers.features.NodeClientLiveTest testAddNodes
INFO: starting node on loadbalancer 6009 in region DFW
Mar 7, 2012 4:51:28 PM org.jclouds.cloudloadbalancers.features.NodeClientLiveTest testAddNodes
INFO: starting node on loadbalancer 27989 in region ORD
[TestNG] Test testAddNodes(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSNodeClientLiveTest) succeeded: 5817ms
Test suite progress: tests succeeded: 5, failed: 0, skipped: 0.
Starting test testListLoadBalancers(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSLoadBalancerClientLiveTest)
[TestNG] Test testListLoadBalancers(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSLoadBalancerClientLiveTest) succeeded: 2508ms
Test suite progress: tests succeeded: 6, failed: 0, skipped: 0.
Starting test testModifyNode(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSNodeClientLiveTest)
[TestNG] Test testModifyNode(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSNodeClientLiveTest) succeeded: 2631ms
Test suite progress: tests succeeded: 7, failed: 0, skipped: 0.
Starting test testListNodes(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSNodeClientLiveTest)
[id=48019, address=192.168.1.1, condition=ENABLED,  port=8080,  weight=null, status=ONLINE]
[id=48021, address=192.168.1.2, condition=ENABLED,  port=8080,  weight=null, status=ONLINE]
[id=130569, address=192.168.1.1, condition=ENABLED,  port=8080,  weight=null, status=ONLINE]
[id=130571, address=192.168.1.2, condition=ENABLED,  port=8080,  weight=null, status=ONLINE]
[TestNG] Test testListNodes(org.jclouds.rackspace.cloudloadbalancers.CloudLoadBalancersUSNodeClientLiveTest) succeeded: 2401ms
Test suite progress: tests succeeded: 8, failed: 0, skipped: 0.
Tests run: 8, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 158.781 sec

Results :

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

[INFO] 
[INFO] --- maven-install-plugin:2.3:install (default-install) @ cloudloadbalancers-us ---
[INFO] Installing /Users/adriancole/workspace/git/1.4.x/jclouds/providers/cloudloadbalancers-us/target/cloudloadbalancers-us-1.4.0-SNAPSHOT.jar to /Users/adriancole/.m2/repository/org/jclouds/provider/cloudloadbalancers-us/1.4.0-SNAPSHOT/cloudloadbalancers-us-1.4.0-SNAPSHOT.jar
[INFO] Installing /Users/adriancole/workspace/git/1.4.x/jclouds/providers/cloudloadbalancers-us/pom.xml to /Users/adriancole/.m2/repository/org/jclouds/provider/cloudloadbalancers-us/1.4.0-SNAPSHOT/cloudloadbalancers-us-1.4.0-SNAPSHOT.pom
[INFO] Installing /Users/adriancole/workspace/git/1.4.x/jclouds/providers/cloudloadbalancers-us/target/cloudloadbalancers-us-1.4.0-SNAPSHOT-sources.jar to /Users/adriancole/.m2/repository/org/jclouds/provider/cloudloadbalancers-us/1.4.0-SNAPSHOT/cloudloadbalancers-us-1.4.0-SNAPSHOT-sources.jar
[INFO] Installing /Users/adriancole/workspace/git/1.4.x/jclouds/providers/cloudloadbalancers-us/target/cloudloadbalancers-us-1.4.0-SNAPSHOT-tests.jar to /Users/adriancole/.m2/repository/org/jclouds/provider/cloudloadbalancers-us/1.4.0-SNAPSHOT/cloudloadbalancers-us-1.4.0-SNAPSHOT-tests.jar
[INFO] 
[INFO] --- maven-bundle-plugin:2.3.4:install (default-install) @ cloudloadbalancers-us ---
[INFO] Installing org/jclouds/provider/cloudloadbalancers-us/1.4.0-SNAPSHOT/cloudloadbalancers-us-1.4.0-SNAPSHOT.jar
[INFO] Writing OBR metadata
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3:16.865s
[INFO] Finished at: Wed Mar 07 16:52:24 PST 2012
[INFO] Final Memory: 20M/265M
[INFO] ------------------------------------------------------------------------
