summaryrefslogtreecommitdiffstats
path: root/src/com.gluster.storage.management.gateway/WebContent/scripts/grun.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/com.gluster.storage.management.gateway/WebContent/scripts/grun.py')
-rwxr-xr-xsrc/com.gluster.storage.management.gateway/WebContent/scripts/grun.py36
1 files changed, 36 insertions, 0 deletions
diff --git a/src/com.gluster.storage.management.gateway/WebContent/scripts/grun.py b/src/com.gluster.storage.management.gateway/WebContent/scripts/grun.py
new file mode 100755
index 00000000..ae93b7f2
--- /dev/null
+++ b/src/com.gluster.storage.management.gateway/WebContent/scripts/grun.py
@@ -0,0 +1,36 @@
+#!/usr/bin/python
+# Copyright (C) 2011 Gluster, Inc. <http://www.gluster.com>
+# This file is part of Gluster Management Gateway.
+#
+
+import os
+import sys
+import Utils
+
+
+def main():
+ sshCommandPrefix = "ssh -q -o BatchMode=yes -o GSSAPIAuthentication=no -o PasswordAuthentication=no -o StrictHostKeyChecking=no".split()
+
+ if len(sys.argv) < 3:
+ sys.stderr.write("usage: %s SERVER_FILE COMMAND [ARGUMENTS]\n" % os.path.basename(sys.argv[0]))
+ sys.exit(-1)
+ serverFile = sys.argv[1]
+ command = sys.argv[2:]
+
+ try:
+ fp = open(serverFile)
+ serverNameList = fp.readlines()
+ fp.close()
+ except IOError, e:
+ Utils.log("Failed to read server file %s: %s\n" % (serverFile, str(e)))
+ sys.exit(1)
+
+ for serverName in serverNameList:
+ rv = Utils.runCommand(sshCommandPrefix + [serverName.strip()] + command)
+ print rv
+
+ sys.exit(0)
+
+
+if __name__ == "__main__":
+ main()