diff options
author | Adrian Likins <alikins@redhat.com> | 2008-08-27 14:38:14 -0400 |
---|---|---|
committer | Adrian Likins <alikins@redhat.com> | 2008-08-27 14:38:14 -0400 |
commit | 5844ba440ea481813bbfd2ae1caf04ea4efb6826 (patch) | |
tree | 01d9cf8a5f323fb857caa2eda88be96ae8b528bb | |
parent | 1cd4bdb7e4fdadec55ae74f1caee18ac5ee7f91a (diff) | |
parent | 78c1e8c8d51128c1a851d9806125e3ef1172b099 (diff) | |
download | func-5844ba440ea481813bbfd2ae1caf04ea4efb6826.tar.gz func-5844ba440ea481813bbfd2ae1caf04ea4efb6826.tar.xz func-5844ba440ea481813bbfd2ae1caf04ea4efb6826.zip |
Merge branch 'master' of ssh://alikins@git.fedoraproject.org/git/hosted/func
-rw-r--r-- | func/minion/modules/command.py | 13 | ||||
-rw-r--r-- | test/unittest/test_client.py | 5 | ||||
-rw-r--r-- | test/unittest/test_func_transmit.py | 1 |
3 files changed, 14 insertions, 5 deletions
diff --git a/func/minion/modules/command.py b/func/minion/modules/command.py index b41dd9b..25a1aab 100644 --- a/func/minion/modules/command.py +++ b/func/minion/modules/command.py @@ -19,17 +19,22 @@ from func.minion import sub_process class Command(func_module.FuncModule): version = "0.0.1" - api_version = "0.0.1" + api_version = "0.0.2" description = "Works with shell commands." - def run(self, command): + def run(self, command, env=None): """ Runs a command, returning the return code, stdout, and stderr as a tuple. NOT FOR USE WITH INTERACTIVE COMMANDS. """ - cmdref = sub_process.Popen(command.split(), stdout=sub_process.PIPE, - stderr=sub_process.PIPE, shell=False) + + if env: + cmdref = sub_process.Popen(command.split(), stdout=sub_process.PIPE, + stderr=sub_process.PIPE, shell=False, env=env) + else: + cmdref = sub_process.Popen(command.split(), stdout=sub_process.PIPE, + stderr=sub_process.PIPE, shell=False) data = cmdref.communicate() return (cmdref.returncode, data[0], data[1]) diff --git a/test/unittest/test_client.py b/test/unittest/test_client.py index 4734093..d1b37a5 100644 --- a/test/unittest/test_client.py +++ b/test/unittest/test_client.py @@ -170,6 +170,11 @@ class TestCommand(BaseTest): assert result[self.th][1].split("-")[0] == "filesystem" + def test_env(self): + result = self.overlord.command.run("env", + {'BLIPPYFOO':'awesome'}) + self.assert_on_fault(result) + assert result[self.th][1].strip() == "BLIPPYFOO=awesome" class TestCopyfile(BaseTest): fn = "/tmp/func_test_file" diff --git a/test/unittest/test_func_transmit.py b/test/unittest/test_func_transmit.py index 6fbdd76..34a6e37 100644 --- a/test/unittest/test_func_transmit.py +++ b/test/unittest/test_func_transmit.py @@ -92,7 +92,6 @@ class BaseTest(object): # we do this all over the place... def assert_on_fault(self, result): - print "\n\n", result, "\n\n\n" assert func.utils.is_error(result[self.th]) == False # assert type(result[self.th]) != xmlrpclib.Fault |