You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@whirr.apache.org by as...@apache.org on 2011/06/02 13:56:55 UTC

svn commit: r1130507 - in /incubator/whirr/trunk: ./ cli/src/main/java/org/apache/whirr/cli/command/ cli/src/test/java/org/apache/whirr/cli/command/

Author: asavu
Date: Thu Jun  2 11:56:54 2011
New Revision: 1130507

URL: http://svn.apache.org/viewvc?rev=1130507&view=rev
Log:
Temporary override Providers#withIds until jclouds beta-10 is out (asavu and Adrian Cole)

Modified:
    incubator/whirr/trunk/CHANGES.txt
    incubator/whirr/trunk/cli/src/main/java/org/apache/whirr/cli/command/DestroyInstanceCommand.java
    incubator/whirr/trunk/cli/src/main/java/org/apache/whirr/cli/command/RunScriptCommand.java
    incubator/whirr/trunk/cli/src/test/java/org/apache/whirr/cli/command/DestroyInstanceCommandTest.java
    incubator/whirr/trunk/cli/src/test/java/org/apache/whirr/cli/command/RunScriptCommandTest.java

Modified: incubator/whirr/trunk/CHANGES.txt
URL: http://svn.apache.org/viewvc/incubator/whirr/trunk/CHANGES.txt?rev=1130507&r1=1130506&r2=1130507&view=diff
==============================================================================
--- incubator/whirr/trunk/CHANGES.txt (original)
+++ incubator/whirr/trunk/CHANGES.txt Thu Jun  2 11:56:54 2011
@@ -8,6 +8,11 @@ Trunk (unreleased changes)
 
     WHIRR-319. Run rat & checkstyle before packaging (tomwhite and asavu)
 
+  BUG FIXES
+
+    WHIRR-315. Temporary override Providers#withIds until jclouds 
+    beta-10 is out (asavu and Adrian Cole)
+
 Release 0.5.0 - 2011-05-16
 
   INCOMPATIBLE CHANGES

Modified: incubator/whirr/trunk/cli/src/main/java/org/apache/whirr/cli/command/DestroyInstanceCommand.java
URL: http://svn.apache.org/viewvc/incubator/whirr/trunk/cli/src/main/java/org/apache/whirr/cli/command/DestroyInstanceCommand.java?rev=1130507&r1=1130506&r2=1130507&view=diff
==============================================================================
--- incubator/whirr/trunk/cli/src/main/java/org/apache/whirr/cli/command/DestroyInstanceCommand.java (original)
+++ incubator/whirr/trunk/cli/src/main/java/org/apache/whirr/cli/command/DestroyInstanceCommand.java Thu Jun  2 11:56:54 2011
@@ -79,7 +79,7 @@ public class DestroyInstanceCommand exte
   }
 
   private void printUsage(OptionParser parser, PrintStream stream) throws IOException {
-    stream.println("Usage: whirr destroy-instance --instance-id <ID> [OPTIONS]");
+    stream.println("Usage: whirr destroy-instance --instance-id <region/ID> [OPTIONS]");
     stream.println();
     parser.printHelpOn(stream);
   }

Modified: incubator/whirr/trunk/cli/src/main/java/org/apache/whirr/cli/command/RunScriptCommand.java
URL: http://svn.apache.org/viewvc/incubator/whirr/trunk/cli/src/main/java/org/apache/whirr/cli/command/RunScriptCommand.java?rev=1130507&r1=1130506&r2=1130507&view=diff
==============================================================================
--- incubator/whirr/trunk/cli/src/main/java/org/apache/whirr/cli/command/RunScriptCommand.java (original)
+++ incubator/whirr/trunk/cli/src/main/java/org/apache/whirr/cli/command/RunScriptCommand.java Thu Jun  2 11:56:54 2011
@@ -20,6 +20,7 @@ package org.apache.whirr.cli.command;
 
 import com.google.common.base.Predicate;
 import com.google.common.base.Predicates;
+import com.google.common.collect.ImmutableSet;
 import com.google.common.collect.Iterables;
 import com.google.common.collect.Lists;
 import com.google.common.collect.Sets;
@@ -33,10 +34,12 @@ import org.apache.whirr.ClusterControlle
 import org.apache.whirr.ClusterControllerFactory;
 import org.apache.whirr.ClusterSpec;
 import org.apache.whirr.service.ClusterStateStoreFactory;
