Bug 1632429: Improves python 3 compatibility of mozharness r=aki

Differential Revision: https://phabricator.services.mozilla.com/D77961
This commit is contained in:
Mitchell Hentges 2020-06-03 18:16:01 +00:00
parent 291e3e141e
commit c34c289c27
7 changed files with 19 additions and 14 deletions

File diff suppressed because one or more lines are too long

View File

@ -439,7 +439,7 @@ class VirtualenvMixin(object):
"""Import the virtualenv's packages into this Python interpreter."""
bin_dir = os.path.dirname(self.query_python_path())
activate = os.path.join(bin_dir, 'activate_this.py')
execfile(activate, dict(__file__=activate))
exec(open(activate).read(), dict(__file__=activate))
# This is (sadly) a mixin for logging methods.
@ -563,7 +563,7 @@ class ResourceMonitoringMixin(PerfherderResourceOptionsMixin):
upload_dir = self.query_abs_dirs()['abs_blob_upload_dir']
if not os.path.exists(upload_dir):
os.makedirs(upload_dir)
with open(os.path.join(upload_dir, 'resource-usage.json'), 'wb') as fh:
with open(os.path.join(upload_dir, 'resource-usage.json'), 'w') as fh:
json.dump(self._resource_monitor.as_dict(), fh,
sort_keys=True, indent=4)
except (AttributeError, KeyError):

View File

@ -982,7 +982,7 @@ items from that key's value."
self.info('%s does not exist; not loading build resources' % p)
return None
with open(p, 'rb') as fh:
with open(p, 'r') as fh:
resources = json.load(fh)
if 'duration' not in resources:
@ -1016,7 +1016,7 @@ items from that key's value."
stats_file)
return
with open(stats_file, 'rb') as fh:
with open(stats_file, 'r') as fh:
stats = json.load(fh)
def get_stat(key):

View File

@ -8,6 +8,7 @@
"""
import os
import six
from six.moves import urllib
import json
@ -24,7 +25,7 @@ class SecretsMixin(object):
if res.getcode() != 200:
self.fatal("Error fetching from secrets API:" + res.read())
return json.load(res)['secret']['content']
return json.loads(six.ensure_str(res.read()))['secret']['content']
def get_secrets(self):
"""

View File

@ -11,6 +11,7 @@ import os
import posixpath
import re
import signal
import six
import subprocess
import time
import tempfile
@ -254,19 +255,21 @@ class AndroidMixin(object):
f.write('\n\nHost cpufreq/scaling_governor:\n')
cpus = glob.glob('/sys/devices/system/cpu/cpu*/cpufreq/scaling_governor')
for cpu in cpus:
out = subprocess.check_output(['cat', cpu])
out = subprocess.check_output(['cat', cpu], universal_newlines=True)
f.write("%s: %s" % (cpu, out))
f.write('\n\nHost /proc/cpuinfo:\n')
out = subprocess.check_output(['cat', '/proc/cpuinfo'])
out = subprocess.check_output(['cat', '/proc/cpuinfo'],
universal_newlines=True)
f.write(out)
f.write('\n\nHost /proc/meminfo:\n')
out = subprocess.check_output(['cat', '/proc/meminfo'])
out = subprocess.check_output(['cat', '/proc/meminfo'],
universal_newlines=True)
f.write(out)
f.write('\n\nHost process list:\n')
out = subprocess.check_output(['ps', '-ef'])
out = subprocess.check_output(['ps', '-ef'], universal_newlines=True)
f.write(out)
f.write('\n\nDevice /proc/cpuinfo:\n')
@ -456,6 +459,7 @@ class AndroidMixin(object):
def kill_processes(self, process_name):
self.info("Killing every process called %s" % process_name)
process_name = six.ensure_binary(process_name)
out = subprocess.check_output(['ps', '-A'])
for line in out.splitlines():
if process_name in line:

View File

@ -117,7 +117,7 @@ class DesktopSingleLocale(LocalesMixin, AutomationMixin,
update_channel = config['update_channel']
else: # Let's just give the generic channel based on branch.
update_channel = "nightly-%s" % (config['branch'],)
if isinstance(update_channel, unicode):
if not isinstance(update_channel, bytes):
update_channel = update_channel.encode("utf-8")
bootstrap_env["MOZ_UPDATE_CHANNEL"] = update_channel
self.info("Update channel set to: {}".format(bootstrap_env["MOZ_UPDATE_CHANNEL"]))

View File

@ -152,7 +152,7 @@ class OpenH264Build(TransferMixin, VCSScript, TooltoolMixin):
bits = '32'
version = self.config['revision']
if sys.platform == 'linux2':
if sys.platform in ('linux2', 'linux'):
if self.config.get('operating_system') == 'android':
return 'openh264-android-{arch}-{version}.zip'.format(
version=version, arch=self.config['arch'])