That IndexError has been fixed in ansible devel.  It's not really a pywinrm
issue, but an ansible issue in trying to handle the HTTPError from pywinrm.

It happens when the HTTPError from urllib2 isn't a file-like object
(despite what the docs say in
https://docs.python.org/2/library/urllib2.html#urllib2.HTTPError).


On Mon, Oct 20, 2014 at 4:58 PM, Michael DeHaan <[email protected]> wrote:

> This is probably a good error to file upstream with winrm, such that on
> this error it can present something better to the user.
>
> We could catch it, but an IndexError is the wrong sort of exception to be
> catching here.
>
>
>
> On Sun, Oct 19, 2014 at 2:44 PM, Trond Hindenes <[email protected]>
> wrote:
>
>> Have you prepared your Windows nodes as per documentation? Basically, yuu
>> need to enable WinRM connections over HTTPS, and enable Baisc auth for your
>> WinRm endpoint. Look at the documentation, there's a script that will do
>> those things for you. I've uploaded a newer version of that script here:
>> https://gist.github.com/trondhindenes/2cd162d4b17c2c28ec40
>>
>> _Trond
>>
>>
>> On Friday, October 17, 2014 5:02:06 PM UTC+2, Bryan Cochrane wrote:
>>
>>> I am trying to setup windows remoting for ansible.
>>>
>>> I have Ansible version 1.7.2, ee-bryan is Windows 8.1, ee-csg is Windows
>>> Server 2012. Both have Powershell 4.
>>>
>>> under /etc/ansible I have created hosts as
>>> [windows]
>>> ee-bryan
>>> ee-csg
>>>
>>> and I have created /etc/ansible/group_vars/windows.yml with
>>>
>>> #It is suggested that these be encrypted with ansible-vault:
>>> # ansible-vault edit group_vars/windows.yml
>>> #
>>>  ansible_ssh_user: Administrator
>>>  ansible_ssh_pass: password
>>>  ansible_ssh_port: 5986
>>>  ansible_connection: winrm
>>>
>>> but on testing I get
>>>
>>> # ansible windows -m win_ping
>>> ee-csg.ee.ic.ac.uk | FAILED => Traceback (most recent call last):
>>>   File "/usr/lib/python2.7/site-packages/ansible/runner/__init__.py",
>>> line 561, in _executor
>>>     exec_rc = self._executor_internal(host, new_stdin)
>>>   File "/usr/lib/python2.7/site-packages/ansible/runner/__init__.py",
>>> line 666, in _executor_internal
>>>     return self._executor_internal_inner(host, self.module_name,
>>> self.module_args, inject, port, complex_args=complex_args)
>>>   File "/usr/lib/python2.7/site-packages/ansible/runner/__init__.py",
>>> line 837, in _executor_internal_inner
>>>     conn = self.connector.connect(actual_host, actual_port,
>>> actual_user, actual_pass, actual_transport, actual_private_key_file)
>>>   File "/usr/lib/python2.7/site-packages/ansible/runner/connection.py",
>>> line 34, in connect
>>>     self.active = conn.connect()
>>>   File 
>>> "/usr/lib/python2.7/site-packages/ansible/runner/connection_plugins/winrm.py",
>>> line 132, in connect
>>>     self.protocol = self._winrm_connect()
>>>   File 
>>> "/usr/lib/python2.7/site-packages/ansible/runner/connection_plugins/winrm.py",
>>> line 90, in _winrm_connect
>>>     err_msg = str(exc.args[0])
>>> IndexError: tuple index out of range
>>>
>>> ee-bryan.ee.ic.ac.uk | FAILED => Traceback (most recent call last):
>>>   File "/usr/lib/python2.7/site-packages/ansible/runner/__init__.py",
>>> line 561, in _executor
>>>     exec_rc = self._executor_internal(host, new_stdin)
>>>   File "/usr/lib/python2.7/site-packages/ansible/runner/__init__.py",
>>> line 666, in _executor_internal
>>>     return self._executor_internal_inner(host, self.module_name,
>>> self.module_args, inject, port, complex_args=complex_args)
>>>   File "/usr/lib/python2.7/site-packages/ansible/runner/__init__.py",
>>> line 837, in _executor_internal_inner
>>>     conn = self.connector.connect(actual_host, actual_port,
>>> actual_user, actual_pass, actual_transport, actual_private_key_file)
>>>   File "/usr/lib/python2.7/site-packages/ansible/runner/connection.py",
>>> line 34, in connect
>>>     self.active = conn.connect()
>>>   File 
>>> "/usr/lib/python2.7/site-packages/ansible/runner/connection_plugins/winrm.py",
>>> line 132, in connect
>>>     self.protocol = self._winrm_connect()
>>>   File 
>>> "/usr/lib/python2.7/site-packages/ansible/runner/connection_plugins/winrm.py",
>>> line 90, in _winrm_connect
>>>     err_msg = str(exc.args[0])
>>> IndexError: tuple index out of range
>>>
>>>  --
>> You received this message because you are subscribed to the Google Groups
>> "Ansible Project" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to [email protected].
>> To post to this group, send email to [email protected].
>> To view this discussion on the web visit
>> https://groups.google.com/d/msgid/ansible-project/5a2d00b4-3009-4912-abe9-28c9764dc9f8%40googlegroups.com
>> <https://groups.google.com/d/msgid/ansible-project/5a2d00b4-3009-4912-abe9-28c9764dc9f8%40googlegroups.com?utm_medium=email&utm_source=footer>
>> .
>>
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>  --
> You received this message because you are subscribed to the Google Groups
> "Ansible Project" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/ansible-project/CA%2BnsWgyryKWdSaka0-uVJzLp9pT%2BgV3dJTQHUSZnnAUCEmFCrQ%40mail.gmail.com
> <https://groups.google.com/d/msgid/ansible-project/CA%2BnsWgyryKWdSaka0-uVJzLp9pT%2BgV3dJTQHUSZnnAUCEmFCrQ%40mail.gmail.com?utm_medium=email&utm_source=footer>
> .
>
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Ansible Project" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/ansible-project/CAH%2BKTJ6VivBRkTJiuiTuYgPo5X%2BdiMOVsR9JUFwgzmmU%3DAqQqA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to