georep: python2 to python3 compatibility-mount write

python3 expects byte string for os.write. This works
for both py2 and py3. Fixed the same for geo-rep
mount testing code path.

Updates: #411
Change-Id: I2dfedcb0869457707bcca4d2847ef0d52bff1987
Signed-off-by: Kotresh HR <khiremat@redhat.com>
This commit is contained in:
Kotresh HR 2018-09-28 07:48:13 -04:00 committed by Amar Tumballi
parent bf27b8257d
commit f7a81f4be3

View File

@ -870,7 +870,9 @@ class Mounter(object):
if self.mntpt:
# mntpt is determined pre-mount
d = self.mntpt
os.write(mpo, d + '\0')
mnt_msg = d + '\0'
encoded_msg = mnt_msg.encode()
os.write(mpo, encoded_msg)
po = Popen(margv, **self.mountkw)
self.handle_mounter(po)
po.terminate_geterr()
@ -878,8 +880,11 @@ class Mounter(object):
if not d:
# mntpt is determined during mount
d = self.mntpt
os.write(mpo, d + '\0')
os.write(mpo, 'M')
mnt_msg = d + '\0'
encoded_msg = mnt_msg.encode()
os.write(mpo, encoded_msg)
encoded_msg = 'M'.encode()
os.write(mpo, encoded_msg)
t = syncdutils.Thread(target=lambda: os.chdir(d))
t.start()
tlim = rconf.starttime + gconf.get("connection-timeout")
@ -908,6 +913,7 @@ class Mounter(object):
mntdata = ''
while True:
c = os.read(mpi, 1)
c = c.decode()
if not c:
break
mntdata += c