+import org.jclouds.compute.domain.ComputeMetadata;
 import org.jclouds.compute.domain.ExecResponse;
 import org.jclouds.compute.domain.NodeMetadata;
 import org.jclouds.scriptbuilder.domain.Statement;
 
+import javax.annotation.Nullable;
 import java.io.File;
 import java.io.IOException;
 import java.io.InputStream;
@@ -44,9 +47,10 @@ import java.io.PrintStream;
 import java.nio.charset.Charset;
 import java.util.List;
 import java.util.Map;
+import java.util.Set;
 
+import static com.google.common.base.Preconditions.checkNotNull;
 import static org.apache.whirr.RolePredicates.anyRoleIn;
-import static org.jclouds.compute.predicates.NodePredicates.withIds;
 import static org.jclouds.scriptbuilder.domain.Statements.exec;
 
 public class RunScriptCommand extends  AbstractClusterSpecCommand {
@@ -130,7 +134,7 @@ public class RunScriptCommand extends  A
       Cluster cluster = createClusterStateStore(spec).load();
       for (Cluster.Instance instance : cluster.getInstancesMatching(
         anyRoleIn(Sets.<String>newHashSet(roles)))) {
-        ids.add(instance.getId().split("\\/")[1]);
+        ids.add(instance.getId());
       }
 
       condition = Predicates.and(condition,
@@ -139,6 +143,25 @@ public class RunScriptCommand extends  A
     return condition;
   }
 
+  /**
+   * temporary override Providers#withIds until jclouds beta-10 is out
+   */
+  @Deprecated
+  private <T extends ComputeMetadata> Predicate<T> withIds(String ... ids) {
+    final Set<String> search = ImmutableSet.copyOf(checkNotNull(ids, "ids must be defined"));
+    return new Predicate<T>() {
+      @Override
+      public boolean apply(@Nullable T computeMetadata) {
+        if (computeMetadata != null) return search.contains(computeMetadata.getId());
+        return false;
+      }
+      @Override
+      public String toString() {
+        return "withIds(" + search + ")";
+      }
+    };
+  }
+
   private int handleScriptOutput(PrintStream out, PrintStream err,
                                  Map<? extends NodeMetadata, ExecResponse> responses) {
     int rc = 0;

Modified: incubator/whirr/trunk/cli/src/test/java/org/apache/whirr/cli/command/DestroyInstanceCommandTest.java
URL: http://svn.apache.org/viewvc/incubator/whirr/trunk/cli/src/test/java/org/apache/whirr/cli/command/DestroyInstanceCommandTest.java?rev=1130507&r1=1130506&r2=1130507&view=diff
==============================================================================
--- incubator/whirr/trunk/cli/src/test/java/org/apache/whirr/cli/command/DestroyInstanceCommandTest.java (original)
+++ incubator/whirr/trunk/cli/src/test/java/org/apache/whirr/cli/command/DestroyInstanceCommandTest.java Thu Jun  2 11:56:54 2011
@@ -69,7 +69,7 @@ public class DestroyInstanceCommandTest 
     assertThat(errOutput, containsString("You need to specify " +
         "an instance ID."));
     assertThat(errOutput, containsString("Usage: whirr destroy-instance" +
-        " --instance-id <ID> [OPTIONS]"));
+        " --instance-id <region/ID> [OPTIONS]"));
   }
 
   @Test

Modified: incubator/whirr/trunk/cli/src/test/java/org/apache/whirr/cli/command/RunScriptCommandTest.java
URL: http://svn.apache.org/viewvc/incubator/whirr/trunk/cli/src/test/java/org/apache/whirr/cli/command/RunScriptCommandTest.java?rev=1130507&r1=1130506&r2=1130507&view=diff
==============================================================================
--- incubator/whirr/trunk/cli/src/test/java/org/apache/whirr/cli/command/RunScriptCommandTest.java (original)
+++ incubator/whirr/trunk/cli/src/test/java/org/apache/whirr/cli/command/RunScriptCommandTest.java Thu Jun  2 11:56:54 2011
@@ -147,7 +147,7 @@ public class RunScriptCommandTest {
     // check predicate equality by using the object string representation
 
     Predicate<NodeMetadata> expected = Predicates.and(
-      Predicates.<NodeMetadata>alwaysTrue(), withIds("A"));
+      Predicates.<NodeMetadata>alwaysTrue(), withIds("reg/A"));
     assertThat(predicate.getValue().toString(), is(expected.toString()));
 
   }