summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPedro Alvarez <pedro.alvarez@codethink.co.uk>2015-09-26 19:23:43 +0000
committerPedro Alvarez <pedro.alvarez@codethink.co.uk>2015-09-28 08:57:53 +0000
commit976a8d1cfd6b47c4266dd47d659be7aa4af98459 (patch)
tree66ac5beb3dd25211af95a04eba0ac71625e718ed
parent644fd0a12e75941e1d8fcdeeced9b3d87628696e (diff)
downloadciat-tester-976a8d1cfd6b47c4266dd47d659be7aa4af98459.tar.gz
Allow running tests as different users
-rwxr-xr-xtester9
1 files changed, 7 insertions, 2 deletions
diff --git a/tester b/tester
index da50541..64fe109 100755
--- a/tester
+++ b/tester
@@ -389,14 +389,19 @@ class ReleaseApp(cliapp.Application):
for step in self.tests[test]:
for cmd in step['commands']:
for system in step['systems']:
- # TODO: Get user for each command from test file
# TODO: Pass prefix, so systems can talk to each other
+
+ try:
+ user = step['user']
+ except KeyError:
+ user = 'root'
+
try:
s = self.systems[system]
except KeyError:
print "WARNING: System " + system + " not defined, ignoring test"
else:
- s.runcmd(['sh', '-c', cmd], 'root', stdout=sys.stdout, stderr=sys.stderr)
+ s.runcmd(['sh', '-c', cmd], user, stdout=sys.stdout, stderr=sys.stderr)
def clean_up(self):
print('[Local] Clean up systems on remote hosts:')