tree 0ab1a3f305517b28008517a99701dfbebcd4e028
parent 932575741e194109b2da055dd3fd1f6039ac004b
author Tobias Henkel <tobias.henkel@bmw-carit.de> 1495458197 +0200
committer Tobias Henkel <tobias.henkel@bmw-carit.de> 1495797194 +0200

Decode ssh output of gerrit connection

When running zuul with python 3 ssh queries return bytes. All further
processing steps expect strings resulting in errors like [1].

This can be fixed by decoding the results.

[1]: Error processing query:

  2017-05-22 12:31:25,073 ERROR zuul.GerritEventConnector: Exception moving Gerrit event:
  Traceback (most recent call last):
    File "/opt/zuul/lib/python3.5/site-packages/zuul/driver/gerrit/gerritconnection.py", line 150, in run
      self._handleEvent()
    File "/opt/zuul/lib/python3.5/site-packages/zuul/driver/gerrit/gerritconnection.py", line 142, in _handleEvent
      refresh=True)
    File "/opt/zuul/lib/python3.5/site-packages/zuul/driver/gerrit/gerritconnection.py", line 324, in _getChange
      self._updateChange(change, history)
    File "/opt/zuul/lib/python3.5/site-packages/zuul/driver/gerrit/gerritconnection.py", line 372, in _updateChange
      data = self.query(change.number)
    File "/opt/zuul/lib/python3.5/site-packages/zuul/driver/gerrit/gerritconnection.py", line 635, in query
      lines = out.split('\n')
  TypeError: a bytes-like object is required, not 'str'

Change-Id: I9be678311a6cd7ed4293576a6efa33cee4d59b24
