зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1366071 - Add check in talos tp6 to ensure mitmproxy certificate was installed successfully; r=jmaher
MozReview-Commit-ID: 8wRtSSQ5SEp --HG-- extra : rebase_source : eaca0fc6d1e1bbaee313e84ab787039b45b5da63
This commit is contained in:
Родитель
96e2314506
Коммит
e229a35db0
|
@ -31,6 +31,15 @@ def write_autoconfig_files(fx_install_dir,
|
|||
fd.write(autoconfig_contents)
|
||||
|
||||
|
||||
def read_autoconfig_file(fx_install_dir):
|
||||
''' Read autoconfig file that modifies Firefox startup
|
||||
|
||||
fx_install_dir - path to Firefox installation
|
||||
'''
|
||||
with open(_cfg_file_path(fx_install_dir), 'r') as fd:
|
||||
return fd.read()
|
||||
|
||||
|
||||
def _autoconfig_path(fx_install_dir):
|
||||
platform = platform_name()
|
||||
if platform in ('win32', 'win64'):
|
||||
|
|
|
@ -71,9 +71,22 @@ def _read_certificate(certificate_path):
|
|||
return ''.join(contents.splitlines()[1:-1])
|
||||
|
||||
|
||||
def is_mitmproxy_cert_installed():
|
||||
def is_mitmproxy_cert_installed(browser_install):
|
||||
"""Verify mitmxproy CA cert was added to Firefox"""
|
||||
# TODO: Bug 1366071
|
||||
from mozharness.mozilla.firefox.autoconfig import read_autoconfig_file
|
||||
try:
|
||||
# read autoconfig file, confirm mitmproxy cert is in there
|
||||
certificate = _read_certificate(DEFAULT_CERT_PATH)
|
||||
contents = read_autoconfig_file(browser_install)
|
||||
if (MITMPROXY_SETTINGS % {'cert': certificate}) in contents:
|
||||
LOG.info("Verified mitmproxy CA certificate is installed in Firefox")
|
||||
else:
|
||||
LOG.info("Firefox autoconfig file contents:")
|
||||
LOG.info(contents)
|
||||
return False
|
||||
except:
|
||||
LOG.info("Failed to read Firefox autoconfig file, when verifying CA certificate install")
|
||||
return False
|
||||
return True
|
||||
|
||||
|
||||
|
@ -89,7 +102,7 @@ def install_mitmproxy_cert(mitmproxy_proc, browser_path, scripts_path):
|
|||
LOG.info('Calling configure_mitmproxy with browser folder: %s' % browser_install)
|
||||
configure_mitmproxy(browser_install, scripts_path)
|
||||
# cannot continue if failed to add CA cert to Firefox, need to check
|
||||
if not is_mitmproxy_cert_installed():
|
||||
if not is_mitmproxy_cert_installed(browser_install):
|
||||
LOG.error('Aborting: failed to install mitmproxy CA cert into Firefox')
|
||||
stop_mitmproxy_playback(mitmproxy_proc)
|
||||
sys.exit()
|
||||
|
|
Загрузка…
Ссылка в новой задаче