You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@slider.apache.org by go...@apache.org on 2015/11/13 02:06:50 UTC

incubator-slider git commit: SLIDER-653 slider flex does something instead of printing usage (Sherry Guo via gourksaha)

Repository: incubator-slider
Updated Branches:
  refs/heads/develop c2ae8e697 -> a0d4f93d8


SLIDER-653 slider flex does something instead of printing usage (Sherry Guo via gourksaha)


Project: http://git-wip-us.apache.org/repos/asf/incubator-slider/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-slider/commit/a0d4f93d
Tree: http://git-wip-us.apache.org/repos/asf/incubator-slider/tree/a0d4f93d
Diff: http://git-wip-us.apache.org/repos/asf/incubator-slider/diff/a0d4f93d

Branch: refs/heads/develop
Commit: a0d4f93d8ca81ca86a30915db624c2e3f646a221
Parents: c2ae8e6
Author: Gour Saha <go...@apache.org>
Authored: Thu Nov 12 17:06:31 2015 -0800
Committer: Gour Saha <go...@apache.org>
Committed: Thu Nov 12 17:06:31 2015 -0800

----------------------------------------------------------------------
 .../main/java/org/apache/slider/client/SliderClient.java |  8 ++++++--
 .../org/apache/slider/client/TestClientBadArgs.groovy    | 11 +++++++++++
 2 files changed, 17 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/a0d4f93d/slider-core/src/main/java/org/apache/slider/client/SliderClient.java
----------------------------------------------------------------------
diff --git a/slider-core/src/main/java/org/apache/slider/client/SliderClient.java b/slider-core/src/main/java/org/apache/slider/client/SliderClient.java
index 59e6848..f44b739 100644
--- a/slider-core/src/main/java/org/apache/slider/client/SliderClient.java
+++ b/slider-core/src/main/java/org/apache/slider/client/SliderClient.java
@@ -2709,11 +2709,15 @@ public class SliderClient extends AbstractSliderLaunchedService implements RunSe
   @Override
   @VisibleForTesting
   public int actionFlex(String name, ActionFlexArgs args) throws YarnException, IOException {
-    verifyBindingsDefined();
     validateClusterName(name);
+    Map<String, String> roleMap = args.getComponentMap();
+    // throw usage exception if no changes proposed
+    if (roleMap.size() == 0) {
+      actionHelp(ACTION_FLEX);
+    }
+    verifyBindingsDefined();
     log.debug("actionFlex({})", name);
     Map<String, Integer> roleInstances = new HashMap<>();
-    Map<String, String> roleMap = args.getComponentMap();
     for (Map.Entry<String, String> roleEntry : roleMap.entrySet()) {
       String key = roleEntry.getKey();
       String val = roleEntry.getValue();

http://git-wip-us.apache.org/repos/asf/incubator-slider/blob/a0d4f93d/slider-core/src/test/groovy/org/apache/slider/client/TestClientBadArgs.groovy
----------------------------------------------------------------------
diff --git a/slider-core/src/test/groovy/org/apache/slider/client/TestClientBadArgs.groovy b/slider-core/src/test/groovy/org/apache/slider/client/TestClientBadArgs.groovy
index 12736e3..1a90c88 100644
--- a/slider-core/src/test/groovy/org/apache/slider/client/TestClientBadArgs.groovy
+++ b/slider-core/src/test/groovy/org/apache/slider/client/TestClientBadArgs.groovy
@@ -237,4 +237,15 @@ class TestClientBadArgs extends ServiceLauncherBaseTest {
       assert exception instanceof BadCommandArgumentsException
       log.info(exception.toString())
     }
+
+  @Test
+  public void testFlexWithNoCompoents() throws Throwable {
+    def exception = launchExpectingException(SliderClient,
+        new Configuration(),
+        "Usage: slider flex <application>",
+        [SliderActions.ACTION_FLEX,
+        "flex1"])
+    assert exception instanceof UsageException
+    log.info(exception.toString())
+  }
 }