Assorted python3 fixes for network code. (#18777)

pull/19411/head
Nathaniel Case 8 years ago committed by GitHub
parent c49eac5645
commit 7900319fc3

@ -31,7 +31,7 @@ except ImportError:
from ansible.module_utils.basic import get_exception from ansible.module_utils.basic import get_exception
from ansible.module_utils.network import NetworkError from ansible.module_utils.network import NetworkError
from ansible.module_utils.six.moves import StringIO from ansible.module_utils.six import BytesIO
from ansible.module_utils._text import to_native from ansible.module_utils._text import to_native
ANSI_RE = [ ANSI_RE = [
@ -132,23 +132,23 @@ class Shell(object):
raise ShellError('timeout trying to send command: %s' % self._history[-1]) raise ShellError('timeout trying to send command: %s' % self._history[-1])
def receive(self, cmd=None): def receive(self, cmd=None):
recv = StringIO() recv = BytesIO()
handled = False handled = False
while True: while True:
data = self.shell.recv(200) data = self.shell.recv(200)
recv.write(data) recv.write(data)
recv.seek(recv.tell() - 200) recv.seek(recv.tell() - len(data))
window = self.strip(recv.read()) window = self.strip(recv.read().decode('utf8'))
if hasattr(cmd, 'prompt') and not handled: if hasattr(cmd, 'prompt') and not handled:
handled = self.handle_prompt(window, cmd) handled = self.handle_prompt(window, cmd)
try: try:
if self.find_prompt(window): if self.find_prompt(window):
resp = self.strip(recv.getvalue()) resp = self.strip(recv.getvalue().decode('utf8'))
return self.sanitize(cmd, resp) return self.sanitize(cmd, resp)
except ShellError: except ShellError:
exc = get_exception() exc = get_exception()

@ -23,10 +23,10 @@ import os
import re import re
import time import time
import glob import glob
import urlparse
from ansible.plugins.action import ActionBase from ansible.plugins.action import ActionBase
from ansible.module_utils._text import to_text from ansible.module_utils._text import to_text
from ansible.module_utils.six.moves.urllib.parse import urlsplit
PRIVATE_KEYS_RE = re.compile('__.+__') PRIVATE_KEYS_RE = re.compile('__.+__')
@ -87,7 +87,7 @@ class ActionModule(ActionBase):
src = self._task.args.get('src') src = self._task.args.get('src')
working_path = self._get_working_path() working_path = self._get_working_path()
if os.path.isabs(src) or urlparse.urlsplit('src').scheme: if os.path.isabs(src) or urlsplit('src').scheme:
source = src source = src
else: else:
source = self._loader.path_dwim_relative(working_path, 'templates', src) source = self._loader.path_dwim_relative(working_path, 'templates', src)

Loading…
Cancel
Save