| # Copyright 2015 The Chromium Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| import os |
| |
| # pylint: disable=wrong-import-position |
| from core import path_util |
| |
| CLIENT_CONFIG_PATH = os.path.join( |
| os.path.dirname(os.path.abspath(__file__)), 'binary_dependencies.json') |
| |
| with path_util.SysPath(path_util.GetTelemetryDir()): |
| from telemetry import project_config |
| with path_util.SysPath(path_util.GetVariationsDir()): |
| import fieldtrial_util # pylint: disable=import-error |
| with path_util.SysPath(path_util.GetAndroidPylibDir()): |
| from pylib.constants import host_paths |
| |
| |
| class ChromiumConfig(project_config.ProjectConfig): |
| |
| def __init__(self, top_level_dir=None, benchmark_dirs=None, |
| client_configs=None, default_chrome_root=None, |
| expectations_files=None): |
| if client_configs is None: |
| client_configs = [CLIENT_CONFIG_PATH] |
| if default_chrome_root is None: |
| default_chrome_root = path_util.GetChromiumSrcDir() |
| # Some android utilities in Catapult expect a java binary available on PATH, |
| # so place chromium's heremetic JDK on PATH if we have it checked out. |
| if os.path.exists(host_paths.JAVA_PATH): |
| os.environ['PATH'] = (host_paths.JAVA_PATH + os.pathsep + |
| os.environ['PATH']) |
| |
| super(ChromiumConfig, self).__init__( |
| top_level_dir=top_level_dir, benchmark_dirs=benchmark_dirs, |
| client_configs=client_configs, default_chrome_root=default_chrome_root, |
| expectations_files=expectations_files) |
| |
| def AdjustStartupFlags(self, args): |
| return fieldtrial_util.MergeFeaturesAndFieldTrialsArgs(args) |
| |
| |
| def GetDefaultChromiumConfig(): |
| return ChromiumConfig( |
| benchmark_dirs=[path_util.GetOfficialBenchmarksDir(), |
| path_util.GetContribDir()], |
| top_level_dir=path_util.GetPerfDir(), |
| expectations_files=[path_util.GetExpectationsPath()]) |