[Freeipa-devel] [python-pytest-multihost]-Ticket-6 run_command produces exit code 1 on windows

Petr Viktorin pviktori at redhat.com
Mon Apr 18 15:00:43 UTC 2016


On 04/18/2016 12:39 PM, Niranjan wrote:
> Niranjan wrote:
>> Niranjan wrote:
>>> Petr Viktorin wrote:
>>>> On 04/06/2016 10:55 AM, Niranjan wrote:
>>>>> Greetings,
>>>>>
>>>>> For https://fedorahosted.org/python-pytest-multihost/ticket/6 , i have proposed
>>>>> a patch, I think this patch is more of a workaround , than a solution. I would
>>>>> like to get more inputs on how to use pytest-multihost to execute commands 
>>>>> on Windows. The method i am using requires cygwin with openssh/bash to be
>>>>> installed. 
>>>>
>>>> Wow. I'm surprised the only problem on Windows is the "set -e".
>>>>
>>>> Regarding the patch:
>>>>
>>>> - Why is get_winhost_class needed? I don't see it called anywhere.
>>>> - Similarly, why is host_type needed? Your patch only sets it.
>>>>
>>>> If run_command of WinHost and Unix hosts are this similar, I would put
>>>> the 'set -e\n' for Unix (and an empty string for Windows) in a class
>>>> attribute named e.g. "command_prelude", use it in run_command, and move
>>>> run_command from Host to BaseHost.
>>>> Would that work, or am I missing something?
>>> How do we detect the host is windows/unix then , we still need host_type 
>>> to know what the type of host is (unix/windows)?
>>>>
>>>>
>>>> -- 
>>>> Petr Viktorin
>> Please review the attached patch.

Sorry for the delay.

The information about whether the host is Unix or Windows is available:
the class is either Host or WinHost, so I don't think an extra host_type
is necessary.
I'd be open to adding host_type as *configuration* (and corresponding
attribute) if it also selected the actual Host class. Currently to use
WinHost you need to write custom code.

I modified the patch so BaseHost takes test_dir as an argument, and sets
it as self.test_dir, so that users don't need to choose between
self.config.windows_test_dir/self.config.test_dir themselves.
(Unfortunately I don't have Windows to test on; I hope the change is
correct.) Would this approach work for you?

-- 
Petr Viktorin

-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-modify-run_command-to-execute-on-Windows.patch
Type: text/x-patch
Size: 4787 bytes
Desc: not available
URL: <http://listman.redhat.com/archives/freeipa-devel/attachments/20160418/c23253a3/attachment.bin>


More information about the Freeipa-devel mailing list