Repository: jclouds-cli
Updated Branches:
  refs/heads/master cf1d92f1c -> 76583c493


JCLOUDS-1189: Handle arguments with spaces


Project: http://git-wip-us.apache.org/repos/asf/jclouds-cli/repo
Commit: http://git-wip-us.apache.org/repos/asf/jclouds-cli/commit/76583c49
Tree: http://git-wip-us.apache.org/repos/asf/jclouds-cli/tree/76583c49
Diff: http://git-wip-us.apache.org/repos/asf/jclouds-cli/diff/76583c49

Branch: refs/heads/master
Commit: 76583c4935e1f946a29774f4ad54e4b4b3d1752b
Parents: cf1d92f
Author: Andrew Gaul <[email protected]>
Authored: Tue Oct 25 14:35:08 2016 -0700
Committer: Andrew Gaul <[email protected]>
Committed: Wed Nov 2 15:02:54 2016 -0700

----------------------------------------------------------------------
 assembly/src/main/filtered-resources/unix/bin/jclouds | 3 +--
 runner/src/main/java/org/jclouds/cli/runner/Main.java | 7 ++++++-
 2 files changed, 7 insertions(+), 3 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/jclouds-cli/blob/76583c49/assembly/src/main/filtered-resources/unix/bin/jclouds
----------------------------------------------------------------------
diff --git a/assembly/src/main/filtered-resources/unix/bin/jclouds 
b/assembly/src/main/filtered-resources/unix/bin/jclouds
index e598ae6..7a9721f 100644
--- a/assembly/src/main/filtered-resources/unix/bin/jclouds
+++ b/assembly/src/main/filtered-resources/unix/bin/jclouds
@@ -44,8 +44,7 @@ die() {
 }
 
 run() {
-    CMD="$KARAF_HOME/bin/shell jclouds:$CATEGORY-$ACTION ${@:3}"
-    exec $CMD
+    exec $KARAF_HOME/bin/shell jclouds:$CATEGORY-$ACTION "${@:3}"
 }
 
 main() {

http://git-wip-us.apache.org/repos/asf/jclouds-cli/blob/76583c49/runner/src/main/java/org/jclouds/cli/runner/Main.java
----------------------------------------------------------------------
diff --git a/runner/src/main/java/org/jclouds/cli/runner/Main.java 
b/runner/src/main/java/org/jclouds/cli/runner/Main.java
index 6eaaf32..efc5cbf 100644
--- a/runner/src/main/java/org/jclouds/cli/runner/Main.java
+++ b/runner/src/main/java/org/jclouds/cli/runner/Main.java
@@ -254,7 +254,12 @@ public class Main {
                 if (i > 0) {
                     sb.append(" ");
                 }
-                sb.append(args[i]);
+                if (args[i].contains(" ")) {
+                    // quote arguments with spaces
+                    sb.append("\"").append(args[i]).append("\"");
+                } else {
+                    sb.append(args[i]);
+                }
             }
 
             // Shell is directly executing a sub/command, we don't setup a 
terminal and console

Reply via email to