Improved working with quotation marks in pepper calls

Change-Id: I1bf6372e7875869c63ea7ae349d436ee21ca94fb
diff --git a/src/com/mirantis/mk/Salt.groovy b/src/com/mirantis/mk/Salt.groovy
index 9ba3d84..6cc9a23 100644
--- a/src/com/mirantis/mk/Salt.groovy
+++ b/src/com/mirantis/mk/Salt.groovy
@@ -663,8 +663,8 @@
 def runPepperCommand(data, venv)   {
     def python = new com.mirantis.mk.Python()
     def dataStr = new groovy.json.JsonBuilder(data).toString()
-
-    def pepperCmd = "pepper -c ${venv}/pepperrc --make-token -x ${venv}/.peppercache --json \\'${dataStr}\\'"
+    dataStr = dataStr.replaceAll('"', '\\\\\"').replaceAll('\\$','\\\\\\$');
+    def pepperCmd = "pepper -c ${venv}/pepperrc --make-token -x ${venv}/.peppercache --json \"" + dataStr + "\""
 
     if (venv) {
         output = python.runVirtualenvCommand(venv, pepperCmd)