diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 00:47:55 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-04-19 00:47:55 +0000 |
commit | 26a029d407be480d791972afb5975cf62c9360a6 (patch) | |
tree | f435a8308119effd964b339f76abb83a57c29483 /testing/mozharness/configs | |
parent | Initial commit. (diff) | |
download | firefox-26a029d407be480d791972afb5975cf62c9360a6.tar.xz firefox-26a029d407be480d791972afb5975cf62c9360a6.zip |
Adding upstream version 124.0.1.upstream/124.0.1
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'testing/mozharness/configs')
221 files changed, 7232 insertions, 0 deletions
diff --git a/testing/mozharness/configs/android/android-aarch64-profile-generation.py b/testing/mozharness/configs/android/android-aarch64-profile-generation.py new file mode 100644 index 0000000000..acbe1af4ca --- /dev/null +++ b/testing/mozharness/configs/android/android-aarch64-profile-generation.py @@ -0,0 +1,45 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +# mozharness configuration for Android x86/x86_64 7.0 unit tests +# +# This configuration should be combined with suite definitions and other +# mozharness configuration from android_common.py, or similar. + +config = { + "emulator_avd_name": "mozemulator-android31-x86_64", + "emulator_process_name": "qemu-system-x86_64", + "emulator_extra_args": [ + "-gpu", + "on", + "-skip-adb-auth", + "-verbose", + "-show-kernel", + "-ranchu", + "-selinux", + "permissive", + "-memory", + "4096", + "-cores", + "4", + "-skin", + "800x1280", + "-no-snapstorage", + "-no-snapshot", + # Disables first-run dialogs + "-prop", + "ro.test_harness=true", + ], + "exes": { + "adb": "%(abs_sdk_dir)s/platform-tools/adb", + }, + "env": { + "DISPLAY": ":0.0", + "PATH": "%(PATH)s:%(abs_sdk_dir)s/emulator:%(abs_sdk_dir)s/tools:%(abs_sdk_dir)s/tools/bin:%(abs_sdk_dir)s/platform-tools", + # "LIBGL_DEBUG": "verbose" + }, + "bogomips_minimum": 3000, + "android_version": 24, + "is_emulator": True, +} diff --git a/testing/mozharness/configs/android/android-x86_64-profile-generation.py b/testing/mozharness/configs/android/android-x86_64-profile-generation.py new file mode 100644 index 0000000000..1f4c1c09a8 --- /dev/null +++ b/testing/mozharness/configs/android/android-x86_64-profile-generation.py @@ -0,0 +1,49 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +# mozharness configuration for Android x86/x86_64 7.0 unit tests +# +# This configuration should be combined with suite definitions and other +# mozharness configuration from android_common.py, or similar. + +config = { + "emulator_avd_name": "mozemulator-x86_64", + "emulator_process_name": "qemu-system-x86_64", + "emulator_extra_args": [ + "-gpu", + "on", + "-skip-adb-auth", + "-verbose", + "-show-kernel", + "-ranchu", + "-selinux", + "permissive", + "-memory", + "3072", + "-cores", + "4", + "-skin", + "800x1280", + # Build machines cannot use KVM (because it requires a privileged docker + # container) so we run the profile generation with -no-accel which disables + # hardware acceleration. + "-no-accel", + "-no-snapstorage", + "-no-snapshot", + # Disables first-run dialogs + "-prop", + "ro.test_harness=true", + ], + "exes": { + "adb": "%(abs_sdk_dir)s/platform-tools/adb", + }, + "env": { + "DISPLAY": ":0.0", + "PATH": "%(PATH)s:%(abs_sdk_dir)s/emulator:%(abs_sdk_dir)s/tools:%(abs_sdk_dir)s/tools/bin:%(abs_sdk_dir)s/platform-tools", + # "LIBGL_DEBUG": "verbose" + }, + "bogomips_minimum": 3000, + "android_version": 24, + "is_emulator": True, +} diff --git a/testing/mozharness/configs/android/android-x86_64.py b/testing/mozharness/configs/android/android-x86_64.py new file mode 100644 index 0000000000..08edc7fa90 --- /dev/null +++ b/testing/mozharness/configs/android/android-x86_64.py @@ -0,0 +1,46 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +# mozharness configuration for Android x86/x86_64 7.0 unit tests +# +# This configuration should be combined with suite definitions and other +# mozharness configuration from android_common.py, or similar. + +config = { + "emulator_avd_name": "mozemulator-x86_64", + "emulator_process_name": "qemu-system-x86_64", + "emulator_extra_args": [ + "-gpu", + "on", + "-skip-adb-auth", + "-verbose", + "-show-kernel", + "-ranchu", + "-selinux", + "permissive", + "-memory", + "3072", + "-cores", + "4", + "-skin", + "800x1280", + "-no-snapstorage", + "-no-snapshot", + # Skips first-run dialogs + "-prop", + "ro.test_harness=true", + ], + "exes": { + "adb": "%(abs_sdk_dir)s/platform-tools/adb", + }, + "env": { + "DISPLAY": ":0.0", + "PATH": "%(PATH)s:%(abs_sdk_dir)s/emulator:%(abs_sdk_dir)s/tools:%(abs_sdk_dir)s/platform-tools", + # "LIBGL_DEBUG": "verbose" + }, + "bogomips_minimum": 3000, + # in support of test-verify + "android_version": 24, + "is_emulator": True, +} diff --git a/testing/mozharness/configs/android/android_common.py b/testing/mozharness/configs/android/android_common.py new file mode 100644 index 0000000000..9d02fde314 --- /dev/null +++ b/testing/mozharness/configs/android/android_common.py @@ -0,0 +1,325 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +# Shared/common mozharness configuration for Android unit tests. +# +# This configuration should be combined with platform-specific mozharness +# configuration such as android-x86_64.py, android_hw, or similar. + +import os + +NODEJS_PATH = None +if "MOZ_FETCHES_DIR" in os.environ: + NODEJS_PATH = os.path.join(os.environ["MOZ_FETCHES_DIR"], "node/bin/node") + + +def WebglSuite(name): + return { + "run_filename": "runtestsremote.py", + "testsdir": "mochitest", + "options": [ + "--app=%(app)s", + "--remote-webserver=%(remote_webserver)s", + "--xre-path=%(xre_path)s", + "--utility-path=%(utility_path)s", + "--http-port=%(http_port)s", + "--ssl-port=%(ssl_port)s", + "--certificate-path=%(certs_path)s", + "--symbols-path=%(symbols_path)s", + "--quiet", + "--log-errorsummary=%(error_summary_file)s", + "--log-tbpl-level=%(log_tbpl_level)s", + "--screenshot-on-fail", + "--subsuite=" + name, + "--deviceSerial=%(device_serial)s", + ], + } + + +config = { + "default_actions": [ + "clobber", + "download-and-extract", + "create-virtualenv", + "start-emulator", + "verify-device", + "install", + "run-tests", + ], + "tooltool_cache": os.environ.get("TOOLTOOL_CACHE"), + "hostutils_manifest_path": "testing/config/tooltool-manifests/linux64/hostutils.manifest", + # "log_format": "%(levelname)8s - %(message)s", + "log_tbpl_level": "info", + "log_raw_level": "info", + # To take device screenshots at timed intervals (each time in seconds, relative + # to the start of the run-tests step) specify screenshot_times. For example, to + # take 4 screenshots at one minute intervals you could specify: + # "screenshot_times": [60, 120, 180, 240], + "nodejs_path": NODEJS_PATH, + "suite_definitions": { + "mochitest-plain": { + "run_filename": "runtestsremote.py", + "testsdir": "mochitest", + "options": [ + "--app=%(app)s", + "--remote-webserver=%(remote_webserver)s", + "--xre-path=%(xre_path)s", + "--utility-path=%(utility_path)s", + "--http-port=%(http_port)s", + "--ssl-port=%(ssl_port)s", + "--certificate-path=%(certs_path)s", + "--symbols-path=%(symbols_path)s", + "--quiet", + "--log-errorsummary=%(error_summary_file)s", + "--log-tbpl-level=%(log_tbpl_level)s", + "--extra-profile-file=fonts", + "--extra-profile-file=hyphenation", + "--screenshot-on-fail", + "--deviceSerial=%(device_serial)s", + ], + }, + "mochitest-webgl1-core": WebglSuite("webgl1-core"), + "mochitest-webgl2-core": WebglSuite("webgl2-core"), + "mochitest-webgl1-ext": WebglSuite("webgl1-ext"), + "mochitest-webgl2-ext": WebglSuite("webgl2-ext"), + "mochitest-webgl2-deqp": WebglSuite("webgl2-deqp"), + "mochitest-webgpu": WebglSuite("webgpu"), + "mochitest-plain-gpu": { + "run_filename": "runtestsremote.py", + "testsdir": "mochitest", + "options": [ + "--app=%(app)s", + "--remote-webserver=%(remote_webserver)s", + "--xre-path=%(xre_path)s", + "--utility-path=%(utility_path)s", + "--http-port=%(http_port)s", + "--ssl-port=%(ssl_port)s", + "--certificate-path=%(certs_path)s", + "--symbols-path=%(symbols_path)s", + "--quiet", + "--log-errorsummary=%(error_summary_file)s", + "--log-tbpl-level=%(log_tbpl_level)s", + "--screenshot-on-fail", + "--subsuite=gpu", + "--deviceSerial=%(device_serial)s", + ], + }, + "mochitest-media": { + "run_filename": "runtestsremote.py", + "testsdir": "mochitest", + "options": [ + "--app=%(app)s", + "--remote-webserver=%(remote_webserver)s", + "--xre-path=%(xre_path)s", + "--utility-path=%(utility_path)s", + "--http-port=%(http_port)s", + "--ssl-port=%(ssl_port)s", + "--certificate-path=%(certs_path)s", + "--symbols-path=%(symbols_path)s", + "--quiet", + "--log-errorsummary=%(error_summary_file)s", + "--log-tbpl-level=%(log_tbpl_level)s", + "--screenshot-on-fail", + "--chunk-by-runtime", + "--subsuite=media", + "--deviceSerial=%(device_serial)s", + ], + }, + "reftest": { + "run_filename": "remotereftest.py", + "testsdir": "reftest", + "options": [ + "--app=%(app)s", + "--ignore-window-size", + "--remote-webserver=%(remote_webserver)s", + "--xre-path=%(xre_path)s", + "--utility-path=%(utility_path)s", + "--http-port=%(http_port)s", + "--ssl-port=%(ssl_port)s", + "--httpd-path", + "%(modules_dir)s", + "--symbols-path=%(symbols_path)s", + "--extra-profile-file=fonts", + "--extra-profile-file=hyphenation", + "--suite=reftest", + "--log-errorsummary=%(error_summary_file)s", + "--log-tbpl-level=%(log_tbpl_level)s", + "--deviceSerial=%(device_serial)s", + "--topsrcdir=tests", + ], + "tests": [ + "tests/layout/reftests/reftest.list", + ], + }, + "reftest-qr": { + "run_filename": "remotereftest.py", + "testsdir": "reftest", + "options": [ + "--app=%(app)s", + "--ignore-window-size", + "--remote-webserver=%(remote_webserver)s", + "--xre-path=%(xre_path)s", + "--utility-path=%(utility_path)s", + "--http-port=%(http_port)s", + "--ssl-port=%(ssl_port)s", + "--httpd-path", + "%(modules_dir)s", + "--symbols-path=%(symbols_path)s", + "--extra-profile-file=fonts", + "--extra-profile-file=hyphenation", + "--suite=reftest", + "--log-errorsummary=%(error_summary_file)s", + "--log-tbpl-level=%(log_tbpl_level)s", + "--deviceSerial=%(device_serial)s", + "--topsrcdir=tests", + ], + "tests": [ + "tests/layout/reftests/reftest-qr.list", + ], + }, + "crashtest": { + "run_filename": "remotereftest.py", + "testsdir": "reftest", + "options": [ + "--app=%(app)s", + "--ignore-window-size", + "--remote-webserver=%(remote_webserver)s", + "--xre-path=%(xre_path)s", + "--utility-path=%(utility_path)s", + "--http-port=%(http_port)s", + "--ssl-port=%(ssl_port)s", + "--httpd-path", + "%(modules_dir)s", + "--symbols-path=%(symbols_path)s", + "--suite=crashtest", + "--log-errorsummary=%(error_summary_file)s", + "--log-tbpl-level=%(log_tbpl_level)s", + "--deviceSerial=%(device_serial)s", + "--topsrcdir=tests", + ], + "tests": [ + "tests/testing/crashtest/crashtests.list", + ], + }, + "crashtest-qr": { + "run_filename": "remotereftest.py", + "testsdir": "reftest", + "options": [ + "--app=%(app)s", + "--ignore-window-size", + "--remote-webserver=%(remote_webserver)s", + "--xre-path=%(xre_path)s", + "--utility-path=%(utility_path)s", + "--http-port=%(http_port)s", + "--ssl-port=%(ssl_port)s", + "--httpd-path", + "%(modules_dir)s", + "--symbols-path=%(symbols_path)s", + "--suite=crashtest", + "--log-errorsummary=%(error_summary_file)s", + "--log-tbpl-level=%(log_tbpl_level)s", + "--deviceSerial=%(device_serial)s", + "--topsrcdir=tests", + ], + "tests": [ + "tests/testing/crashtest/crashtests-qr.list", + ], + }, + "jittest": { + "run_filename": "jit_test.py", + "testsdir": "jit-test/jit-test", + "options": [ + "../../bin/js", + "--remote", + "-j", + "1", + "--localLib=../../bin", + "--no-slow", + "--no-progress", + "--format=automation", + "--jitflags=%(jittest_flags)s", + "--deviceSerial=%(device_serial)s", + ], + }, + "jsreftest": { + "run_filename": "remotereftest.py", + "testsdir": "reftest", + "options": [ + "--app=%(app)s", + "--ignore-window-size", + "--remote-webserver=%(remote_webserver)s", + "--xre-path=%(xre_path)s", + "--utility-path=%(utility_path)s", + "--http-port=%(http_port)s", + "--ssl-port=%(ssl_port)s", + "--httpd-path", + "%(modules_dir)s", + "--symbols-path=%(symbols_path)s", + "--extra-profile-file=jsreftest/tests/js/src/tests/user.js", + "--suite=jstestbrowser", + "--log-errorsummary=%(error_summary_file)s", + "--log-tbpl-level=%(log_tbpl_level)s", + "--deviceSerial=%(device_serial)s", + "--topsrcdir=../jsreftest/tests", + ], + "tests": [ + "../jsreftest/tests/js/src/tests/jstests.list", + ], + }, + "xpcshell": { + "run_filename": "remotexpcshelltests.py", + "testsdir": "xpcshell", + "options": [ + "--xre-path=%(xre_path)s", + "--testing-modules-dir=%(modules_dir)s", + "--apk=%(installer_path)s", + "--no-logfiles", + "--symbols-path=%(symbols_path)s", + "--manifest=tests/xpcshell.toml", + "--log-errorsummary=%(error_summary_file)s", + "--log-tbpl-level=%(log_tbpl_level)s", + "--threads=4", + "--deviceSerial=%(device_serial)s", + "%(xpcshell_extra)s", + ], + }, + "cppunittest": { + "run_filename": "remotecppunittests.py", + "testsdir": "cppunittest", + "install": False, + "options": [ + "--symbols-path=%(symbols_path)s", + "--xre-path=%(xre_path)s", + "--localBinDir=../bin", + "--apk=%(installer_path)s", + ".", + "--deviceSerial=%(device_serial)s", + "--log-errorsummary=%(error_summary_file)s", + ], + }, + "geckoview-junit": { + "run_filename": "runjunit.py", + "testsdir": "mochitest", + "options": [ + "--certificate-path=%(certs_path)s", + "--remote-webserver=%(remote_webserver)s", + "--symbols-path=%(symbols_path)s", + "--utility-path=%(utility_path)s", + "--deviceSerial=%(device_serial)s", + ], + }, + "gtest": { + "run_filename": "remotegtests.py", + "testsdir": "gtest", + "install": True, + "options": [ + "--symbols-path=%(symbols_path)s", + "--tests-path=%(gtest_dir)s", + "--libxul=%(gtest_dir)s/gtest_bin/gtest/libxul.so", + "--package=%(app)s", + "--deviceSerial=%(device_serial)s", + ], + }, + }, # end suite_definitions +} diff --git a/testing/mozharness/configs/android/android_hw.py b/testing/mozharness/configs/android/android_hw.py new file mode 100644 index 0000000000..f88568b43b --- /dev/null +++ b/testing/mozharness/configs/android/android_hw.py @@ -0,0 +1,28 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +# mozharness configuration for Android hardware unit tests +# +# This configuration should be combined with suite definitions and other +# mozharness configuration from android_common.py, or similar. + +config = { + "exes": {}, + "env": { + "DISPLAY": ":0.0", + "PATH": "%(PATH)s", + }, + "default_actions": [ + "clobber", + "download-and-extract", + "create-virtualenv", + "verify-device", + "install", + "run-tests", + ], + "tooltool_cache": "/builds/tooltool_cache", + # from android_common.py + "download_tooltool": True, + "xpcshell_extra": "--remoteTestRoot=/data/local/tmp/test_root", +} diff --git a/testing/mozharness/configs/android/android_pgo.py b/testing/mozharness/configs/android/android_pgo.py new file mode 100644 index 0000000000..4b9050184e --- /dev/null +++ b/testing/mozharness/configs/android/android_pgo.py @@ -0,0 +1,19 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +# Mozharness configuration for Android PGO. +# +# This configuration should be combined with platform-specific mozharness +# configuration such as androidarm.py, or similar. + +config = { + "default_actions": [ + "download", + "create-virtualenv", + "start-emulator", + "verify-device", + "install", + "run-tests", + ], +} diff --git a/testing/mozharness/configs/android/wrench.py b/testing/mozharness/configs/android/wrench.py new file mode 100644 index 0000000000..6df1190131 --- /dev/null +++ b/testing/mozharness/configs/android/wrench.py @@ -0,0 +1,41 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +# mozharness configuration for Android x86 7.0 wrench tests +# +# This configuration should be combined with suite definitions and other +# mozharness configuration from android_common.py, or similar. + +config = { + "emulator_avd_name": "mozemulator-x86_64", + "emulator_process_name": "qemu-system-x86_64", + "emulator_extra_args": [ + "-gpu", + "on", + "-skip-adb-auth", + "-verbose", + "-show-kernel", + "-ranchu", + "-selinux", + "permissive", + "-memory", + "3072", + "-cores", + "4", + "-skin", + "800x1280", + "-no-snapstorage", + "-no-snapshot", + # Skips first-run dialogs + "-prop", + "ro.test_harness=true", + ], + "exes": { + "adb": "%(abs_sdk_dir)s/platform-tools/adb", + }, + "env": { + "DISPLAY": ":0.0", + "PATH": "%(PATH)s:%(abs_sdk_dir)s/emulator:%(abs_sdk_dir)s/tools:%(abs_sdk_dir)s/platform-tools", + }, +} diff --git a/testing/mozharness/configs/awsy/linux_config.py b/testing/mozharness/configs/awsy/linux_config.py new file mode 100644 index 0000000000..0786dfd286 --- /dev/null +++ b/testing/mozharness/configs/awsy/linux_config.py @@ -0,0 +1,30 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +PYTHON = "/usr/bin/env python" +VENV_PATH = "%s/build/venv" % os.getcwd() +ABS_WORK_DIR = os.path.join(os.getcwd(), "build") +BINARY_PATH = os.path.join(ABS_WORK_DIR, "application", "firefox", "firefox-bin") +INSTALLER_PATH = os.path.join(ABS_WORK_DIR, "installer.tar.bz2") + +config = { + "log_name": "awsy", + "binary_path": BINARY_PATH, + "installer_path": INSTALLER_PATH, + "virtualenv_path": VENV_PATH, + "cmd_timeout": 6500, + "exes": {}, + "title": os.uname()[1].lower().split(".")[0], + "default_actions": [ + "clobber", + "download-and-extract", + "populate-webroot", + "create-virtualenv", + "install", + "run-tests", + ], + "tooltool_cache": os.path.join(os.getcwd(), "tooltool_cache"), +} diff --git a/testing/mozharness/configs/awsy/macosx_config.py b/testing/mozharness/configs/awsy/macosx_config.py new file mode 100644 index 0000000000..f765d0e3f9 --- /dev/null +++ b/testing/mozharness/configs/awsy/macosx_config.py @@ -0,0 +1,28 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +PYTHON = "/usr/bin/env python" +VENV_PATH = "%s/build/venv" % os.getcwd() +ABS_WORK_DIR = os.path.join(os.getcwd(), "build") +INSTALLER_PATH = os.path.join(ABS_WORK_DIR, "installer.dmg") + +config = { + "log_name": "awsy", + "installer_path": INSTALLER_PATH, + "virtualenv_path": VENV_PATH, + "cmd_timeout": 6500, + "exes": {}, + "title": os.uname()[1].lower().split(".")[0], + "default_actions": [ + "clobber", + "download-and-extract", + "populate-webroot", + "create-virtualenv", + "install", + "run-tests", + ], + "tooltool_cache": os.path.join(os.getcwd(), "tooltool_cache"), +} diff --git a/testing/mozharness/configs/awsy/taskcluster_windows_config.py b/testing/mozharness/configs/awsy/taskcluster_windows_config.py new file mode 100644 index 0000000000..7d69594f67 --- /dev/null +++ b/testing/mozharness/configs/awsy/taskcluster_windows_config.py @@ -0,0 +1,30 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os +import sys + +import mozharness + +external_tools_path = os.path.join( + os.path.abspath(os.path.dirname(os.path.dirname(mozharness.__file__))), + "external_tools", +) + +config = { + "virtualenv_path": "venv", + "exes": { + "python": sys.executable, + "hg": os.path.join(os.environ["PROGRAMFILES"], "Mercurial", "hg"), + }, + "download_symbols": "ondemand", + "default_actions": [ + "clobber", + "download-and-extract", + "populate-webroot", + "create-virtualenv", + "install", + "run-tests", + ], +} diff --git a/testing/mozharness/configs/balrog/production.py b/testing/mozharness/configs/balrog/production.py new file mode 100644 index 0000000000..fbbdf53e0e --- /dev/null +++ b/testing/mozharness/configs/balrog/production.py @@ -0,0 +1,35 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "balrog_servers": [ + { + "balrog_api_root": "https://aus4-admin.mozilla.org/api", + "ignore_failures": False, + "url_replacements": [ + ( + "http://archive.mozilla.org/pub", + "http://download.cdn.mozilla.net/pub", + ), + ], + "balrog_usernames": { + "firefox": "balrog-ffxbld", + "thunderbird": "balrog-tbirdbld", + "mobile": "balrog-ffxbld", + "Fennec": "balrog-ffxbld", + }, + }, + # Bug 1261346 - temporarily disable staging balrog submissions + # { + # 'balrog_api_root': 'https://aus4-admin-dev.allizom.org/api', + # 'ignore_failures': True, + # 'balrog_usernames': { + # 'firefox': 'stage-ffxbld', + # 'thunderbird': 'stage-tbirdbld', + # 'mobile': 'stage-ffxbld', + # 'Fennec': 'stage-ffxbld', + # } + # } + ] +} diff --git a/testing/mozharness/configs/balrog/staging.py b/testing/mozharness/configs/balrog/staging.py new file mode 100644 index 0000000000..7329a4d128 --- /dev/null +++ b/testing/mozharness/configs/balrog/staging.py @@ -0,0 +1,18 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "balrog_servers": [ + { + "balrog_api_root": "https://balrog-admin.stage.mozaws.net/api", + "ignore_failures": False, + "balrog_usernames": { + "firefox": "balrog-stage-ffxbld", + "thunderbird": "balrog-stage-tbirdbld", + "mobile": "balrog-stage-ffxbld", + "Fennec": "balrog-stage-ffxbld", + }, + } + ] +} diff --git a/testing/mozharness/configs/builds/build_pool_specifics.py b/testing/mozharness/configs/builds/build_pool_specifics.py new file mode 100644 index 0000000000..837060b649 --- /dev/null +++ b/testing/mozharness/configs/builds/build_pool_specifics.py @@ -0,0 +1,14 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +# this is a dict of pool specific keys/values. As this fills up and more +# fx build factories are ported, we might deal with this differently + +config = { + "taskcluster": { + "upload_env": { + "UPLOAD_PATH": "/builds/worker/artifacts", + }, + }, +} diff --git a/testing/mozharness/configs/builds/releng_base_android_64_builds.py b/testing/mozharness/configs/builds/releng_base_android_64_builds.py new file mode 100644 index 0000000000..c937819d85 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_base_android_64_builds.py @@ -0,0 +1,57 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + ######################################################################### + ######## ANDROID GENERIC CONFIG KEYS/VAlUES + # note: overridden by MOZHARNESS_ACTIONS in TaskCluster tasks + "default_actions": [ + "build", + "multi-l10n", + ], + "secret_files": [ + { + "filename": "/builds/gls-gapi.data", + "secret_name": "project/releng/gecko/build/level-%(scm-level)s/gls-gapi.data", + "min_scm_level": 1, + }, + { + "filename": "/builds/sb-gapi.data", + "secret_name": "project/releng/gecko/build/level-%(scm-level)s/sb-gapi.data", + "min_scm_level": 1, + }, + { + "filename": "/builds/mozilla-fennec-geoloc-api.key", + "secret_name": "project/releng/gecko/build/level-%(scm-level)s/mozilla-fennec-geoloc-api.key", + "min_scm_level": 2, + "default": "try-build-has-no-secrets", + }, + ], + "vcs_share_base": "/builds/hg-shared", + "multi_locale": True, + ######################################################################### + ######################################################################### + "platform": "android", + "stage_platform": "android", + "enable_max_vsize": False, + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "DISPLAY": ":2", + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "TINDERBOX_OUTPUT": "1", + "TOOLTOOL_CACHE": "/builds/worker/tooltool-cache", + "TOOLTOOL_HOME": "/builds", + "LC_ALL": "C", + "PATH": "/usr/local/bin:/bin:/usr/bin", + "SHIP_LICENSED_FONTS": "1", + }, + "src_mozconfig": "mobile/android/config/mozconfigs/android/nightly", + # Bug 1583594: GeckoView doesn't (yet) produce have a package file + # from which to extract package metrics. + "disable_package_metrics": True, + ######################################################################### +} diff --git a/testing/mozharness/configs/builds/releng_base_firefox.py b/testing/mozharness/configs/builds/releng_base_firefox.py new file mode 100644 index 0000000000..b634aff677 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_base_firefox.py @@ -0,0 +1,7 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "app_name": "browser", +} diff --git a/testing/mozharness/configs/builds/releng_base_linux_32_builds.py b/testing/mozharness/configs/builds/releng_base_linux_32_builds.py new file mode 100644 index 0000000000..03c333a5f9 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_base_linux_32_builds.py @@ -0,0 +1,60 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + ######################################################################### + ######## LINUX GENERIC CONFIG KEYS/VAlUES + # if you are updating this with custom 32 bit keys/values please add them + # below under the '32 bit specific' code block otherwise, update in this + # code block and also make sure this is synced with + # releng_base_linux_64_builds.py + # note: overridden by MOZHARNESS_ACTIONS in TaskCluster tasks + "default_actions": [ + "clobber", + "build", + ], + "secret_files": [ + { + "filename": "/builds/gls-gapi.data", + "secret_name": "project/releng/gecko/build/level-%(scm-level)s/gls-gapi.data", + "min_scm_level": 1, + }, + { + "filename": "/builds/sb-gapi.data", + "secret_name": "project/releng/gecko/build/level-%(scm-level)s/sb-gapi.data", + "min_scm_level": 1, + }, + { + "filename": "/builds/mozilla-desktop-geoloc-api.key", + "secret_name": "project/releng/gecko/build/level-%(scm-level)s/mozilla-desktop-geoloc-api.key", + "min_scm_level": 2, + "default": "try-build-has-no-secrets", + }, + ], + "vcs_share_base": "/builds/hg-shared", + ######################################################################### + ######################################################################### + ###### 32 bit specific ###### + "platform": "linux", + "stage_platform": "linux", + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "DISPLAY": ":2", + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "TINDERBOX_OUTPUT": "1", + "TOOLTOOL_CACHE": "/builds/worker/tooltool-cache", + "TOOLTOOL_HOME": "/builds", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + # 32 bit specific + "PATH": "/usr/local/bin:\ +/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/sbin", + }, + "mozconfig_platform": "linux32", + "mozconfig_variant": "nightly", + ######################################################################### +} diff --git a/testing/mozharness/configs/builds/releng_base_linux_64_builds.py b/testing/mozharness/configs/builds/releng_base_linux_64_builds.py new file mode 100644 index 0000000000..8904c9ca9e --- /dev/null +++ b/testing/mozharness/configs/builds/releng_base_linux_64_builds.py @@ -0,0 +1,59 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + ######################################################################### + ######## LINUX GENERIC CONFIG KEYS/VAlUES + # if you are updating this with custom 64 bit keys/values please add them + # below under the '64 bit specific' code block otherwise, update in this + # code block and also make sure this is synced with + # releng_base_linux_64_builds.py + "default_actions": [ + "clobber", + "build", + ], + "secret_files": [ + { + "filename": "/builds/gls-gapi.data", + "secret_name": "project/releng/gecko/build/level-%(scm-level)s/gls-gapi.data", + "min_scm_level": 1, + }, + { + "filename": "/builds/sb-gapi.data", + "secret_name": "project/releng/gecko/build/level-%(scm-level)s/sb-gapi.data", + "min_scm_level": 1, + }, + { + "filename": "/builds/mozilla-desktop-geoloc-api.key", + "secret_name": "project/releng/gecko/build/level-%(scm-level)s/mozilla-desktop-geoloc-api.key", + "min_scm_level": 2, + "default": "try-build-has-no-secrets", + }, + ], + "vcs_share_base": "/builds/hg-shared", + ######################################################################### + ######################################################################### + ###### 64 bit specific ###### + "platform": "linux64", + "stage_platform": "linux64", + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "DISPLAY": ":2", + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "TINDERBOX_OUTPUT": "1", + "TOOLTOOL_CACHE": "/builds/worker/tooltool-cache", + "TOOLTOOL_HOME": "/builds", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + ## 64 bit specific + "PATH": "/usr/local/bin:/bin:" "/usr/bin:/usr/local/sbin:/usr/sbin:" "/sbin" + ## + }, + "mozconfig_platform": "linux64", + "mozconfig_variant": "nightly", + ######################################################################### +} diff --git a/testing/mozharness/configs/builds/releng_base_mac_64_cross_builds.py b/testing/mozharness/configs/builds/releng_base_mac_64_cross_builds.py new file mode 100644 index 0000000000..fbbddf1c3d --- /dev/null +++ b/testing/mozharness/configs/builds/releng_base_mac_64_cross_builds.py @@ -0,0 +1,55 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + ######################################################################### + ######## MACOSX CROSS GENERIC CONFIG KEYS/VAlUES + # note: overridden by MOZHARNESS_ACTIONS in TaskCluster tasks + "default_actions": [ + "build", + ], + "secret_files": [ + { + "filename": "/builds/gls-gapi.data", + "secret_name": "project/releng/gecko/build/level-%(scm-level)s/gls-gapi.data", + "min_scm_level": 1, + }, + { + "filename": "/builds/sb-gapi.data", + "secret_name": "project/releng/gecko/build/level-%(scm-level)s/sb-gapi.data", + "min_scm_level": 1, + }, + { + "filename": "/builds/mozilla-desktop-geoloc-api.key", + "secret_name": "project/releng/gecko/build/level-%(scm-level)s/mozilla-desktop-geoloc-api.key", + "min_scm_level": 2, + "default": "try-build-has-no-secrets", + }, + ], + "enable_check_test": False, + "vcs_share_base": "/builds/hg-shared", + ######################################################################### + ######################################################################### + ###### 64 bit specific ###### + "platform": "macosx64", + "stage_platform": "macosx64", + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "TINDERBOX_OUTPUT": "1", + "TOOLTOOL_CACHE": "/builds/worker/tooltool-cache", + "TOOLTOOL_HOME": "/builds", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + ## 64 bit specific + "PATH": "/usr/local/bin:/bin:" "/usr/bin:/usr/local/sbin:/usr/sbin:/sbin" + ## + }, + "mozconfig_platform": "macosx64", + "mozconfig_variant": "nightly", + ######################################################################### +} diff --git a/testing/mozharness/configs/builds/releng_base_windows_32_mingw_builds.py b/testing/mozharness/configs/builds/releng_base_windows_32_mingw_builds.py new file mode 100644 index 0000000000..0c1ede6454 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_base_windows_32_mingw_builds.py @@ -0,0 +1,53 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + ######################################################################### + ######## LINUX GENERIC CONFIG KEYS/VAlUES + # if you are updating this with custom 32 bit keys/values please add them + # below under the '32 bit specific' code block otherwise, update in this + # code block and also make sure this is synced with + # releng_base_linux_64_builds.py + "secret_files": [ + { + "filename": "/builds/gls-gapi.data", + "secret_name": "project/releng/gecko/build/level-%(scm-level)s/gls-gapi.data", + "min_scm_level": 1, + }, + { + "filename": "/builds/sb-gapi.data", + "secret_name": "project/releng/gecko/build/level-%(scm-level)s/sb-gapi.data", + "min_scm_level": 1, + }, + { + "filename": "/builds/mozilla-desktop-geoloc-api.key", + "secret_name": "project/releng/gecko/build/level-%(scm-level)s/mozilla-desktop-geoloc-api.key", + "min_scm_level": 2, + "default": "try-build-has-no-secrets", + }, + ], + "vcs_share_base": "/builds/hg-shared", + ######################################################################### + ######################################################################### + ###### 32 bit specific ###### + "platform": "win32-mingw32", + "stage_platform": "win32-mingw32", + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "DISPLAY": ":2", + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "TINDERBOX_OUTPUT": "1", + "TOOLTOOL_CACHE": "/builds/worker/tooltool-cache", + "TOOLTOOL_HOME": "/builds", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + # 32 bit specific + "PATH": "/usr/local/bin:/bin:/usr/bin", + }, + "mozconfig_platform": "win32", + ######################################################################### +} diff --git a/testing/mozharness/configs/builds/releng_base_windows_64_mingw_builds.py b/testing/mozharness/configs/builds/releng_base_windows_64_mingw_builds.py new file mode 100644 index 0000000000..3019dec3c9 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_base_windows_64_mingw_builds.py @@ -0,0 +1,54 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + ######################################################################### + ######## LINUX GENERIC CONFIG KEYS/VAlUES + # if you are updating this with custom 32 bit keys/values please add them + # below under the '32 bit specific' code block otherwise, update in this + # code block and also make sure this is synced with + # releng_base_linux_64_builds.py + "secret_files": [ + { + "filename": "/builds/gls-gapi.data", + "secret_name": "project/releng/gecko/build/level-%(scm-level)s/gls-gapi.data", + "min_scm_level": 1, + }, + { + "filename": "/builds/sb-gapi.data", + "secret_name": "project/releng/gecko/build/level-%(scm-level)s/sb-gapi.data", + "min_scm_level": 1, + }, + { + "filename": "/builds/mozilla-desktop-geoloc-api.key", + "secret_name": "project/releng/gecko/build/level-%(scm-level)s/mozilla-desktop-geoloc-api.key", + "min_scm_level": 2, + "default": "try-build-has-no-secrets", + }, + ], + "vcs_share_base": "/builds/hg-shared", + ######################################################################### + ######################################################################### + ###### 64 bit specific ###### + "platform": "win64-mingw32", + "stage_platform": "win64-mingw32", + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "DISPLAY": ":2", + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "TINDERBOX_OUTPUT": "1", + "TOOLTOOL_CACHE": "/builds/worker/tooltool-cache", + "TOOLTOOL_HOME": "/builds", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + # 32 bit specific + "PATH": "/usr/local/bin:/bin:/usr/bin", + }, + "mozconfig_platform": "win64", + "mozconfig_variant": "mingw32", + ######################################################################### +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_aarch64.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_aarch64.py new file mode 100644 index 0000000000..77879cae1b --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_aarch64.py @@ -0,0 +1,8 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-aarch64", + "src_mozconfig": "mobile/android/config/mozconfigs/android-aarch64/nightly", +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_aarch64_beta.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_aarch64_beta.py new file mode 100644 index 0000000000..e340422568 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_aarch64_beta.py @@ -0,0 +1,8 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-aarch64", + "src_mozconfig": "mobile/android/config/mozconfigs/android-aarch64/beta", +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_aarch64_beta_debug.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_aarch64_beta_debug.py new file mode 100644 index 0000000000..42462096cc --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_aarch64_beta_debug.py @@ -0,0 +1,9 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-aarch64-debug", + "src_mozconfig": "mobile/android/config/mozconfigs/android-aarch64/debug-beta", + "debug_build": True, +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_aarch64_debug.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_aarch64_debug.py new file mode 100644 index 0000000000..21ccc11cf8 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_aarch64_debug.py @@ -0,0 +1,9 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-aarch64-debug", + "src_mozconfig": "mobile/android/config/mozconfigs/android-aarch64/debug", + "debug_build": True, +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_aarch64_debug_lite.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_aarch64_debug_lite.py new file mode 100644 index 0000000000..6e3471c4f7 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_aarch64_debug_lite.py @@ -0,0 +1,9 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-aarch64-lite-debug", + "src_mozconfig": "mobile/android/config/mozconfigs/android-aarch64/debug-lite", + "debug_build": True, +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_aarch64_lite.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_aarch64_lite.py new file mode 100644 index 0000000000..5e10364f01 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_aarch64_lite.py @@ -0,0 +1,8 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-aarch64-lite", + "src_mozconfig": "mobile/android/config/mozconfigs/android-aarch64/nightly-lite", +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_aarch64_profile_generate.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_aarch64_profile_generate.py new file mode 100644 index 0000000000..9dae6f4344 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_aarch64_profile_generate.py @@ -0,0 +1,8 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-aarch64", + "src_mozconfig": "mobile/android/config/mozconfigs/android-aarch64/profile-generate", +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_arm.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_arm.py new file mode 100644 index 0000000000..cbe75b6f0f --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_arm.py @@ -0,0 +1,8 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-arm", + "src_mozconfig": "mobile/android/config/mozconfigs/android-arm/nightly", +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_arm_beta.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_arm_beta.py new file mode 100644 index 0000000000..d611be21f1 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_arm_beta.py @@ -0,0 +1,8 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-arm", + "src_mozconfig": "mobile/android/config/mozconfigs/android-arm/beta", +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_arm_beta_debug.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_arm_beta_debug.py new file mode 100644 index 0000000000..7df4c699f1 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_arm_beta_debug.py @@ -0,0 +1,9 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-arm-debug", + "src_mozconfig": "mobile/android/config/mozconfigs/android-arm/debug-beta", + "debug_build": True, +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_arm_debug.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_arm_debug.py new file mode 100644 index 0000000000..f0651edbf8 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_arm_debug.py @@ -0,0 +1,9 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-arm-debug", + "src_mozconfig": "mobile/android/config/mozconfigs/android-arm/debug", + "debug_build": True, +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_arm_debug_ccov.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_arm_debug_ccov.py new file mode 100644 index 0000000000..c41aeebaa4 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_arm_debug_ccov.py @@ -0,0 +1,15 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-arm-debug-ccov", + "src_mozconfig": "mobile/android/config/mozconfigs/android-arm/debug-ccov", + "debug_build": True, + "postflight_build_mach_commands": [ + [ + "android", + "archive-coverage-artifacts", + ], + ], +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_arm_debug_lite.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_arm_debug_lite.py new file mode 100644 index 0000000000..b6541a4f8e --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_arm_debug_lite.py @@ -0,0 +1,9 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-arm-lite-debug", + "src_mozconfig": "mobile/android/config/mozconfigs/android-arm/debug-lite", + "debug_build": True, +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_arm_debug_searchfox.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_arm_debug_searchfox.py new file mode 100644 index 0000000000..6f5b8b7d5c --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_arm_debug_searchfox.py @@ -0,0 +1,9 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-arm-debug", + "src_mozconfig": "mobile/android/config/mozconfigs/android-arm/debug-searchfox", + "debug_build": True, +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_arm_gradle_dependencies.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_arm_gradle_dependencies.py new file mode 100644 index 0000000000..6d6cce7626 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_arm_gradle_dependencies.py @@ -0,0 +1,15 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-arm-gradle-dependencies", + "src_mozconfig": "mobile/android/config/mozconfigs/android-arm-gradle-dependencies/nightly", + # gradle-dependencies doesn't produce a package. So don't collect package metrics. + "postflight_build_mach_commands": [ + [ + "android", + "gradle-dependencies", + ], + ], +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_arm_lite.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_arm_lite.py new file mode 100644 index 0000000000..65d9c3ba4d --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_arm_lite.py @@ -0,0 +1,8 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-arm-lite", + "src_mozconfig": "mobile/android/config/mozconfigs/android-arm/nightly-lite", +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_arm_partner_sample1.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_arm_partner_sample1.py new file mode 100644 index 0000000000..6ddace34da --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_arm_partner_sample1.py @@ -0,0 +1,10 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-arm-partner-sample1", + "src_mozconfig": None, # use manifest to determine mozconfig src + "src_mozconfig_manifest": "partner/mozconfigs/mozconfig1.json", + "tooltool_manifest_src": "mobile/android/config/tooltool-manifests/android/releng.manifest", +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_arm_partner_sample1_lite.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_arm_partner_sample1_lite.py new file mode 100644 index 0000000000..535ebca2da --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_arm_partner_sample1_lite.py @@ -0,0 +1,10 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-arm-partner-sample1-lite", + "src_mozconfig": None, # use manifest to determine mozconfig src + "src_mozconfig_manifest": "partner/mozconfigs/mozconfig1.json", + "tooltool_manifest_src": "mobile/android/config/tooltool-manifests/android/releng.manifest", +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_arm_profile_generate_lite.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_arm_profile_generate_lite.py new file mode 100644 index 0000000000..04a85025cd --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_arm_profile_generate_lite.py @@ -0,0 +1,8 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-arm-lite", + "src_mozconfig": "mobile/android/config/mozconfigs/android-arm/profile-generate-lite", +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_fuzzing_asan_tc.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_fuzzing_asan_tc.py new file mode 100644 index 0000000000..1095c18c68 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_fuzzing_asan_tc.py @@ -0,0 +1,8 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-x86_64-asan-fuzzing", + "src_mozconfig": "mobile/android/config/mozconfigs/android-x86_64/nightly-fuzzing-asan", +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_fuzzing_debug.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_fuzzing_debug.py new file mode 100644 index 0000000000..dc98ba0244 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_fuzzing_debug.py @@ -0,0 +1,9 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-x86_64-fuzzing-debug", + "src_mozconfig": "mobile/android/config/mozconfigs/android-x86_64/debug-fuzzing", + "debug_build": True, +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_geckoview_docs.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_geckoview_docs.py new file mode 100644 index 0000000000..784d289f9e --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_geckoview_docs.py @@ -0,0 +1,25 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-geckoview-docs", + "src_mozconfig": "mobile/android/config/mozconfigs/android-arm/nightly-android-lints", + # geckoview-docs doesn't produce a package. So don't collect package metrics. + "disable_package_metrics": True, + "postflight_build_mach_commands": [ + [ + "android", + "geckoview-docs", + "--archive", + "--upload", + "mozilla/geckoview", + "--upload-branch", + "gh-pages", + "--javadoc-path", + "javadoc/{project}", + "--upload-message", + "Update {project} documentation to rev {revision}", + ], + ], +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86.py new file mode 100644 index 0000000000..01fda10b32 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86.py @@ -0,0 +1,8 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-x86", + "src_mozconfig": "mobile/android/config/mozconfigs/android-x86/nightly", +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_64.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_64.py new file mode 100644 index 0000000000..839779f71f --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_64.py @@ -0,0 +1,8 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-x86_64", + "src_mozconfig": "mobile/android/config/mozconfigs/android-x86_64/nightly", +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_64_beta.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_64_beta.py new file mode 100644 index 0000000000..838c76ec70 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_64_beta.py @@ -0,0 +1,8 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-x86_64", + "src_mozconfig": "mobile/android/config/mozconfigs/android-x86_64/beta", +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_64_beta_debug.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_64_beta_debug.py new file mode 100644 index 0000000000..4a345506b5 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_64_beta_debug.py @@ -0,0 +1,9 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-x86_64-debug", + "src_mozconfig": "mobile/android/config/mozconfigs/android-x86_64/debug-beta", + "debug_build": True, +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_64_debug.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_64_debug.py new file mode 100644 index 0000000000..3cc64c7257 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_64_debug.py @@ -0,0 +1,9 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-x86_64-debug", + "src_mozconfig": "mobile/android/config/mozconfigs/android-x86_64/debug", + "debug_build": True, +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_64_debug_isolated_process.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_64_debug_isolated_process.py new file mode 100644 index 0000000000..a026eb71c0 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_64_debug_isolated_process.py @@ -0,0 +1,9 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-x86_64-debug", + "src_mozconfig": "mobile/android/config/mozconfigs/android-x86_64/debug-isolated-process", + "debug_build": True, +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_64_debug_lite.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_64_debug_lite.py new file mode 100644 index 0000000000..e3dd2a72f7 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_64_debug_lite.py @@ -0,0 +1,9 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-x86_64-lite-debug", + "src_mozconfig": "mobile/android/config/mozconfigs/android-x86_64/debug-lite", + "debug_build": True, +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_64_lite.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_64_lite.py new file mode 100644 index 0000000000..2764ed2a16 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_64_lite.py @@ -0,0 +1,8 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-x86_64-lite", + "src_mozconfig": "mobile/android/config/mozconfigs/android-x86_64/nightly-lite", +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_64_profile_generate.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_64_profile_generate.py new file mode 100644 index 0000000000..9358021723 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_64_profile_generate.py @@ -0,0 +1,8 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-x86_64", + "src_mozconfig": "mobile/android/config/mozconfigs/android-x86_64/profile-generate", +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_beta.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_beta.py new file mode 100644 index 0000000000..1bf5078885 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_beta.py @@ -0,0 +1,8 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-x86", + "src_mozconfig": "mobile/android/config/mozconfigs/android-x86/beta", +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_beta_debug.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_beta_debug.py new file mode 100644 index 0000000000..50cb83c454 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_beta_debug.py @@ -0,0 +1,9 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-x86-debug", + "src_mozconfig": "mobile/android/config/mozconfigs/android-x86/debug-beta", + "debug_build": True, +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_debug.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_debug.py new file mode 100644 index 0000000000..eaa4c09ed0 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_debug.py @@ -0,0 +1,9 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-x86-debug", + "src_mozconfig": "mobile/android/config/mozconfigs/android-x86/debug", + "debug_build": True, +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_debug_lite.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_debug_lite.py new file mode 100644 index 0000000000..ce49ad8e1d --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_debug_lite.py @@ -0,0 +1,9 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-x86-lite-debug", + "src_mozconfig": "mobile/android/config/mozconfigs/android-x86/debug-lite", + "debug_build": True, +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_lite.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_lite.py new file mode 100644 index 0000000000..1dba75afe0 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_lite.py @@ -0,0 +1,8 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-x86-lite", + "src_mozconfig": "mobile/android/config/mozconfigs/android-x86/nightly-lite", +} diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_profile_generate.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_profile_generate.py new file mode 100644 index 0000000000..08ce1529c3 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_profile_generate.py @@ -0,0 +1,8 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "android-x86", + "src_mozconfig": "mobile/android/config/mozconfigs/android-x86/profile-generate", +} diff --git a/testing/mozharness/configs/builds/releng_sub_linux_configs/32_debug.py b/testing/mozharness/configs/builds/releng_sub_linux_configs/32_debug.py new file mode 100644 index 0000000000..ea0a6d17b0 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/32_debug.py @@ -0,0 +1,26 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "debug_build": True, + "stage_platform": "linux-debug", + #### 32 bit build specific ##### + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "DISPLAY": ":2", + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + # 32 bit specific + "PATH": "/usr/local/bin:/bin:\ +/usr/bin:/usr/local/sbin:/usr/sbin:/sbin:", + "LD_LIBRARY_PATH": "%(abs_obj_dir)s/dist/bin", + "XPCOM_DEBUG_BREAK": "stack-and-abort", + "TINDERBOX_OUTPUT": "1", + }, + ####################### +} diff --git a/testing/mozharness/configs/builds/releng_sub_linux_configs/32_fuzzing_asan_tc.py b/testing/mozharness/configs/builds/releng_sub_linux_configs/32_fuzzing_asan_tc.py new file mode 100644 index 0000000000..6b288ccc0a --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/32_fuzzing_asan_tc.py @@ -0,0 +1,27 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "stage_platform": "linux32-fuzzing-asan", + #### 32 bit build specific ##### + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "MOZ_AUTOMATION": "1", + "DISPLAY": ":2", + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "TINDERBOX_OUTPUT": "1", + "TOOLTOOL_CACHE": "/builds/tooltool_cache", + "TOOLTOOL_HOME": "/builds", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + "ASAN_OPTIONS": "detect_leaks=0", + ## 32 bit specific + "PATH": "/usr/local/bin:/bin:\ +/usr/bin:/usr/local/sbin:/usr/sbin:/sbin", + }, + ####################### +} diff --git a/testing/mozharness/configs/builds/releng_sub_linux_configs/32_fuzzing_debug.py b/testing/mozharness/configs/builds/releng_sub_linux_configs/32_fuzzing_debug.py new file mode 100644 index 0000000000..41fe4cddcf --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/32_fuzzing_debug.py @@ -0,0 +1,26 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "stage_platform": "linux-fuzzing-debug", + "debug_build": True, + #### 32 bit build specific ##### + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "DISPLAY": ":2", + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + "XPCOM_DEBUG_BREAK": "stack-and-abort", + # 32 bit specific + "PATH": "/usr/local/bin:/bin:\ +/usr/bin:/usr/local/sbin:/usr/sbin:/sbin", + "LD_LIBRARY_PATH": "%(abs_obj_dir)s/dist/bin", + "TINDERBOX_OUTPUT": "1", + }, + ####################### +} diff --git a/testing/mozharness/configs/builds/releng_sub_linux_configs/32_rusttests.py b/testing/mozharness/configs/builds/releng_sub_linux_configs/32_rusttests.py new file mode 100644 index 0000000000..7aecddf896 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/32_rusttests.py @@ -0,0 +1,28 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "stage_platform": "linux-rusttests", + #### 32 bit build specific ##### + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "DISPLAY": ":2", + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + # 32 bit specific + "PATH": "/usr/local/bin:/bin:\ +/usr/bin:/usr/local/sbin:/usr/sbin:/sbin", + "LD_LIBRARY_PATH": "%(abs_obj_dir)s/dist/bin", + "XPCOM_DEBUG_BREAK": "stack-and-abort", + "TINDERBOX_OUTPUT": "1", + }, + "app_name": "tools/rusttests", + "mozconfig_variant": "rusttests", + "disable_package_metrics": True, + ####################### +} diff --git a/testing/mozharness/configs/builds/releng_sub_linux_configs/32_rusttests_debug.py b/testing/mozharness/configs/builds/releng_sub_linux_configs/32_rusttests_debug.py new file mode 100644 index 0000000000..0f7537ee5d --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/32_rusttests_debug.py @@ -0,0 +1,28 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "debug_build": True, + "stage_platform": "linux-rusttests-debug", + #### 32 bit build specific ##### + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "DISPLAY": ":2", + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + # 32 bit specific + "PATH": "/usr/local/bin:/bin:\ +/usr/bin:/usr/local/sbin:/usr/sbin:/sbin", + "LD_LIBRARY_PATH": "%(abs_obj_dir)s/dist/bin", + "XPCOM_DEBUG_BREAK": "stack-and-abort", + "TINDERBOX_OUTPUT": "1", + }, + "app_name": "tools/rusttests", + "disable_package_metrics": True, + ####################### +} diff --git a/testing/mozharness/configs/builds/releng_sub_linux_configs/64_add-on-devel.py b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_add-on-devel.py new file mode 100644 index 0000000000..ede8363c6a --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_add-on-devel.py @@ -0,0 +1,24 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "stage_platform": "linux64-add-on-devel", + #### 64 bit build specific ##### + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "TINDERBOX_OUTPUT": "1", + "TOOLTOOL_CACHE": "/builds/tooltool_cache", + "TOOLTOOL_HOME": "/builds", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + ## 64 bit specific + "PATH": "/builds/worker/workspace/build/src/gcc/bin:/usr/local/bin:/bin:\ +/usr/bin:/usr/local/sbin:/usr/sbin:/sbin", + }, + ####################### +} diff --git a/testing/mozharness/configs/builds/releng_sub_linux_configs/64_asan.py b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_asan.py new file mode 100644 index 0000000000..ac024b67bd --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_asan.py @@ -0,0 +1,30 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "default_actions": [ + "clobber", + "build", + ], + "stage_platform": "linux64-asan", + #### 64 bit build specific ##### + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "DISPLAY": ":2", + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "TINDERBOX_OUTPUT": "1", + "TOOLTOOL_CACHE": "/builds/tooltool_cache", + "TOOLTOOL_HOME": "/builds", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + ## 64 bit specific + "PATH": "/usr/local/bin:/bin:\ +/usr/bin:/usr/local/sbin:/usr/sbin:/sbin", + }, + "mozconfig_variant": "nightly-asan", + ####################### +} diff --git a/testing/mozharness/configs/builds/releng_sub_linux_configs/64_asan_and_debug.py b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_asan_and_debug.py new file mode 100644 index 0000000000..44d08e02af --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_asan_and_debug.py @@ -0,0 +1,31 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "default_actions": [ + "clobber", + "build", + ], + "stage_platform": "linux64-asan-debug", + "debug_build": True, + #### 64 bit build specific ##### + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "DISPLAY": ":2", + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "TINDERBOX_OUTPUT": "1", + "TOOLTOOL_CACHE": "/builds/tooltool_cache", + "TOOLTOOL_HOME": "/builds", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + ## 64 bit specific + "PATH": "/usr/local/bin:/bin:\ +/usr/bin:/usr/local/sbin:/usr/sbin:/sbin", + }, + "mozconfig_variant": "debug-asan", + ####################### +} diff --git a/testing/mozharness/configs/builds/releng_sub_linux_configs/64_asan_reporter_tc.py b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_asan_reporter_tc.py new file mode 100644 index 0000000000..9bc1010da0 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_asan_reporter_tc.py @@ -0,0 +1,27 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "stage_platform": "linux64-asan-reporter", + #### 64 bit build specific ##### + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "MOZ_AUTOMATION": "1", + "DISPLAY": ":2", + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "TINDERBOX_OUTPUT": "1", + "TOOLTOOL_CACHE": "/builds/tooltool_cache", + "TOOLTOOL_HOME": "/builds", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + "ASAN_OPTIONS": "detect_leaks=0", + ## 64 bit specific + "PATH": "/usr/local/bin:/bin:\ +/usr/bin:/usr/local/sbin:/usr/sbin:/sbin", + }, + ####################### +} diff --git a/testing/mozharness/configs/builds/releng_sub_linux_configs/64_asan_tc.py b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_asan_tc.py new file mode 100644 index 0000000000..d6751ccf4c --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_asan_tc.py @@ -0,0 +1,25 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "stage_platform": "linux64-asan", + #### 64 bit build specific ##### + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "DISPLAY": ":2", + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "TINDERBOX_OUTPUT": "1", + "TOOLTOOL_CACHE": "/builds/tooltool_cache", + "TOOLTOOL_HOME": "/builds", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + ## 64 bit specific + "PATH": "/usr/local/bin:/bin:\ +/usr/bin:/usr/local/sbin:/usr/sbin:/sbin", + }, + ####################### +} diff --git a/testing/mozharness/configs/builds/releng_sub_linux_configs/64_asan_tc_and_debug.py b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_asan_tc_and_debug.py new file mode 100644 index 0000000000..12ae638b3a --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_asan_tc_and_debug.py @@ -0,0 +1,26 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "stage_platform": "linux64-asan-debug", + "debug_build": True, + #### 64 bit build specific ##### + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "DISPLAY": ":2", + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "TINDERBOX_OUTPUT": "1", + "TOOLTOOL_CACHE": "/builds/tooltool_cache", + "TOOLTOOL_HOME": "/builds", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + ## 64 bit specific + "PATH": "/usr/local/bin:/bin:\ +/usr/bin:/usr/local/sbin:/usr/sbin:/sbin", + }, + ####################### +} diff --git a/testing/mozharness/configs/builds/releng_sub_linux_configs/64_code_coverage_debug.py b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_code_coverage_debug.py new file mode 100644 index 0000000000..f82294e646 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_code_coverage_debug.py @@ -0,0 +1,25 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "stage_platform": "linux64-ccov", + #### 64 bit build specific ##### + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "DISPLAY": ":2", + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "TINDERBOX_OUTPUT": "1", + "TOOLTOOL_CACHE": "/builds/tooltool_cache", + "TOOLTOOL_HOME": "/builds", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + ## 64 bit specific + "PATH": "/usr/local/bin:/bin:\ +/usr/bin:/usr/local/sbin:/usr/sbin:/sbin", + }, + ####################### +} diff --git a/testing/mozharness/configs/builds/releng_sub_linux_configs/64_code_coverage_opt.py b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_code_coverage_opt.py new file mode 100644 index 0000000000..f82294e646 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_code_coverage_opt.py @@ -0,0 +1,25 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "stage_platform": "linux64-ccov", + #### 64 bit build specific ##### + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "DISPLAY": ":2", + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "TINDERBOX_OUTPUT": "1", + "TOOLTOOL_CACHE": "/builds/tooltool_cache", + "TOOLTOOL_HOME": "/builds", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + ## 64 bit specific + "PATH": "/usr/local/bin:/bin:\ +/usr/bin:/usr/local/sbin:/usr/sbin:/sbin", + }, + ####################### +} diff --git a/testing/mozharness/configs/builds/releng_sub_linux_configs/64_debug.py b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_debug.py new file mode 100644 index 0000000000..e8ad7d1cc1 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_debug.py @@ -0,0 +1,26 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "stage_platform": "linux64-debug", + "debug_build": True, + #### 64 bit build specific ##### + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "DISPLAY": ":2", + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + "XPCOM_DEBUG_BREAK": "stack-and-abort", + # 64 bit specific + "PATH": "/usr/local/bin:/bin:\ +/usr/bin:/usr/local/sbin:/usr/sbin:/sbin", + "LD_LIBRARY_PATH": "%(abs_obj_dir)s/dist/bin", + "TINDERBOX_OUTPUT": "1", + }, + ####################### +} diff --git a/testing/mozharness/configs/builds/releng_sub_linux_configs/64_fuzzing_asan_tc.py b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_fuzzing_asan_tc.py new file mode 100644 index 0000000000..025e0843c2 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_fuzzing_asan_tc.py @@ -0,0 +1,27 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "stage_platform": "linux64-fuzzing-asan", + #### 64 bit build specific ##### + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "MOZ_AUTOMATION": "1", + "DISPLAY": ":2", + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "TINDERBOX_OUTPUT": "1", + "TOOLTOOL_CACHE": "/builds/tooltool_cache", + "TOOLTOOL_HOME": "/builds", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + "ASAN_OPTIONS": "detect_leaks=0", + ## 64 bit specific + "PATH": "/usr/local/bin:/bin:\ +/usr/bin:/usr/local/sbin:/usr/sbin:/sbin", + }, + ####################### +} diff --git a/testing/mozharness/configs/builds/releng_sub_linux_configs/64_fuzzing_debug.py b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_fuzzing_debug.py new file mode 100644 index 0000000000..101b09d635 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_fuzzing_debug.py @@ -0,0 +1,27 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "stage_platform": "linux64-fuzzing-debug", + "debug_build": True, + #### 64 bit build specific ##### + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "MOZ_AUTOMATION": "1", + "DISPLAY": ":2", + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + "XPCOM_DEBUG_BREAK": "stack-and-abort", + # 64 bit specific + "PATH": "/usr/local/bin:/bin:\ +/usr/bin:/usr/local/sbin:/usr/sbin:/sbin", + "LD_LIBRARY_PATH": "%(abs_obj_dir)s/dist/bin", + "TINDERBOX_OUTPUT": "1", + }, + ####################### +} diff --git a/testing/mozharness/configs/builds/releng_sub_linux_configs/64_fuzzing_tsan_tc.py b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_fuzzing_tsan_tc.py new file mode 100644 index 0000000000..5e5b880740 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_fuzzing_tsan_tc.py @@ -0,0 +1,25 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "stage_platform": "linux64-fuzzing-tsan", + #### 64 bit build specific ##### + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "DISPLAY": ":2", + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "TINDERBOX_OUTPUT": "1", + "TOOLTOOL_CACHE": "/builds/tooltool_cache", + "TOOLTOOL_HOME": "/builds", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + ## 64 bit specific + "PATH": "/usr/local/bin:/bin:\ +/usr/bin:/usr/local/sbin:/usr/sbin:/sbin", + }, + ####################### +} diff --git a/testing/mozharness/configs/builds/releng_sub_linux_configs/64_noopt_debug.py b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_noopt_debug.py new file mode 100644 index 0000000000..518ebed408 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_noopt_debug.py @@ -0,0 +1,24 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "stage_platform": "linux64-noopt-debug", + "debug_build": True, + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "DISPLAY": ":2", + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + "XPCOM_DEBUG_BREAK": "stack-and-abort", + # 64 bit specific + "PATH": "/usr/local/bin:/bin:\ +/usr/bin:/usr/local/sbin:/usr/sbin:/sbin", + "LD_LIBRARY_PATH": "%(abs_obj_dir)s/dist/bin", + "TINDERBOX_OUTPUT": "1", + }, +} diff --git a/testing/mozharness/configs/builds/releng_sub_linux_configs/64_rusttests.py b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_rusttests.py new file mode 100644 index 0000000000..3d9eef33ea --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_rusttests.py @@ -0,0 +1,27 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "stage_platform": "linux64-rusttests", + #### 64 bit build specific ##### + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "DISPLAY": ":2", + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "TINDERBOX_OUTPUT": "1", + "TOOLTOOL_CACHE": "/builds/tooltool_cache", + "TOOLTOOL_HOME": "/builds", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + ## 64 bit specific + "PATH": ":/usr/local/bin:/bin:\ +/usr/bin:/usr/local/sbin:/usr/sbin:/sbin", + }, + "app_name": "tools/rusttests", + "disable_package_metrics": True, + ####################### +} diff --git a/testing/mozharness/configs/builds/releng_sub_linux_configs/64_rusttests_debug.py b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_rusttests_debug.py new file mode 100644 index 0000000000..b9b1f257d3 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_rusttests_debug.py @@ -0,0 +1,26 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "stage_platform": "linux64-rusttests-debug", + "debug_build": True, + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "DISPLAY": ":2", + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + "XPCOM_DEBUG_BREAK": "stack-and-abort", + # 64 bit specific + "PATH": "/usr/local/bin:/bin:\ +/usr/bin:/usr/local/sbin:/usr/sbin:/sbin", + "LD_LIBRARY_PATH": "%(abs_obj_dir)s/dist/bin", + "TINDERBOX_OUTPUT": "1", + }, + "app_name": "tools/rusttests", + "disable_package_metrics": True, +} diff --git a/testing/mozharness/configs/builds/releng_sub_linux_configs/64_searchfox_and_debug.py b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_searchfox_and_debug.py new file mode 100644 index 0000000000..223be4959c --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_searchfox_and_debug.py @@ -0,0 +1,37 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + # note: overridden by MOZHARNESS_ACTIONS in TaskCluster tasks + "default_actions": [ + "clobber", + "build", + ], + "vcs_share_base": "/builds/hg-shared", + ######################################################################### + ######################################################################### + ###### 64 bit specific ###### + "platform": "linux64", + "stage_platform": "linux64-searchfox-opt", + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "DISPLAY": ":2", + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "TINDERBOX_OUTPUT": "1", + "TOOLTOOL_CACHE": "/builds/worker/tooltool-cache", + "TOOLTOOL_HOME": "/builds", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + ## 64 bit specific + "PATH": "/usr/local/bin:/bin:\ +/usr/bin:/usr/local/sbin:/usr/sbin:/sbin", + ## + }, + # This doesn't actually inherit from anything. + "mozconfig_platform": "linux64", + "mozconfig_variant": "debug-searchfox-clang", +} diff --git a/testing/mozharness/configs/builds/releng_sub_linux_configs/64_source.py b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_source.py new file mode 100644 index 0000000000..d728d917a2 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_source.py @@ -0,0 +1,15 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "default_actions": ["package-source"], + "stage_platform": "source", # Not used, but required by the script + "env": { + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "TINDERBOX_OUTPUT": "1", + "LC_ALL": "C", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + }, + "src_mozconfig": "browser/config/mozconfigs/linux64/source", +} diff --git a/testing/mozharness/configs/builds/releng_sub_linux_configs/64_stat_and_debug.py b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_stat_and_debug.py new file mode 100644 index 0000000000..c9a43b1642 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_stat_and_debug.py @@ -0,0 +1,37 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + # note: overridden by MOZHARNESS_ACTIONS in TaskCluster tasks + "default_actions": [ + "clobber", + "build", + ], + "vcs_share_base": "/builds/hg-shared", + ######################################################################### + ######################################################################### + ###### 64 bit specific ###### + "platform": "linux64", + "stage_platform": "linux64-st-an-opt", + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "DISPLAY": ":2", + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "TINDERBOX_OUTPUT": "1", + "TOOLTOOL_CACHE": "/builds/worker/tooltool-cache", + "TOOLTOOL_HOME": "/builds", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + ## 64 bit specific + "PATH": "/usr/local/bin:/bin:\ +/usr/bin:/usr/local/sbin:/usr/sbin:/sbin", + ## + }, + # This doesn't actually inherit from anything. + "mozconfig_platform": "linux64", + "mozconfig_variant": "debug-static-analysis-clang", +} diff --git a/testing/mozharness/configs/builds/releng_sub_linux_configs/64_tsan_tc.py b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_tsan_tc.py new file mode 100644 index 0000000000..6a749c8dd5 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_tsan_tc.py @@ -0,0 +1,25 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "stage_platform": "linux64-tsan", + #### 64 bit build specific ##### + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "DISPLAY": ":2", + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "TINDERBOX_OUTPUT": "1", + "TOOLTOOL_CACHE": "/builds/tooltool_cache", + "TOOLTOOL_HOME": "/builds", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + ## 64 bit specific + "PATH": "/usr/local/bin:/bin:\ +/usr/bin:/usr/local/sbin:/usr/sbin:/sbin", + }, + ####################### +} diff --git a/testing/mozharness/configs/builds/releng_sub_linux_configs/64_valgrind.py b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_valgrind.py new file mode 100644 index 0000000000..60ad7a4ce6 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_valgrind.py @@ -0,0 +1,30 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "default_actions": [ + "clobber", + "build", + "valgrind-test", + ], + "stage_platform": "linux64-valgrind", + #### 64 bit build specific ##### + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "DISPLAY": ":2", + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "TINDERBOX_OUTPUT": "1", + "TOOLTOOL_CACHE": "/builds/tooltool_cache", + "TOOLTOOL_HOME": "/builds", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + ## 64 bit specific + "PATH": "/usr/local/bin:/bin:\ +/usr/bin:/usr/local/sbin:/usr/sbin:/sbin", + }, + "mozconfig_variant": "valgrind", +} diff --git a/testing/mozharness/configs/builds/releng_sub_mac_configs/64_add-on-devel.py b/testing/mozharness/configs/builds/releng_sub_mac_configs/64_add-on-devel.py new file mode 100644 index 0000000000..4255adb500 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_mac_configs/64_add-on-devel.py @@ -0,0 +1,25 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "stage_platform": "macosx64-add-on-devel", + #### 64 bit build specific ##### + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "TINDERBOX_OUTPUT": "1", + "TOOLTOOL_CACHE": "/builds/tooltool_cache", + "TOOLTOOL_HOME": "/builds", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + ## 64 bit specific + "PATH": "/tools/python/bin:/opt/local/bin:/usr/bin:" + "/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin", + ## + }, + ####################### +} diff --git a/testing/mozharness/configs/builds/releng_sub_mac_configs/64_code_coverage_debug.py b/testing/mozharness/configs/builds/releng_sub_mac_configs/64_code_coverage_debug.py new file mode 100644 index 0000000000..a94cbb75f7 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_mac_configs/64_code_coverage_debug.py @@ -0,0 +1,26 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "stage_platform": "macosx64-ccov-debug", + "debug_build": True, + #### 64 bit build specific ##### + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "TINDERBOX_OUTPUT": "1", + "TOOLTOOL_CACHE": "/builds/tooltool_cache", + "TOOLTOOL_HOME": "/builds", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + ## 64 bit specific + "PATH": "/tools/python/bin:/opt/local/bin:/usr/bin:" + "/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin", + ## + }, + ####################### +} diff --git a/testing/mozharness/configs/builds/releng_sub_mac_configs/64_code_coverage_opt.py b/testing/mozharness/configs/builds/releng_sub_mac_configs/64_code_coverage_opt.py new file mode 100644 index 0000000000..6a5a1cb15a --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_mac_configs/64_code_coverage_opt.py @@ -0,0 +1,25 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "stage_platform": "macosx64-ccov-opt", + #### 64 bit build specific ##### + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "TINDERBOX_OUTPUT": "1", + "TOOLTOOL_CACHE": "/builds/tooltool_cache", + "TOOLTOOL_HOME": "/builds", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + ## 64 bit specific + "PATH": "/tools/python/bin:/opt/local/bin:/usr/bin:" + "/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin", + ## + }, + ####################### +} diff --git a/testing/mozharness/configs/builds/releng_sub_mac_configs/64_cross_debug.py b/testing/mozharness/configs/builds/releng_sub_mac_configs/64_cross_debug.py new file mode 100644 index 0000000000..82283ba2fb --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_mac_configs/64_cross_debug.py @@ -0,0 +1,26 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "stage_platform": "macosx64-debug", + "debug_build": True, + #### 64 bit build specific ##### + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "TINDERBOX_OUTPUT": "1", + "TOOLTOOL_CACHE": "/builds/tooltool_cache", + "TOOLTOOL_HOME": "/builds", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + "XPCOM_DEBUG_BREAK": "stack-and-abort", + ## 64 bit specific + "PATH": "/tools/python/bin:/opt/local/bin:/usr/bin:" + "/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin", + ## + }, +} diff --git a/testing/mozharness/configs/builds/releng_sub_mac_configs/64_cross_debug_searchfox.py b/testing/mozharness/configs/builds/releng_sub_mac_configs/64_cross_debug_searchfox.py new file mode 100644 index 0000000000..e402933641 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_mac_configs/64_cross_debug_searchfox.py @@ -0,0 +1,30 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "default_actions": [ + "clobber", + "build", + ], + "stage_platform": "macosx64-searchfox-debug", + "debug_build": True, + #### 64 bit build specific ##### + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "TINDERBOX_OUTPUT": "1", + "TOOLTOOL_CACHE": "/builds/tooltool_cache", + "TOOLTOOL_HOME": "/builds", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + "XPCOM_DEBUG_BREAK": "stack-and-abort", + # 64 bit specific + "PATH": "/tools/python/bin:/opt/local/bin:/usr/bin:" + "/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin", + }, + "mozconfig_variant": "debug-searchfox", +} diff --git a/testing/mozharness/configs/builds/releng_sub_mac_configs/64_cross_fuzzing_asan.py b/testing/mozharness/configs/builds/releng_sub_mac_configs/64_cross_fuzzing_asan.py new file mode 100644 index 0000000000..8f665762f2 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_mac_configs/64_cross_fuzzing_asan.py @@ -0,0 +1,27 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "stage_platform": "macosx64-fuzzing-asan", + "publish_nightly_en_US_routes": False, + "platform_supports_post_upload_to_latest": False, + #### 64 bit build specific ##### + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "DISPLAY": ":2", + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "TINDERBOX_OUTPUT": "1", + "TOOLTOOL_CACHE": "/builds/tooltool_cache", + "TOOLTOOL_HOME": "/builds", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + "ASAN_OPTIONS": "detect_leaks=0", + ## 64 bit specific + "PATH": "/usr/local/bin:/bin:\ +/usr/bin:/usr/local/sbin:/usr/sbin:/sbin", + }, +} diff --git a/testing/mozharness/configs/builds/releng_sub_mac_configs/64_cross_fuzzing_debug.py b/testing/mozharness/configs/builds/releng_sub_mac_configs/64_cross_fuzzing_debug.py new file mode 100644 index 0000000000..f88bac7001 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_mac_configs/64_cross_fuzzing_debug.py @@ -0,0 +1,28 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "stage_platform": "macosx64-fuzzing-debug", + "debug_build": True, + #### 64 bit build specific ##### + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "TINDERBOX_OUTPUT": "1", + "TOOLTOOL_CACHE": "/builds/tooltool_cache", + "TOOLTOOL_HOME": "/builds", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + "XPCOM_DEBUG_BREAK": "stack-and-abort", + ## 64 bit specific + "PATH": "/tools/python/bin:/opt/local/bin:/usr/bin:" + "/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin", + ## + }, + ####################### + "artifact_flag_build_variant_in_try": None, +} diff --git a/testing/mozharness/configs/builds/releng_sub_mac_configs/64_cross_noopt_debug.py b/testing/mozharness/configs/builds/releng_sub_mac_configs/64_cross_noopt_debug.py new file mode 100644 index 0000000000..e3cd50f218 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_mac_configs/64_cross_noopt_debug.py @@ -0,0 +1,26 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "stage_platform": "macosx64-noopt-debug", + "debug_build": True, + #### 64 bit build specific ##### + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "TINDERBOX_OUTPUT": "1", + "TOOLTOOL_CACHE": "/builds/tooltool_cache", + "TOOLTOOL_HOME": "/builds", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + "XPCOM_DEBUG_BREAK": "stack-and-abort", + ## 64 bit specific + "PATH": "/tools/python/bin:/opt/local/bin:/usr/bin:" + "/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin", + ## + }, +} diff --git a/testing/mozharness/configs/builds/releng_sub_mac_configs/64_debug.py b/testing/mozharness/configs/builds/releng_sub_mac_configs/64_debug.py new file mode 100644 index 0000000000..12e7b84588 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_mac_configs/64_debug.py @@ -0,0 +1,32 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "default_actions": [ + "clobber", + "build", + ], + "stage_platform": "macosx64-debug", + "debug_build": True, + #### 64 bit build specific ##### + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "TINDERBOX_OUTPUT": "1", + "TOOLTOOL_CACHE": "/builds/tooltool_cache", + "TOOLTOOL_HOME": "/builds", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + "XPCOM_DEBUG_BREAK": "stack-and-abort", + ## 64 bit specific + "PATH": "/tools/python/bin:/opt/local/bin:/usr/bin:" + "/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin", + ## + }, + "mozconfig_variant": "debug", + ####################### +} diff --git a/testing/mozharness/configs/builds/releng_sub_mac_configs/64_stat_and_debug.py b/testing/mozharness/configs/builds/releng_sub_mac_configs/64_stat_and_debug.py new file mode 100644 index 0000000000..72049b6ce1 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_mac_configs/64_stat_and_debug.py @@ -0,0 +1,33 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "default_actions": [ + "clobber", + "build", + ], + "debug_build": True, + "stage_platform": "macosx64-st-an-debug", + "tooltool_manifest_src": "browser/config/tooltool-manifests/macosx64/\ +clang.manifest", + #### 64 bit build specific ##### + "env": { + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "HG_SHARE_BASE_DIR": "/builds/hg-shared", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "TINDERBOX_OUTPUT": "1", + "TOOLTOOL_CACHE": "/builds/tooltool_cache", + "TOOLTOOL_HOME": "/builds", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "LC_ALL": "C", + "XPCOM_DEBUG_BREAK": "stack-and-abort", + # 64 bit specific + "PATH": "/tools/python/bin:/opt/local/bin:/usr/bin:" + "/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin", + }, + "mozconfig_variant": "debug-static-analysis", + ####################### +} diff --git a/testing/mozharness/configs/builds/releng_sub_mac_configs/rusttests.py b/testing/mozharness/configs/builds/releng_sub_mac_configs/rusttests.py new file mode 100644 index 0000000000..b3cabc856c --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_mac_configs/rusttests.py @@ -0,0 +1,12 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "default_actions": [ + "build", + ], + "stage_platform": "macosx64-rusttests", + "app_name": "tools/rusttests", + "disable_package_metrics": True, +} diff --git a/testing/mozharness/configs/builds/releng_sub_windows_configs/32_add-on-devel.py b/testing/mozharness/configs/builds/releng_sub_windows_configs/32_add-on-devel.py new file mode 100644 index 0000000000..c617eea6e8 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_windows_configs/32_add-on-devel.py @@ -0,0 +1,27 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "default_actions": [ + "clobber", + "build", + ], + "stage_platform": "win32-add-on-devel", + #### 32 bit build specific ##### + "env": { + "HG_SHARE_BASE_DIR": "C:/builds/hg-shared", + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "PATH": "C:/mozilla-build/python27;%s" % (os.environ.get("path")), + "TINDERBOX_OUTPUT": "1", + "XPCOM_DEBUG_BREAK": "stack-and-abort", + "TOOLTOOL_CACHE": "c:/builds/tooltool_cache", + "TOOLTOOL_HOME": "/c/builds", + }, + "mozconfig_variant": "add-on-devel", + ####################### +} diff --git a/testing/mozharness/configs/builds/releng_sub_windows_configs/32_debug.py b/testing/mozharness/configs/builds/releng_sub_windows_configs/32_debug.py new file mode 100644 index 0000000000..49230527a5 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_windows_configs/32_debug.py @@ -0,0 +1,28 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "default_actions": [ + "clobber", + "build", + ], + "stage_platform": "win32-debug", + "debug_build": True, + #### 32 bit build specific ##### + "env": { + "HG_SHARE_BASE_DIR": "C:/builds/hg-shared", + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "PATH": "C:/mozilla-build/python27;%s" % (os.environ.get("path")), + "TINDERBOX_OUTPUT": "1", + "XPCOM_DEBUG_BREAK": "stack-and-abort", + "TOOLTOOL_CACHE": "c:/builds/tooltool_cache", + "TOOLTOOL_HOME": "/c/builds", + }, + "mozconfig_variant": "debug", + ####################### +} diff --git a/testing/mozharness/configs/builds/releng_sub_windows_configs/32_mingwclang.py b/testing/mozharness/configs/builds/releng_sub_windows_configs/32_mingwclang.py new file mode 100644 index 0000000000..d201b89eb1 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_windows_configs/32_mingwclang.py @@ -0,0 +1,9 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "platform": "win32-mingwclang", + "stage_platform": "win32-mingwclang", + "mozconfig_platform": "win32", +} diff --git a/testing/mozharness/configs/builds/releng_sub_windows_configs/32_stat_and_debug.py b/testing/mozharness/configs/builds/releng_sub_windows_configs/32_stat_and_debug.py new file mode 100644 index 0000000000..803f2f67ca --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_windows_configs/32_stat_and_debug.py @@ -0,0 +1,27 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "default_actions": [ + "clobber", + "build", + ], + "stage_platform": "win32-st-an-debug", + "debug_build": True, + #### 32 bit build specific ##### + "env": { + "HG_SHARE_BASE_DIR": "C:/builds/hg-shared", + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "PATH": "C:/mozilla-build/python27;%s" % (os.environ.get("path")), + "TINDERBOX_OUTPUT": "1", + "XPCOM_DEBUG_BREAK": "stack-and-abort", + "TOOLTOOL_CACHE": "c:/builds/tooltool_cache", + "TOOLTOOL_HOME": "/c/builds", + }, + "mozconfig_variant": "debug-static-analysis", +} diff --git a/testing/mozharness/configs/builds/releng_sub_windows_configs/64_add-on-devel.py b/testing/mozharness/configs/builds/releng_sub_windows_configs/64_add-on-devel.py new file mode 100644 index 0000000000..71545b072c --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_windows_configs/64_add-on-devel.py @@ -0,0 +1,26 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "default_actions": [ + "clobber", + "build", + ], + "stage_platform": "win64-add-on-devel", + #### 64 bit build specific ##### + "env": { + "HG_SHARE_BASE_DIR": "C:/builds/hg-shared", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "PATH": "C:/mozilla-build/python27;%s" % (os.environ.get("path")), + "TINDERBOX_OUTPUT": "1", + "XPCOM_DEBUG_BREAK": "stack-and-abort", + "TOOLTOOL_CACHE": "c:/builds/tooltool_cache", + "TOOLTOOL_HOME": "/c/builds", + }, + "mozconfig_variant": "add-on-devel", + ####################### +} diff --git a/testing/mozharness/configs/builds/releng_sub_windows_configs/64_debug.py b/testing/mozharness/configs/builds/releng_sub_windows_configs/64_debug.py new file mode 100644 index 0000000000..c281f2379d --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_windows_configs/64_debug.py @@ -0,0 +1,27 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "default_actions": [ + "clobber", + "build", + ], + "stage_platform": "win64-debug", + "debug_build": True, + #### 64 bit build specific ##### + "env": { + "HG_SHARE_BASE_DIR": "C:/builds/hg-shared", + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "PATH": "C:/mozilla-build/python27;%s" % (os.environ.get("path")), + "TINDERBOX_OUTPUT": "1", + "XPCOM_DEBUG_BREAK": "stack-and-abort", + "TOOLTOOL_CACHE": "c:/builds/tooltool_cache", + "TOOLTOOL_HOME": "/c/builds", + }, + "mozconfig_variant": "debug", + ####################### +} diff --git a/testing/mozharness/configs/builds/releng_sub_windows_configs/64_mingwclang.py b/testing/mozharness/configs/builds/releng_sub_windows_configs/64_mingwclang.py new file mode 100644 index 0000000000..7f41cdb793 --- /dev/null +++ b/testing/mozharness/configs/builds/releng_sub_windows_configs/64_mingwclang.py @@ -0,0 +1,9 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "platform": "win64-mingwclang", + "stage_platform": "win64-mingwclang", + "mozconfig_platform": "win64", +} diff --git a/testing/mozharness/configs/builds/taskcluster_base_macosx.py b/testing/mozharness/configs/builds/taskcluster_base_macosx.py new file mode 100644 index 0000000000..7831ad17f4 --- /dev/null +++ b/testing/mozharness/configs/builds/taskcluster_base_macosx.py @@ -0,0 +1,44 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "default_actions": [ + "get-secrets", + "build", + ], + "vcs_share_base": os.path.join(os.getcwd(), "checkouts", "hg-shared"), + "max_build_output_timeout": 60 * 80, + "env": { + "HG_SHARE_BASE_DIR": os.path.join(os.getcwd(), "checkouts", "hg-shared"), + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "TINDERBOX_OUTPUT": "1", + "WORKSPACE": "%(base_work_dir)s", + "PATH": "/usr/local/bin:/bin:/sbin:/usr/bin:/usr/sbin", + }, + "upload_env": { + "UPLOAD_PATH": os.path.join(os.getcwd(), "public", "build"), + }, + "secret_files": [ + { + "filename": "gls-gapi.data", + "secret_name": "project/releng/gecko/build/level-%(scm-level)s/gls-gapi.data", + "min_scm_level": 1, + }, + { + "filename": "sb-gapi.data", + "secret_name": "project/releng/gecko/build/level-%(scm-level)s/sb-gapi.data", + "min_scm_level": 1, + }, + { + "filename": "mozilla-desktop-geoloc-api.key", + "secret_name": "project/releng/gecko/build/level-%(scm-level)s/mozilla-desktop-geoloc-api.key", + "min_scm_level": 2, + "default": "try-build-has-no-secrets", + }, + ], +} diff --git a/testing/mozharness/configs/builds/taskcluster_base_win32.py b/testing/mozharness/configs/builds/taskcluster_base_win32.py new file mode 100644 index 0000000000..c18d21c96c --- /dev/null +++ b/testing/mozharness/configs/builds/taskcluster_base_win32.py @@ -0,0 +1,8 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "platform": "win32", + "mozconfig_platform": "win32", +} diff --git a/testing/mozharness/configs/builds/taskcluster_base_win64.py b/testing/mozharness/configs/builds/taskcluster_base_win64.py new file mode 100644 index 0000000000..013bc11b62 --- /dev/null +++ b/testing/mozharness/configs/builds/taskcluster_base_win64.py @@ -0,0 +1,8 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "platform": "win64", + "mozconfig_platform": "win64", +} diff --git a/testing/mozharness/configs/builds/taskcluster_base_windows.py b/testing/mozharness/configs/builds/taskcluster_base_windows.py new file mode 100644 index 0000000000..8e5a5bc650 --- /dev/null +++ b/testing/mozharness/configs/builds/taskcluster_base_windows.py @@ -0,0 +1,46 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "default_actions": [ + "get-secrets", + "build", + ], + "vcs_share_base": os.path.join("y:", os.sep, "hg-shared"), + "max_build_output_timeout": 60 * 80, + "env": { + "HG_SHARE_BASE_DIR": os.path.join("y:", os.sep, "hg-shared"), + "MOZBUILD_STATE_PATH": os.path.join(os.getcwd(), ".mozbuild"), + "MOZ_CRASHREPORTER_NO_REPORT": "1", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "TINDERBOX_OUTPUT": "1", + "TOOLTOOL_CACHE": "c:/builds/tooltool_cache", + "TOOLTOOL_HOME": "/c/builds", + "MSYSTEM": "MINGW32", + "WORKSPACE": "%(base_work_dir)s", + }, + "upload_env": { + "UPLOAD_PATH": os.path.join(os.getcwd(), "public", "build"), + }, + "secret_files": [ + { + "filename": "gls-gapi.data", + "secret_name": "project/releng/gecko/build/level-%(scm-level)s/gls-gapi.data", + "min_scm_level": 1, + }, + { + "filename": "sb-gapi.data", + "secret_name": "project/releng/gecko/build/level-%(scm-level)s/sb-gapi.data", + "min_scm_level": 1, + }, + { + "filename": "mozilla-desktop-geoloc-api.key", + "secret_name": "project/releng/gecko/build/level-%(scm-level)s/mozilla-desktop-geoloc-api.key", + "min_scm_level": 2, + "default": "try-build-has-no-secrets", + }, + ], +} diff --git a/testing/mozharness/configs/builds/taskcluster_sub_win32/debug.py b/testing/mozharness/configs/builds/taskcluster_sub_win32/debug.py new file mode 100644 index 0000000000..dc8977dfc0 --- /dev/null +++ b/testing/mozharness/configs/builds/taskcluster_sub_win32/debug.py @@ -0,0 +1,11 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "win32-debug", + "debug_build": True, + "env": { + "XPCOM_DEBUG_BREAK": "stack-and-abort", + }, +} diff --git a/testing/mozharness/configs/builds/taskcluster_sub_win32/noopt_debug.py b/testing/mozharness/configs/builds/taskcluster_sub_win32/noopt_debug.py new file mode 100644 index 0000000000..6189060639 --- /dev/null +++ b/testing/mozharness/configs/builds/taskcluster_sub_win32/noopt_debug.py @@ -0,0 +1,11 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "win32-noopt-debug", + "debug_build": True, + "env": { + "XPCOM_DEBUG_BREAK": "stack-and-abort", + }, +} diff --git a/testing/mozharness/configs/builds/taskcluster_sub_win64/asan_debug.py b/testing/mozharness/configs/builds/taskcluster_sub_win64/asan_debug.py new file mode 100644 index 0000000000..da63c2724d --- /dev/null +++ b/testing/mozharness/configs/builds/taskcluster_sub_win64/asan_debug.py @@ -0,0 +1,11 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "win64-asan-debug", + "debug_build": True, + "env": { + "XPCOM_DEBUG_BREAK": "stack-and-abort", + }, +} diff --git a/testing/mozharness/configs/builds/taskcluster_sub_win64/asan_reporter_opt.py b/testing/mozharness/configs/builds/taskcluster_sub_win64/asan_reporter_opt.py new file mode 100644 index 0000000000..af47501c73 --- /dev/null +++ b/testing/mozharness/configs/builds/taskcluster_sub_win64/asan_reporter_opt.py @@ -0,0 +1,8 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "win64-asan-reporter", + "mozconfig_variant": "nightly-asan-reporter", +} diff --git a/testing/mozharness/configs/builds/taskcluster_sub_win64/ccov_opt.py b/testing/mozharness/configs/builds/taskcluster_sub_win64/ccov_opt.py new file mode 100644 index 0000000000..c29a2d88bc --- /dev/null +++ b/testing/mozharness/configs/builds/taskcluster_sub_win64/ccov_opt.py @@ -0,0 +1,10 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "win64-ccov", + "env": { + "XPCOM_DEBUG_BREAK": "stack-and-abort", + }, +} diff --git a/testing/mozharness/configs/builds/taskcluster_sub_win64/debug.py b/testing/mozharness/configs/builds/taskcluster_sub_win64/debug.py new file mode 100644 index 0000000000..d40e77d7ae --- /dev/null +++ b/testing/mozharness/configs/builds/taskcluster_sub_win64/debug.py @@ -0,0 +1,11 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "win64-debug", + "debug_build": True, + "env": { + "XPCOM_DEBUG_BREAK": "stack-and-abort", + }, +} diff --git a/testing/mozharness/configs/builds/taskcluster_sub_win64/noopt_debug.py b/testing/mozharness/configs/builds/taskcluster_sub_win64/noopt_debug.py new file mode 100644 index 0000000000..1dd204a3e4 --- /dev/null +++ b/testing/mozharness/configs/builds/taskcluster_sub_win64/noopt_debug.py @@ -0,0 +1,11 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "win64-noopt-debug", + "debug_build": True, + "env": { + "XPCOM_DEBUG_BREAK": "stack-and-abort", + }, +} diff --git a/testing/mozharness/configs/builds/taskcluster_sub_win64/plain_opt.py b/testing/mozharness/configs/builds/taskcluster_sub_win64/plain_opt.py new file mode 100644 index 0000000000..e567c8f123 --- /dev/null +++ b/testing/mozharness/configs/builds/taskcluster_sub_win64/plain_opt.py @@ -0,0 +1,12 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "default_actions": [ + "build", + ], + "disable_package_metrics": True, + "mozconfig_variant": "plain-opt", + "stage_platform": "win64", +} diff --git a/testing/mozharness/configs/builds/taskcluster_sub_win64/rusttests_opt.py b/testing/mozharness/configs/builds/taskcluster_sub_win64/rusttests_opt.py new file mode 100644 index 0000000000..95ba433c29 --- /dev/null +++ b/testing/mozharness/configs/builds/taskcluster_sub_win64/rusttests_opt.py @@ -0,0 +1,15 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "default_actions": [ + "build", + ], + "stage_platform": "win64-rusttests", + "env": { + "XPCOM_DEBUG_BREAK": "stack-and-abort", + }, + "app_name": "tools/rusttests", + "disable_package_metrics": True, +} diff --git a/testing/mozharness/configs/builds/taskcluster_sub_win64/searchfox_debug.py b/testing/mozharness/configs/builds/taskcluster_sub_win64/searchfox_debug.py new file mode 100644 index 0000000000..a49a8af48d --- /dev/null +++ b/testing/mozharness/configs/builds/taskcluster_sub_win64/searchfox_debug.py @@ -0,0 +1,12 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "stage_platform": "win64-st-an-debug", + "debug_build": True, + "env": { + "XPCOM_DEBUG_BREAK": "stack-and-abort", + }, + "mozconfig_variant": "debug-searchfox", +} diff --git a/testing/mozharness/configs/developer_config.py b/testing/mozharness/configs/developer_config.py new file mode 100644 index 0000000000..563a0db9db --- /dev/null +++ b/testing/mozharness/configs/developer_config.py @@ -0,0 +1,44 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +""" +This config file can be appended to any other mozharness job +running under treeherder. The purpose of this config is to +override values that are specific to Release Engineering machines +that can reach specific hosts within their network. +In other words, this config allows you to run any job +outside of the Release Engineering network + +Using this config file should be accompanied with using +--test-url and --installer-url where appropiate +""" + +import os + +LOCAL_WORKDIR = os.path.expanduser("~/.mozilla/releng") + +config = { + # Developer mode values + "developer_mode": True, + "local_workdir": LOCAL_WORKDIR, + "replace_urls": [ + ("http://pvtbuilds.pvt.build", "https://pvtbuilds"), + ], + # General local variable overwrite + "exes": { + "gittool.py": os.path.join(LOCAL_WORKDIR, "gittool.py"), + }, + # Talos related + "python_webserver": True, + "virtualenv_path": "%s/build/venv" % os.getcwd(), + "preflight_run_cmd_suites": [], + "postflight_run_cmd_suites": [], + # Tooltool related + "tooltool_cache": os.path.join(LOCAL_WORKDIR, "builds/tooltool_cache"), + "tooltool_cache_path": os.path.join(LOCAL_WORKDIR, "builds/tooltool_cache"), + # VCS tools + "gittool.py": "http://hg.mozilla.org/build/puppet/raw-file/faaf5abd792e/modules/packages/files/gittool.py", + # Android related + "host_utils_url": "https://tooltool.mozilla-releng.net/sha512/372c89f9dccaf5ee3b9d35fd1cfeb089e1e5db3ff1c04e35aa3adc8800bc61a2ae10e321f37ae7bab20b56e60941f91bb003bcb22035902a73d70872e7bd3282", +} diff --git a/testing/mozharness/configs/firefox_ui_tests/qa_jenkins.py b/testing/mozharness/configs/firefox_ui_tests/qa_jenkins.py new file mode 100644 index 0000000000..5e605bd0a0 --- /dev/null +++ b/testing/mozharness/configs/firefox_ui_tests/qa_jenkins.py @@ -0,0 +1,13 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +# Default configuration as used by Mozmill CI (Jenkins) + + +config = { + # Tests run in mozmill-ci do not use RelEng infra + "developer_mode": True, + # mozcrash support + "download_symbols": "ondemand", +} diff --git a/testing/mozharness/configs/firefox_ui_tests/releng_release.py b/testing/mozharness/configs/firefox_ui_tests/releng_release.py new file mode 100644 index 0000000000..ae3f5cc15c --- /dev/null +++ b/testing/mozharness/configs/firefox_ui_tests/releng_release.py @@ -0,0 +1,27 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +# Default configuration as used by Release Engineering for testing release/beta builds + +import os +import sys + +import mozharness + +external_tools_path = os.path.join( + os.path.abspath(os.path.dirname(os.path.dirname(mozharness.__file__))), + "external_tools", +) + + +config = { + # General local variable overwrite + "exes": { + "gittool.py": [ + # Bug 1227079 - Python executable eeded to get it executed on Windows + sys.executable, + os.path.join(external_tools_path, "gittool.py"), + ], + }, +} diff --git a/testing/mozharness/configs/firefox_ui_tests/taskcluster.py b/testing/mozharness/configs/firefox_ui_tests/taskcluster.py new file mode 100644 index 0000000000..72cd3d78dd --- /dev/null +++ b/testing/mozharness/configs/firefox_ui_tests/taskcluster.py @@ -0,0 +1,11 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +# Config file for firefox ui tests run via TaskCluster. + + +config = { + "vcs_share_base": "/builds/hg-shared", + "tooltool_cache": "/builds/worker/tooltool-cache", +} diff --git a/testing/mozharness/configs/firefox_ui_tests/taskcluster_mac.py b/testing/mozharness/configs/firefox_ui_tests/taskcluster_mac.py new file mode 100644 index 0000000000..163e133ed5 --- /dev/null +++ b/testing/mozharness/configs/firefox_ui_tests/taskcluster_mac.py @@ -0,0 +1,8 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +# Configuration over-rides for taskcluter.py, for osx +config = { + "tooltool_cache": "/builds/tooltool_cache", +} diff --git a/testing/mozharness/configs/firefox_ui_tests/taskcluster_windows.py b/testing/mozharness/configs/firefox_ui_tests/taskcluster_windows.py new file mode 100644 index 0000000000..beeaddf120 --- /dev/null +++ b/testing/mozharness/configs/firefox_ui_tests/taskcluster_windows.py @@ -0,0 +1,16 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +# Config file for firefox ui tests run via TaskCluster. + +import os +import sys + +config = { + "virtualenv_path": "venv", + "exes": { + "python": sys.executable, + "hg": os.path.join(os.environ["PROGRAMFILES"], "Mercurial", "hg"), + }, +} diff --git a/testing/mozharness/configs/l10n_bumper/jamun.py b/testing/mozharness/configs/l10n_bumper/jamun.py new file mode 100644 index 0000000000..355f82073a --- /dev/null +++ b/testing/mozharness/configs/l10n_bumper/jamun.py @@ -0,0 +1,83 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import sys + +MULTI_REPO = "projects/jamun" +EXES = {} +if sys.platform.startswith("linux"): + EXES = { + # Get around the https warnings + "hg": [ + "/usr/local/bin/hg", + "--config", + "web.cacerts=/etc/pki/tls/certs/ca-bundle.crt", + ], + "hgtool.py": ["/usr/local/bin/hgtool.py"], + } + + +config = { + "log_name": "l10n_bumper", + "log_type": "multi", + "exes": EXES, + "gecko_pull_url": "https://hg.mozilla.org/{}".format(MULTI_REPO), + "gecko_push_url": "ssh://hg.mozilla.org/{}".format(MULTI_REPO), + "hg_user": "L10n Bumper Bot <release+l10nbumper@mozilla.com>", + "ssh_key": "~/.ssh/ffxbld_rsa", + "ssh_user": "ffxbld", + "vcs_share_base": "/builds/hg-shared", + "version_path": "browser/config/version.txt", + "status_path": ".l10n_bumper_status", + "bump_configs": [ + { + "path": "mobile/locales/l10n-changesets.json", + "format": "json", + "name": "Fennec l10n changesets", + "revision_url": "https://l10n.mozilla.org/shipping/l10n-changesets?av=fennec%(MAJOR_VERSION)s", + "platform_configs": [ + { + "platforms": ["android-arm", "android"], + "path": "mobile/android/locales/all-locales", + }, + { + "platforms": ["android-multilocale"], + "path": "mobile/android/locales/maemo-locales", + }, + ], + }, + { + "path": "browser/locales/l10n-changesets.json", + "format": "json", + "name": "Firefox l10n changesets", + "revision_url": "https://l10n.mozilla.org/shipping/l10n-changesets?av=fx%(MAJOR_VERSION)s", + "ignore_config": { + "ja": ["macosx64"], + "ja-JP-mac": ["linux", "linux64", "win32", "win64"], + }, + "platform_configs": [ + { + "platforms": ["linux64", "linux", "macosx64", "win32", "win64"], + "path": "browser/locales/shipped-locales", + "format": "shipped-locales", + } + ], + }, + { + "path": "browser/locales/central-changesets.json", + "format": "json", + "name": "Firefox l10n changesets", + "ignore_config": { + "ja": ["macosx64"], + "ja-JP-mac": ["linux", "linux64", "win32", "win64"], + }, + "platform_configs": [ + { + "platforms": ["linux64", "linux", "macosx64", "win32", "win64"], + "path": "browser/locales/all-locales", + } + ], + }, + ], +} diff --git a/testing/mozharness/configs/l10n_bumper/mozilla-beta.py b/testing/mozharness/configs/l10n_bumper/mozilla-beta.py new file mode 100644 index 0000000000..4ba7add5de --- /dev/null +++ b/testing/mozharness/configs/l10n_bumper/mozilla-beta.py @@ -0,0 +1,87 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import sys + +MULTI_REPO = "releases/mozilla-beta" +EXES = {} +if sys.platform.startswith("linux"): + EXES = { + # Get around the https warnings + "hg": [ + "/usr/local/bin/hg", + "--config", + "web.cacerts=/etc/pki/tls/certs/ca-bundle.crt", + ], + "hgtool.py": ["/usr/local/bin/hgtool.py"], + } + +config = { + "log_name": "l10n_bumper", + "log_type": "multi", + "exes": EXES, + "gecko_pull_url": "https://hg.mozilla.org/{}".format(MULTI_REPO), + "gecko_push_url": "ssh://hg.mozilla.org/{}".format(MULTI_REPO), + "hg_user": "L10n Bumper Bot <release+l10nbumper@mozilla.com>", + "ssh_key": "~/.ssh/ffxbld_rsa", + "ssh_user": "ffxbld", + "vcs_share_base": "/builds/hg-shared", + "version_path": "browser/config/version.txt", + "status_path": ".l10n_bumper_status", + "bump_configs": [ + { + "path": "mobile/locales/l10n-changesets.json", + "format": "json", + "name": "Fennec l10n changesets", + "revision_url": "https://l10n.mozilla.org/shipping/l10n-changesets?av=fennec%(MAJOR_VERSION)s", + "platform_configs": [ + { + "platforms": ["android-multilocale"], + "path": "mobile/android/locales/maemo-locales", + } + ], + }, + { + "path": "browser/locales/l10n-changesets.json", + "format": "json", + "name": "Firefox l10n changesets", + "revision_url": "https://l10n.mozilla.org/shipping/l10n-changesets?av=fx%(MAJOR_VERSION)s", + "ignore_config": { + "ja": ["macosx64", "macosx64-devedition"], + "ja-JP-mac": [ + "linux", + "linux-devedition", + "linux64", + "linux64-devedition", + "win32", + "win32-devedition", + "win64", + "win64-devedition", + "win64-aarch64", + "win64-aarch64-devedition", + ], + }, + "platform_configs": [ + { + "platforms": [ + "linux", + "linux-devedition", + "linux64", + "linux64-devedition", + "macosx64", + "macosx64-devedition", + "win32", + "win32-devedition", + "win64", + "win64-devedition", + "win64-aarch64", + "win64-aarch64-devedition", + ], + "path": "browser/locales/shipped-locales", + "format": "shipped-locales", + } + ], + }, + ], +} diff --git a/testing/mozharness/configs/l10n_bumper/mozilla-central.py b/testing/mozharness/configs/l10n_bumper/mozilla-central.py new file mode 100644 index 0000000000..b2bcc1b98f --- /dev/null +++ b/testing/mozharness/configs/l10n_bumper/mozilla-central.py @@ -0,0 +1,88 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import sys + +MULTI_REPO = "mozilla-central" +EXES = {} +if sys.platform.startswith("linux"): + EXES = { + # Get around the https warnings + "hg": [ + "/usr/local/bin/hg", + "--config", + "web.cacerts=/etc/pki/tls/certs/ca-bundle.crt", + ], + "hgtool.py": ["/usr/local/bin/hgtool.py"], + } + +config = { + "log_name": "l10n_bumper", + "log_type": "multi", + "exes": EXES, + "gecko_pull_url": "https://hg.mozilla.org/{}".format(MULTI_REPO), + "gecko_push_url": "ssh://hg.mozilla.org/{}".format(MULTI_REPO), + "hg_user": "L10n Bumper Bot <release+l10nbumper@mozilla.com>", + "ssh_key": "~/.ssh/ffxbld_rsa", + "ssh_user": "ffxbld", + "vcs_share_base": "/builds/hg-shared", + "version_path": "browser/config/version.txt", + "status_path": ".l10n_bumper_status", + "bump_configs": [ + { + "path": "mobile/locales/l10n-changesets.json", + "format": "json", + "name": "Fennec l10n changesets", + "platform_configs": [ + { + "platforms": ["android-arm", "android"], + "path": "mobile/android/locales/all-locales", + }, + { + "platforms": ["android-multilocale"], + "path": "mobile/android/locales/maemo-locales", + }, + ], + }, + { + "path": "browser/locales/l10n-changesets.json", + "format": "json", + "name": "Firefox l10n changesets", + "ignore_config": { + "ja": ["macosx64", "macosx64-devedition"], + "ja-JP-mac": [ + "linux", + "linux-devedition", + "linux64", + "linux64-devedition", + "win32", + "win32-devedition", + "win64", + "win64-devedition", + "win64-aarch64", + "win64-aarch64-devedition", + ], + }, + "platform_configs": [ + { + "platforms": [ + "linux", + "linux-devedition", + "linux64", + "linux64-devedition", + "macosx64", + "macosx64-devedition", + "win32", + "win32-devedition", + "win64", + "win64-devedition", + "win64-aarch64", + "win64-aarch64-devedition", + ], + "path": "browser/locales/all-locales", + } + ], + }, + ], +} diff --git a/testing/mozharness/configs/l10n_bumper/mozilla-esr68.py b/testing/mozharness/configs/l10n_bumper/mozilla-esr68.py new file mode 100644 index 0000000000..01a7c85e2d --- /dev/null +++ b/testing/mozharness/configs/l10n_bumper/mozilla-esr68.py @@ -0,0 +1,46 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import sys + +MULTI_REPO = "releases/mozilla-esr68" +EXES = {} +if sys.platform.startswith("linux"): + EXES = { + # Get around the https warnings + "hg": [ + "/usr/local/bin/hg", + "--config", + "web.cacerts=/etc/pki/tls/certs/ca-bundle.crt", + ], + "hgtool.py": ["/usr/local/bin/hgtool.py"], + } + +config = { + "log_name": "l10n_bumper", + "log_type": "multi", + "exes": EXES, + "gecko_pull_url": "https://hg.mozilla.org/{}".format(MULTI_REPO), + "gecko_push_url": "ssh://hg.mozilla.org/{}".format(MULTI_REPO), + "hg_user": "L10n Bumper Bot <release+l10nbumper@mozilla.com>", + "ssh_key": "~/.ssh/ffxbld_rsa", + "ssh_user": "ffxbld", + "vcs_share_base": "/builds/hg-shared", + "version_path": "mobile/android/config/version-files/release/version.txt", + "status_path": ".l10n_bumper_status", + "bump_configs": [ + { + "path": "mobile/locales/l10n-changesets.json", + "format": "json", + "name": "Fennec l10n changesets", + "revision_url": "https://l10n.mozilla.org/shipping/l10n-changesets?av=fennec%(COMBINED_MAJOR_VERSION)s", + "platform_configs": [ + { + "platforms": ["android-multilocale"], + "path": "mobile/android/locales/maemo-locales", + } + ], + } + ], +} diff --git a/testing/mozharness/configs/marionette/mac_taskcluster_config.py b/testing/mozharness/configs/marionette/mac_taskcluster_config.py new file mode 100644 index 0000000000..2ae326512e --- /dev/null +++ b/testing/mozharness/configs/marionette/mac_taskcluster_config.py @@ -0,0 +1,39 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +# Configuration over-rides for prod_config.py, for osx + +# OS Specifics +DISABLE_SCREEN_SAVER = False +ADJUST_MOUSE_AND_SCREEN = False + +##### +config = { + "tooltool_cache": "/builds/tooltool_cache", + "run_cmd_checks_enabled": True, + "preflight_run_cmd_suites": [ + # NOTE 'enabled' is only here while we have unconsolidated configs + { + "name": "disable_screen_saver", + "cmd": ["xset", "s", "off", "s", "reset"], + "architectures": ["32bit", "64bit"], + "halt_on_failure": False, + "enabled": DISABLE_SCREEN_SAVER, + }, + { + "name": "run mouse & screen adjustment script", + "cmd": [ + # when configs are consolidated this python path will only show + # for windows. + "python", + "../scripts/external_tools/mouse_and_screen_resolution.py", + "--configuration-file", + "../scripts/external_tools/machine-configuration.json", + ], + "architectures": ["32bit"], + "halt_on_failure": True, + "enabled": ADJUST_MOUSE_AND_SCREEN, + }, + ], +} diff --git a/testing/mozharness/configs/marionette/prod_config.py b/testing/mozharness/configs/marionette/prod_config.py new file mode 100644 index 0000000000..18fa4e839f --- /dev/null +++ b/testing/mozharness/configs/marionette/prod_config.py @@ -0,0 +1,66 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +# This is a template config file for marionette production. +HG_SHARE_BASE_DIR = "/builds/hg-shared" + +# OS Specifics +DISABLE_SCREEN_SAVER = True +ADJUST_MOUSE_AND_SCREEN = False + +##### +config = { + # marionette options + "marionette_address": "localhost:2828", + "test_manifest": "unit-tests.toml", + "vcs_share_base": HG_SHARE_BASE_DIR, + "default_actions": [ + "clobber", + "download-and-extract", + "create-virtualenv", + "install", + "run-tests", + ], + "tooltool_cache": "/builds/worker/tooltool-cache", + "suite_definitions": { + "marionette_desktop": { + "options": [ + "-vv", + "--log-errorsummary=%(error_summary_file)s", + "--log-html=%(html_report_file)s", + "--binary=%(binary)s", + "--address=%(address)s", + "--symbols-path=%(symbols_path)s", + ], + "run_filename": "", + "testsdir": "marionette", + } + }, + "run_cmd_checks_enabled": True, + "preflight_run_cmd_suites": [ + # NOTE 'enabled' is only here while we have unconsolidated configs + { + "name": "disable_screen_saver", + "cmd": ["xset", "s", "off", "s", "reset"], + "halt_on_failure": False, + "architectures": ["32bit", "64bit"], + "enabled": DISABLE_SCREEN_SAVER, + }, + { + "name": "run mouse & screen adjustment script", + "cmd": [ + # when configs are consolidated this python path will only show + # for windows. + "python", + "../scripts/external_tools/mouse_and_screen_resolution.py", + "--configuration-file", + "../scripts/external_tools/machine-configuration.json", + ], + "architectures": ["32bit"], + "halt_on_failure": True, + "enabled": ADJUST_MOUSE_AND_SCREEN, + }, + ], + "structured_output": True, +} diff --git a/testing/mozharness/configs/marionette/test_config.py b/testing/mozharness/configs/marionette/test_config.py new file mode 100644 index 0000000000..f2c6e6bbf8 --- /dev/null +++ b/testing/mozharness/configs/marionette/test_config.py @@ -0,0 +1,28 @@ +# This is a template config file for marionette test. + +config = { + # marionette options + "marionette_address": "localhost:2828", + "test_manifest": "unit-tests.toml", + "default_actions": [ + "clobber", + "download-and-extract", + "create-virtualenv", + "install", + "run-tests", + ], + "suite_definitions": { + "marionette_desktop": { + "options": [ + "-vv", + "--log-errorsummary=%(error_summary_file)s", + "--log-html=%(html_report_file)s", + "--binary=%(binary)s", + "--address=%(address)s", + "--symbols-path=%(symbols_path)s", + ], + "run_filename": "", + "testsdir": "marionette", + }, + }, +} diff --git a/testing/mozharness/configs/marionette/windows_config.py b/testing/mozharness/configs/marionette/windows_config.py new file mode 100644 index 0000000000..e100eb2fb2 --- /dev/null +++ b/testing/mozharness/configs/marionette/windows_config.py @@ -0,0 +1,36 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +# This is a template config file for marionette production on Windows. +config = { + # marionette options + "marionette_address": "localhost:2828", + "test_manifest": "unit-tests.toml", + "virtualenv_path": "venv", + "exes": { + "python": "c:/mozilla-build/python27/python", + "hg": "c:/mozilla-build/hg/hg", + }, + "default_actions": [ + "clobber", + "download-and-extract", + "create-virtualenv", + "install", + "run-tests", + ], + "suite_definitions": { + "marionette_desktop": { + "options": [ + "-vv", + "--log-errorsummary=%(error_summary_file)s", + "--log-html=%(html_report_file)s", + "--binary=%(binary)s", + "--address=%(address)s", + "--symbols-path=%(symbols_path)s", + ], + "run_filename": "", + "testsdir": "marionette", + }, + }, +} diff --git a/testing/mozharness/configs/marionette/windows_taskcluster_config.py b/testing/mozharness/configs/marionette/windows_taskcluster_config.py new file mode 100644 index 0000000000..a503885c66 --- /dev/null +++ b/testing/mozharness/configs/marionette/windows_taskcluster_config.py @@ -0,0 +1,146 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +# This is a template config file for marionette production on Windows. +import os +import platform +import sys + +# OS Specifics +DISABLE_SCREEN_SAVER = False +ADJUST_MOUSE_AND_SCREEN = True +DESKTOP_VISUALFX_THEME = { + "Let Windows choose": 0, + "Best appearance": 1, + "Best performance": 2, + "Custom": 3, +}.get("Best appearance") +TASKBAR_AUTOHIDE_REG_PATH = { + "Windows 7": "HKCU:SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\StuckRects2", + "Windows 10": "HKCU:SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\StuckRects3", +}.get("{} {}".format(platform.system(), platform.release())) + +##### +config = { + # marionette options + "marionette_address": "localhost:2828", + "test_manifest": "unit-tests.toml", + "virtualenv_path": "venv", + "exes": { + "python": sys.executable, + "hg": os.path.join(os.environ["PROGRAMFILES"], "Mercurial", "hg"), + }, + "default_actions": [ + "clobber", + "download-and-extract", + "create-virtualenv", + "install", + "run-tests", + ], + "suite_definitions": { + "marionette_desktop": { + "options": [ + "-vv", + "--log-errorsummary=%(error_summary_file)s", + "--log-html=%(html_report_file)s", + "--binary=%(binary)s", + "--address=%(address)s", + "--symbols-path=%(symbols_path)s", + ], + "run_filename": "", + "testsdir": "marionette", + }, + }, + "run_cmd_checks_enabled": True, + "preflight_run_cmd_suites": [ + { + "name": "disable_screen_saver", + "cmd": ["xset", "s", "off", "s", "reset"], + "architectures": ["32bit", "64bit"], + "halt_on_failure": False, + "enabled": DISABLE_SCREEN_SAVER, + }, + { + "name": "run mouse & screen adjustment script", + "cmd": [ + sys.executable, + os.path.join( + os.getcwd(), + "mozharness", + "external_tools", + "mouse_and_screen_resolution.py", + ), + "--configuration-file", + os.path.join( + os.getcwd(), + "mozharness", + "external_tools", + "machine-configuration.json", + ), + ], + "architectures": ["32bit", "64bit"], + "halt_on_failure": True, + "enabled": ADJUST_MOUSE_AND_SCREEN, + }, + { + "name": "disable windows security and maintenance notifications", + "cmd": [ + "powershell", + "-command", + r"\"&{$p='HKCU:SOFTWARE\Microsoft\Windows\CurrentVersion\Notifications\Settings\Windows.SystemToast.SecurityAndMaintenance';if(!(Test-Path -Path $p)){&New-Item -Path $p -Force}&Set-ItemProperty -Path $p -Name Enabled -Value 0}\"", # noqa + ], + "architectures": ["32bit", "64bit"], + "halt_on_failure": True, + "enabled": (platform.release() == 10), + }, + { + "name": "set windows VisualFX", + "cmd": [ + "powershell", + "-command", + "\"&{{&Set-ItemProperty -Path 'HKCU:Software\Microsoft\Windows\CurrentVersion\Explorer\VisualEffects' -Name VisualFXSetting -Value {}}}\"".format( + DESKTOP_VISUALFX_THEME + ), + ], + "architectures": ["32bit", "64bit"], + "halt_on_failure": True, + "enabled": True, + }, + { + "name": "create scrollbars always show key", + "cmd": [ + "powershell", + "-command", + "New-ItemProperty -Path 'HKCU:\Control Panel\Accessibility' -Name 'DynamicScrollbars' -Value 0", + ], + "architectures": ["32bit", "64bit"], + "halt_on_failure": False, + "enabled": True, + }, + { + "name": "hide windows taskbar", + "cmd": [ + "powershell", + "-command", + "\"&{{$p='{}';$v=(Get-ItemProperty -Path $p).Settings;$v[8]=3;&Set-ItemProperty -Path $p -Name Settings -Value $v}}\"".format( + TASKBAR_AUTOHIDE_REG_PATH + ), + ], + "architectures": ["32bit", "64bit"], + "halt_on_failure": True, + "enabled": True, + }, + { + "name": "restart windows explorer", + "cmd": [ + "powershell", + "-command", + '"&{&Stop-Process -ProcessName explorer}"', + ], + "architectures": ["32bit", "64bit"], + "halt_on_failure": True, + "enabled": True, + }, + ], +} diff --git a/testing/mozharness/configs/multi_locale/android-mozharness-build.json b/testing/mozharness/configs/multi_locale/android-mozharness-build.json new file mode 100644 index 0000000000..178119b048 --- /dev/null +++ b/testing/mozharness/configs/multi_locale/android-mozharness-build.json @@ -0,0 +1,11 @@ +{ + "log_name": "multilocale", + "locales_dir": "mobile/android/locales", + "ignore_locales": ["en-US", "multi"], + "vcs_share_base": "/builds/hg-shared", + "hg_l10n_base": "https://hg.mozilla.org/l10n-central", + "hg_l10n_tag": "default", + "work_dir": "build", + "locales_file": "mobile/locales/l10n-changesets.json", + "locales_platform": "android-multilocale" +} diff --git a/testing/mozharness/configs/openh264/linux32.py b/testing/mozharness/configs/openh264/linux32.py new file mode 100644 index 0000000000..1955f1fa8c --- /dev/null +++ b/testing/mozharness/configs/openh264/linux32.py @@ -0,0 +1,41 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +import mozharness + +external_tools_path = os.path.join( + os.path.abspath(os.path.dirname(os.path.dirname(mozharness.__file__))), + "external_tools", +) + +config = { + "exes": { + "gittool.py": [os.path.join(external_tools_path, "gittool.py")], + "python3": "python3", + }, + "dump_syms_binary": "{}/dump_syms/dump_syms".format(os.environ["MOZ_FETCHES_DIR"]), + "arch": "x86", + "operating_system": "linux", + "partial_env": { + "CXXFLAGS": ( + "--sysroot {MOZ_FETCHES_DIR}/sysroot-i686-linux-gnu".format( + MOZ_FETCHES_DIR=os.environ["MOZ_FETCHES_DIR"] + ) + ), + "LDFLAGS": ( + "--sysroot {MOZ_FETCHES_DIR}/sysroot-i686-linux-gnu".format( + MOZ_FETCHES_DIR=os.environ["MOZ_FETCHES_DIR"] + ) + ), + "PATH": ( + "{MOZ_FETCHES_DIR}/clang/bin:" + "{MOZ_FETCHES_DIR}/binutils/bin:" + "{MOZ_FETCHES_DIR}/nasm:%(PATH)s".format( + MOZ_FETCHES_DIR=os.environ["MOZ_FETCHES_DIR"] + ) + ), + }, +} diff --git a/testing/mozharness/configs/openh264/linux64-aarch64.py b/testing/mozharness/configs/openh264/linux64-aarch64.py new file mode 100644 index 0000000000..beeca3ae73 --- /dev/null +++ b/testing/mozharness/configs/openh264/linux64-aarch64.py @@ -0,0 +1,42 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +import mozharness + +external_tools_path = os.path.join( + os.path.abspath(os.path.dirname(os.path.dirname(mozharness.__file__))), + "external_tools", +) + +config = { + "exes": { + "gittool.py": [os.path.join(external_tools_path, "gittool.py")], + "python3": "python3", + }, + "dump_syms_binary": "{}/dump_syms/dump_syms".format(os.environ["MOZ_FETCHES_DIR"]), + "arch": "aarch64", + "operating_system": "linux", + "partial_env": { + "CFLAGS": ( + "-target aarch64-linux-gnu " + "--sysroot {MOZ_FETCHES_DIR}/sysroot-aarch64-linux-gnu".format( + MOZ_FETCHES_DIR=os.environ["MOZ_FETCHES_DIR"] + ) + ), + "LDFLAGS": ( + "-target aarch64-linux-gnu " + "--sysroot {MOZ_FETCHES_DIR}/sysroot-aarch64-linux-gnu".format( + MOZ_FETCHES_DIR=os.environ["MOZ_FETCHES_DIR"] + ) + ), + "PATH": ( + "{MOZ_FETCHES_DIR}/clang/bin:" + "{MOZ_FETCHES_DIR}/binutils/bin:%(PATH)s".format( + MOZ_FETCHES_DIR=os.environ["MOZ_FETCHES_DIR"] + ) + ), + }, +} diff --git a/testing/mozharness/configs/openh264/linux64.py b/testing/mozharness/configs/openh264/linux64.py new file mode 100644 index 0000000000..bc5aecf015 --- /dev/null +++ b/testing/mozharness/configs/openh264/linux64.py @@ -0,0 +1,41 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +import mozharness + +external_tools_path = os.path.join( + os.path.abspath(os.path.dirname(os.path.dirname(mozharness.__file__))), + "external_tools", +) + +config = { + "exes": { + "gittool.py": [os.path.join(external_tools_path, "gittool.py")], + "python3": "python3", + }, + "dump_syms_binary": "{}/dump_syms/dump_syms".format(os.environ["MOZ_FETCHES_DIR"]), + "arch": "x64", + "operating_system": "linux", + "partial_env": { + "CXXFLAGS": ( + "--sysroot {MOZ_FETCHES_DIR}/sysroot-x86_64-linux-gnu".format( + MOZ_FETCHES_DIR=os.environ["MOZ_FETCHES_DIR"] + ) + ), + "LDFLAGS": ( + "--sysroot {MOZ_FETCHES_DIR}/sysroot-x86_64-linux-gnu".format( + MOZ_FETCHES_DIR=os.environ["MOZ_FETCHES_DIR"] + ) + ), + "PATH": ( + "{MOZ_FETCHES_DIR}/clang/bin:" + "{MOZ_FETCHES_DIR}/binutils/bin:" + "{MOZ_FETCHES_DIR}/nasm:%(PATH)s".format( + MOZ_FETCHES_DIR=os.environ["MOZ_FETCHES_DIR"] + ) + ), + }, +} diff --git a/testing/mozharness/configs/openh264/macosx64-aarch64.py b/testing/mozharness/configs/openh264/macosx64-aarch64.py new file mode 100644 index 0000000000..829863d456 --- /dev/null +++ b/testing/mozharness/configs/openh264/macosx64-aarch64.py @@ -0,0 +1,43 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +import mozharness + +external_tools_path = os.path.join( + os.path.abspath(os.path.dirname(os.path.dirname(mozharness.__file__))), + "external_tools", +) + +config = { + "exes": { + "gittool.py": [os.path.join(external_tools_path, "gittool.py")], + "python3": "python3", + }, + "dump_syms_binary": "{}/dump_syms/dump_syms".format(os.environ["MOZ_FETCHES_DIR"]), + "arch": "aarch64", + "operating_system": "darwin", + "partial_env": { + "CFLAGS": ( + "-target aarch64-apple-darwin -mcpu=apple-a12 " + "-isysroot {MOZ_FETCHES_DIR}/MacOSX13.3.sdk " + "-mmacosx-version-min=11.0".format( + MOZ_FETCHES_DIR=os.environ["MOZ_FETCHES_DIR"] + ) + ), + "LDFLAGS": ( + "-target aarch64-apple-darwin -mcpu=apple-a12 " + "-isysroot {MOZ_FETCHES_DIR}/MacOSX13.3.sdk " + "-mmacosx-version-min=11.0".format( + MOZ_FETCHES_DIR=os.environ["MOZ_FETCHES_DIR"] + ) + ), + "PATH": ( + "{MOZ_FETCHES_DIR}/clang/bin/:{MOZ_FETCHES_DIR}/cctools/bin/:%(PATH)s".format( + MOZ_FETCHES_DIR=os.environ["MOZ_FETCHES_DIR"] + ) + ), + }, +} diff --git a/testing/mozharness/configs/openh264/macosx64.py b/testing/mozharness/configs/openh264/macosx64.py new file mode 100644 index 0000000000..0f4dbd1698 --- /dev/null +++ b/testing/mozharness/configs/openh264/macosx64.py @@ -0,0 +1,45 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +import mozharness + +external_tools_path = os.path.join( + os.path.abspath(os.path.dirname(os.path.dirname(mozharness.__file__))), + "external_tools", +) + +config = { + "exes": { + "gittool.py": [os.path.join(external_tools_path, "gittool.py")], + "python3": "python3", + }, + "dump_syms_binary": "{}/dump_syms/dump_syms".format(os.environ["MOZ_FETCHES_DIR"]), + "arch": "x64", + "operating_system": "darwin", + "partial_env": { + "CXXFLAGS": ( + "-target x86_64-apple-darwin " + "-isysroot {MOZ_FETCHES_DIR}/MacOSX13.3.sdk " + "-mmacosx-version-min=10.12".format( + MOZ_FETCHES_DIR=os.environ["MOZ_FETCHES_DIR"] + ) + ), + "LDFLAGS": ( + "-target x86_64-apple-darwin " + "-isysroot {MOZ_FETCHES_DIR}/MacOSX13.3.sdk " + "-mmacosx-version-min=10.12".format( + MOZ_FETCHES_DIR=os.environ["MOZ_FETCHES_DIR"] + ) + ), + "PATH": ( + "{MOZ_FETCHES_DIR}/clang/bin:" + "{MOZ_FETCHES_DIR}/cctools/bin:" + "{MOZ_FETCHES_DIR}/nasm:%(PATH)s".format( + MOZ_FETCHES_DIR=os.environ["MOZ_FETCHES_DIR"] + ) + ), + }, +} diff --git a/testing/mozharness/configs/openh264/tooltool-manifests/win.manifest b/testing/mozharness/configs/openh264/tooltool-manifests/win.manifest new file mode 100644 index 0000000000..5ec9a8377a --- /dev/null +++ b/testing/mozharness/configs/openh264/tooltool-manifests/win.manifest @@ -0,0 +1,10 @@ +[ + { + "version": "Visual Studio 2017 15.8.4 / SDK 10.0.17134.0", + "digest": "ecf1e03f6f98f86775059a43f9e7dc7e326f6643d7c08962d9f614e4f5a65b1ca63fa1cfeb0f1a3c2474bf0d4318dda960b378beb2a44ecf8a91111207f4ece5", + "size": 349626009, + "algorithm": "sha512", + "filename": "vs2017_15.8.4.zip", + "unpack": true + } +] diff --git a/testing/mozharness/configs/openh264/tooltool-manifests/win64-aarch64.manifest b/testing/mozharness/configs/openh264/tooltool-manifests/win64-aarch64.manifest new file mode 100644 index 0000000000..4989d3a4ee --- /dev/null +++ b/testing/mozharness/configs/openh264/tooltool-manifests/win64-aarch64.manifest @@ -0,0 +1,11 @@ +[ + { + "version": "Visual Studio 2017 15.9.6 / SDK 10.0.17134.0", + "size": 490015895, + "visibility": "internal", + "digest": "91d08703a8ce39f6f53ccecc7c7b6f57e1b571ddb5d1eb4dd9260e52580566c35a4bed39ad366fd60ca60ebf5c06f0f00561bba5cd631826511f2872a3d2dcd5", + "algorithm": "sha512", + "filename": "vs2017_15.9.6.zip", + "unpack": true + } +] diff --git a/testing/mozharness/configs/openh264/win32.py b/testing/mozharness/configs/openh264/win32.py new file mode 100644 index 0000000000..6b07072200 --- /dev/null +++ b/testing/mozharness/configs/openh264/win32.py @@ -0,0 +1,52 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os +import sys + +import mozharness + +external_tools_path = os.path.join( + os.path.abspath(os.path.dirname(os.path.dirname(mozharness.__file__))), + "external_tools", +) + +VSPATH = "%(abs_work_dir)s\\vs2017_15.8.4" +config = { + "tooltool_manifest_file": "win.manifest", + "exes": { + "gittool.py": [sys.executable, os.path.join(external_tools_path, "gittool.py")], + "python3": "c:\\mozilla-build\\python\\python3.exe", + }, + "dump_syms_binary": "{}/dump_syms/dump_syms.exe".format( + os.environ["MOZ_FETCHES_DIR"] + ), + "arch": "x86", + "partial_env": { + "PATH": ( + "{MOZ_FETCHES_DIR}\\clang\\bin\\;" + "{MOZ_FETCHES_DIR}\\nasm;" + "{_VSPATH}\\VC\\bin\\Hostx64\\x64;%(PATH)s" + # 32-bit redist here for our dump_syms.exe + "{_VSPATH}/VC/redist/x86/Microsoft.VC141.CRT;" + "{_VSPATH}/SDK/Redist/ucrt/DLLs/x86;" + "{_VSPATH}/DIA SDK/bin" + ).format(_VSPATH=VSPATH, MOZ_FETCHES_DIR=os.environ["MOZ_FETCHES_DIR"]), + "INCLUDES": ( + "-I{_VSPATH}\\VC\\include " + "-I{_VSPATH}\\VC\\atlmfc\\include " + "-I{_VSPATH}\\SDK\\Include\\10.0.17134.0\\ucrt " + "-I{_VSPATH}\\SDK\\Include\\10.0.17134.0\\shared " + "-I{_VSPATH}\\SDK\\Include\\10.0.17134.0\\um " + "-I{_VSPATH}\\SDK\\Include\\10.0.17134.0\\winrt " + ).format(_VSPATH=VSPATH), + "LIB": ( + "{_VSPATH}/VC/lib/x86;" + "{_VSPATH}/VC/atlmfc/lib/x86;" + "{_VSPATH}/SDK/lib/10.0.17134.0/ucrt/x86;" + "{_VSPATH}/SDK/lib/10.0.17134.0/um/x86;" + ).format(_VSPATH=VSPATH), + "CFLAGS": ("-m32"), + }, +} diff --git a/testing/mozharness/configs/openh264/win64-aarch64.py b/testing/mozharness/configs/openh264/win64-aarch64.py new file mode 100644 index 0000000000..5546c4fabc --- /dev/null +++ b/testing/mozharness/configs/openh264/win64-aarch64.py @@ -0,0 +1,53 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os +import sys + +import mozharness + +external_tools_path = os.path.join( + os.path.abspath(os.path.dirname(os.path.dirname(mozharness.__file__))), + "external_tools", +) + +VSPATH = "%(abs_work_dir)s\\vs2017_15.9.6" +config = { + "tooltool_manifest_file": "win64-aarch64.manifest", + "exes": { + "gittool.py": [sys.executable, os.path.join(external_tools_path, "gittool.py")], + "python3": "c:\\mozilla-build\\python\\python3.exe", + }, + "dump_syms_binary": "{}/dump_syms/dump_syms.exe".format( + os.environ["MOZ_FETCHES_DIR"] + ), + "arch": "aarch64", + "partial_env": { + "PATH": ( + "%(abs_work_dir)s\\openh264;" + "{MOZ_FETCHES_DIR}\\clang\\bin\\;" + "{_VSPATH}\\VC\\bin\\Hostx64\\arm64;" + "{_VSPATH}\\VC\\bin\\Hostx64\\x64;" + # 32-bit redist here for our dump_syms.exe + "{_VSPATH}/VC/redist/x86/Microsoft.VC141.CRT;" + "{_VSPATH}/SDK/Redist/ucrt/DLLs/x86;" + "{_VSPATH}/DIA SDK/bin;%(PATH)s;" + ).format(_VSPATH=VSPATH, MOZ_FETCHES_DIR=os.environ["MOZ_FETCHES_DIR"]), + "INCLUDES": ( + "-I{_VSPATH}\\VC\\include " + "-I{_VSPATH}\\VC\\atlmfc\\include " + "-I{_VSPATH}\\SDK\\Include\\10.0.17134.0\\ucrt " + "-I{_VSPATH}\\SDK\\Include\\10.0.17134.0\\shared " + "-I{_VSPATH}\\SDK\\Include\\10.0.17134.0\\um " + "-I{_VSPATH}\\SDK\\Include\\10.0.17134.0\\winrt " + ).format(_VSPATH=VSPATH), + "LIB": ( + "{_VSPATH}/VC/lib/arm64;" + "{_VSPATH}/VC/atlmfc/lib/arm64;" + "{_VSPATH}/SDK/lib/10.0.17134.0/ucrt/arm64;" + "{_VSPATH}/SDK/lib/10.0.17134.0/um/arm64;" + ).format(_VSPATH=VSPATH), + "CFLAGS": ("--target=aarch64-windows-msvc"), + }, +} diff --git a/testing/mozharness/configs/openh264/win64.py b/testing/mozharness/configs/openh264/win64.py new file mode 100644 index 0000000000..c561dbc67a --- /dev/null +++ b/testing/mozharness/configs/openh264/win64.py @@ -0,0 +1,51 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os +import sys + +import mozharness + +external_tools_path = os.path.join( + os.path.abspath(os.path.dirname(os.path.dirname(mozharness.__file__))), + "external_tools", +) + +VSPATH = "%(abs_work_dir)s\\vs2017_15.8.4" +config = { + "tooltool_manifest_file": "win.manifest", + "exes": { + "gittool.py": [sys.executable, os.path.join(external_tools_path, "gittool.py")], + "python3": "c:\\mozilla-build\\python\\python3.exe", + }, + "dump_syms_binary": "{}/dump_syms/dump_syms.exe".format( + os.environ["MOZ_FETCHES_DIR"] + ), + "arch": "x64", + "partial_env": { + "PATH": ( + "{MOZ_FETCHES_DIR}\\clang\\bin\\;" + "{MOZ_FETCHES_DIR}\\nasm;" + "{_VSPATH}\\VC\\bin\\Hostx64\\x64;%(PATH)s;" + # 32-bit redist here for our dump_syms.exe + "{_VSPATH}/VC/redist/x86/Microsoft.VC141.CRT;" + "{_VSPATH}/SDK/Redist/ucrt/DLLs/x86;" + "{_VSPATH}/DIA SDK/bin" + ).format(_VSPATH=VSPATH, MOZ_FETCHES_DIR=os.environ["MOZ_FETCHES_DIR"]), + "INCLUDES": ( + "-I{_VSPATH}\\VC\\include " + "-I{_VSPATH}\\VC\\atlmfc\\include " + "-I{_VSPATH}\\SDK\\Include\\10.0.17134.0\\ucrt " + "-I{_VSPATH}\\SDK\\Include\\10.0.17134.0\\shared " + "-I{_VSPATH}\\SDK\\Include\\10.0.17134.0\\um " + "-I{_VSPATH}\\SDK\\Include\\10.0.17134.0\\winrt " + ).format(_VSPATH=VSPATH), + "LIB": ( + "{_VSPATH}/VC/lib/x64;" + "{_VSPATH}/VC/atlmfc/lib/x64;" + "{_VSPATH}/SDK/lib/10.0.17134.0/ucrt/x64;" + "{_VSPATH}/SDK/lib/10.0.17134.0/um/x64;" + ).format(_VSPATH=VSPATH), + }, +} diff --git a/testing/mozharness/configs/partner_repacks/release_mozilla-release_desktop.py b/testing/mozharness/configs/partner_repacks/release_mozilla-release_desktop.py new file mode 100644 index 0000000000..0e7ff90dd8 --- /dev/null +++ b/testing/mozharness/configs/partner_repacks/release_mozilla-release_desktop.py @@ -0,0 +1,19 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "appName": "Firefox", + "log_name": "partner_repack", + "repack_manifests_url": "git@github.com:mozilla-partners/repack-manifests.git", + "repo_file": "https://raw.githubusercontent.com/mozilla-releng/git-repo/main/repo", + "secret_files": [ + { + "filename": "/builds/partner-github-ssh", + "secret_name": "project/releng/gecko/build/level-%(scm-level)s/partner-github-ssh", + "min_scm_level": 1, + "mode": 0o600, + }, + ], + "ssh_key": "/builds/partner-github-ssh", +} diff --git a/testing/mozharness/configs/partner_repacks/release_mozilla-release_desktop_EME-free.py b/testing/mozharness/configs/partner_repacks/release_mozilla-release_desktop_EME-free.py new file mode 100644 index 0000000000..dde2a7a605 --- /dev/null +++ b/testing/mozharness/configs/partner_repacks/release_mozilla-release_desktop_EME-free.py @@ -0,0 +1,19 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "appName": "Firefox", + "log_name": "partner_repack", + "repack_manifests_url": "git@github.com:mozilla-partners/mozilla-EME-free-manifest.git", + "repo_file": "https://raw.githubusercontent.com/mozilla-releng/git-repo/main/repo", + "secret_files": [ + { + "filename": "/builds/partner-github-ssh", + "secret_name": "project/releng/gecko/build/level-%(scm-level)s/partner-github-ssh", + "min_scm_level": 1, + "mode": 0o600, + }, + ], + "ssh_key": "/builds/partner-github-ssh", +} diff --git a/testing/mozharness/configs/partner_repacks/staging_release_mozilla-release_desktop.py b/testing/mozharness/configs/partner_repacks/staging_release_mozilla-release_desktop.py new file mode 100644 index 0000000000..0e7ff90dd8 --- /dev/null +++ b/testing/mozharness/configs/partner_repacks/staging_release_mozilla-release_desktop.py @@ -0,0 +1,19 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "appName": "Firefox", + "log_name": "partner_repack", + "repack_manifests_url": "git@github.com:mozilla-partners/repack-manifests.git", + "repo_file": "https://raw.githubusercontent.com/mozilla-releng/git-repo/main/repo", + "secret_files": [ + { + "filename": "/builds/partner-github-ssh", + "secret_name": "project/releng/gecko/build/level-%(scm-level)s/partner-github-ssh", + "min_scm_level": 1, + "mode": 0o600, + }, + ], + "ssh_key": "/builds/partner-github-ssh", +} diff --git a/testing/mozharness/configs/raptor/android_hw_config.py b/testing/mozharness/configs/raptor/android_hw_config.py new file mode 100644 index 0000000000..81118b497b --- /dev/null +++ b/testing/mozharness/configs/raptor/android_hw_config.py @@ -0,0 +1,27 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "log_name": "raptor", + "title": os.uname()[1].lower().split(".")[0], + "default_actions": [ + "clobber", + "download-and-extract", + "populate-webroot", + "create-virtualenv", + "install-chrome-android", + "install-chromium-distribution", + "install", + "run-tests", + ], + "tooltool_cache": "/builds/tooltool_cache", + "download_tooltool": True, + "hostutils_manifest_path": "testing/config/tooltool-manifests/linux64/hostutils.manifest", +} + +# raptor will pick these up in mitmproxy.py, doesn't use the mozharness config +os.environ["TOOLTOOLCACHE"] = config["tooltool_cache"] +os.environ["HOSTUTILS_MANIFEST_PATH"] = config["hostutils_manifest_path"] diff --git a/testing/mozharness/configs/raptor/linux64_config_taskcluster.py b/testing/mozharness/configs/raptor/linux64_config_taskcluster.py new file mode 100644 index 0000000000..e3b2870c92 --- /dev/null +++ b/testing/mozharness/configs/raptor/linux64_config_taskcluster.py @@ -0,0 +1,32 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os +import sys + +PYTHON = sys.executable +VENV_PATH = "%s/build/venv" % os.getcwd() + +exes = { + "python": PYTHON, +} +ABS_WORK_DIR = os.path.join(os.getcwd(), "build") +INSTALLER_PATH = os.path.join(ABS_WORK_DIR, "installer.tar.bz2") + +config = { + "log_name": "raptor", + "installer_path": INSTALLER_PATH, + "virtualenv_path": VENV_PATH, + "exes": exes, + "title": os.uname()[1].lower().split(".")[0], + "default_actions": [ + "clobber", + "download-and-extract", + "populate-webroot", + "create-virtualenv", + "install", + "run-tests", + ], + "tooltool_cache": "/builds/worker/tooltool-cache", +} diff --git a/testing/mozharness/configs/raptor/linux_config.py b/testing/mozharness/configs/raptor/linux_config.py new file mode 100644 index 0000000000..7fffe20bb6 --- /dev/null +++ b/testing/mozharness/configs/raptor/linux_config.py @@ -0,0 +1,24 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +VENV_PATH = "%s/build/venv" % os.getcwd() + +config = { + "log_name": "raptor", + "installer_path": "installer.exe", + "virtualenv_path": VENV_PATH, + "title": os.uname()[1].lower().split(".")[0], + "default_actions": [ + "clobber", + "download-and-extract", + "populate-webroot", + "create-virtualenv", + "install-chromium-distribution", + "install", + "run-tests", + ], + "tooltool_cache": "/builds/tooltool_cache", +} diff --git a/testing/mozharness/configs/raptor/mac_config.py b/testing/mozharness/configs/raptor/mac_config.py new file mode 100644 index 0000000000..b3d8a0177f --- /dev/null +++ b/testing/mozharness/configs/raptor/mac_config.py @@ -0,0 +1,27 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +VENV_PATH = "%s/build/venv" % os.getcwd() + +config = { + "log_name": "raptor", + "installer_path": "installer.exe", + "virtualenv_path": VENV_PATH, + "title": os.uname()[1].lower().split(".")[0], + "default_actions": [ + "clobber", + "download-and-extract", + "populate-webroot", + "create-virtualenv", + "install-chromium-distribution", + "install", + "run-tests", + ], + "run_cmd_checks_enabled": True, + "preflight_run_cmd_suites": [], + "postflight_run_cmd_suites": [], + "tooltool_cache": "/builds/tooltool_cache", +} diff --git a/testing/mozharness/configs/raptor/windows_config.py b/testing/mozharness/configs/raptor/windows_config.py new file mode 100644 index 0000000000..9eed74b696 --- /dev/null +++ b/testing/mozharness/configs/raptor/windows_config.py @@ -0,0 +1,77 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os +import socket +import sys + +PYTHON = sys.executable +VENV_PATH = os.path.join(os.getcwd(), "build/venv") + +PYWIN32 = "pywin32==306" + +config = { + "log_name": "raptor", + "installer_path": "installer.exe", + "virtualenv_path": VENV_PATH, + "virtualenv_modules": [PYWIN32, "raptor", "mozinstall"], + "exes": { + "python": PYTHON, + "mozinstall": [ + "%s/scripts/python" % VENV_PATH, + "%s/scripts/mozinstall-script.py" % VENV_PATH, + ], + "hg": os.path.join(os.environ["PROGRAMFILES"], "Mercurial", "hg"), + "tooltool.py": [ + PYTHON, + os.path.join(os.environ["MOZILLABUILD"], "tooltool.py"), + ], + }, + "title": socket.gethostname().split(".")[0], + "default_actions": [ + "clobber", + "download-and-extract", + "populate-webroot", + "create-virtualenv", + "install-chromium-distribution", + "install", + "run-tests", + ], + "tooltool_cache": os.path.join("c:\\", "build", "tooltool_cache"), + "python3_manifest": { + "win32": "python3.manifest", + "win64": "python3_x64.manifest", + }, + "env": { + # python3 requires C runtime, found in firefox installation; see bug 1361732 + "PATH": "%(PATH)s;c:\\slave\\test\\build\\application\\firefox;" + }, + "run_cmd_checks_enabled": True, + "preflight_run_cmd_suites": [ + { + "name": "run mouse & screen adjustment script", + "cmd": [ + sys.executable, + os.path.join( + os.getcwd(), + "mozharness", + "external_tools", + "mouse_and_screen_resolution.py", + ), + "--configuration-file", + os.path.join( + os.getcwd(), + "mozharness", + "external_tools", + "machine-configuration.json", + ), + "--platform", + "win10-hw", + ], + "architectures": ["32bit", "64bit"], + "halt_on_failure": True, + "enabled": True, + } + ], +} diff --git a/testing/mozharness/configs/raptor/windows_vm_config.py b/testing/mozharness/configs/raptor/windows_vm_config.py new file mode 100644 index 0000000000..7bd5e9da58 --- /dev/null +++ b/testing/mozharness/configs/raptor/windows_vm_config.py @@ -0,0 +1,46 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os +import socket +import sys + +PYTHON = sys.executable +VENV_PATH = os.path.join(os.getcwd(), "build/venv") + +PYWIN32 = "pywin32==306" + +config = { + "log_name": "raptor", + "installer_path": "installer.exe", + "virtualenv_path": VENV_PATH, + "virtualenv_modules": [PYWIN32, "raptor", "mozinstall"], + "exes": { + "python": PYTHON, + "mozinstall": [ + "%s/scripts/python" % VENV_PATH, + "%s/scripts/mozinstall-script.py" % VENV_PATH, + ], + "hg": os.path.join(os.environ["PROGRAMFILES"], "Mercurial", "hg"), + }, + "title": socket.gethostname().split(".")[0], + "default_actions": [ + "clobber", + "download-and-extract", + "populate-webroot", + "create-virtualenv", + "install-chromium-distribution", + "install", + "run-tests", + ], + "tooltool_cache": os.path.join("c:\\", "build", "tooltool_cache"), + "python3_manifest": { + "win32": "python3.manifest", + "win64": "python3_x64.manifest", + }, + "env": { + # python3 requires C runtime, found in firefox installation; see bug 1361732 + "PATH": "%(PATH)s;c:\\slave\\test\\build\\application\\firefox;" + }, +} diff --git a/testing/mozharness/configs/releases/bouncer_firefox_beta.py b/testing/mozharness/configs/releases/bouncer_firefox_beta.py new file mode 100644 index 0000000000..fa3ece116c --- /dev/null +++ b/testing/mozharness/configs/releases/bouncer_firefox_beta.py @@ -0,0 +1,152 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +# lint_ignore=E501 +config = { + "products": { + # for installers, stubs, msi (ie not updates) ... + # products containing "latest" are for www.mozilla.org via cron-bouncer-check + # products using versions are for release automation via release-bouncer-check-firefox + "installer": { + "product-name": "Firefox-%(version)s", + "platforms": [ + "linux", + "linux64", + "osx", + "win", + "win64", + "win64-aarch64", + ], + }, + "installer-latest": { + "product-name": "Firefox-beta-latest", + "platforms": [ + "linux", + "linux64", + "osx", + "win", + "win64", + "win64-aarch64", + ], + }, + "installer-ssl": { + "product-name": "Firefox-%(version)s-SSL", + "platforms": [ + "linux", + "linux64", + "osx", + "win", + "win64", + "win64-aarch64", + ], + }, + "installer-latest-ssl": { + "product-name": "Firefox-beta-latest-SSL", + "platforms": [ + "linux", + "linux64", + "osx", + "win", + "win64", + "win64-aarch64", + ], + }, + "msi": { + "product-name": "Firefox-%(version)s-msi-SSL", + "platforms": [ + "win", + "win64", + ], + }, + "msi-latest": { + "product-name": "Firefox-beta-msi-latest-SSL", + "platforms": [ + "win", + "win64", + ], + }, + "msix": { + "product-name": "Firefox-%(version)s-msix-SSL", + "platforms": [ + "win", + "win64", + ], + }, + "msix-latest": { + "product-name": "Firefox-beta-msix-latest-SSL", + "platforms": [ + "win", + "win64", + ], + }, + "pkg": { + "product-name": "Firefox-%(version)s-pkg-SSL", + "platforms": ["osx"], + }, + "pkg-latest": { + "product-name": "Firefox-beta-pkg-latest-SSL", + "platforms": ["osx"], + }, + "stub-installer": { + "product-name": "Firefox-%(version)s-stub", + "platforms": [ + "win", + "win64", + "win64-aarch64", + ], + }, + "stub-installer-latest": { + "product-name": "Firefox-beta-stub", + "platforms": [ + "win", + "win64", + "win64-aarch64", + ], + }, + "langpack": { + "product-name": "Firefox-%(version)s-langpack-SSL", + "platforms": [ + "linux", + "linux64", + "osx", + "win", + "win64", + ], + }, + "langpack-latest": { + "product-name": "Firefox-beta-langpack-latest-SSL", + "platforms": [ + "linux", + "linux64", + "osx", + "win", + "win64", + ], + }, + "complete-mar": { + "product-name": "Firefox-%(version)s-Complete", + "platforms": [ + "linux", + "linux64", + "osx", + "win", + "win64", + "win64-aarch64", + ], + }, + }, + "partials": { + "releases-dir": { + "product-name": "Firefox-%(version)s-Partial-%(prev_version)s", + "platforms": [ + "linux", + "linux64", + "osx", + "win", + "win64", + "win64-aarch64", + ], + }, + }, +} diff --git a/testing/mozharness/configs/releases/bouncer_firefox_devedition.py b/testing/mozharness/configs/releases/bouncer_firefox_devedition.py new file mode 100644 index 0000000000..3b736dc74e --- /dev/null +++ b/testing/mozharness/configs/releases/bouncer_firefox_devedition.py @@ -0,0 +1,124 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +# lint_ignore=E501 +config = { + "products": { + # for installers, stubs, msi (ie not updates) ... + # products containing "latest" are for www.mozilla.org via cron-bouncer-check + # products using versions are for release automation via release-bouncer-check-firefox + "installer": { + "product-name": "Devedition-%(version)s", + "platforms": [ + "linux", + "linux64", + "osx", + "win", + "win64", + "win64-aarch64", + ], + }, + "installer-latest": { + "product-name": "Firefox-devedition-latest", + "platforms": [ + "linux", + "linux64", + "osx", + "win", + "win64", + "win64-aarch64", + ], + }, + "installer-ssl": { + "product-name": "Devedition-%(version)s-SSL", + "platforms": [ + "linux", + "linux64", + "osx", + "win", + "win64", + "win64-aarch64", + ], + }, + "installer-latest-ssl": { + "product-name": "Firefox-devedition-latest-SSL", + "platforms": [ + "linux", + "linux64", + "osx", + "win", + "win64", + "win64-aarch64", + ], + }, + "msi": { + "product-name": "Devedition-%(version)s-msi-SSL", + "platforms": [ + "win", + "win64", + ], + }, + "msi-latest": { + "product-name": "Firefox-devedition-msi-latest-SSL", + "platforms": [ + "win", + "win64", + ], + }, + "msix": { + "product-name": "Devedition-%(version)s-msix-SSL", + "platforms": [ + "win", + "win64", + ], + }, + "msix-latest": { + "product-name": "Firefox-devedition-msix-latest-SSL", + "platforms": [ + "win", + "win64", + ], + }, + "stub-installer": { + "product-name": "Devedition-%(version)s-stub", + "platforms": [ + "win", + "win64", + "win64-aarch64", + ], + }, + "stub-installer-latest": { + "product-name": "Firefox-devedition-stub", + "platforms": [ + "win", + "win64", + "win64-aarch64", + ], + }, + "complete-mar": { + "product-name": "Devedition-%(version)s-Complete", + "platforms": [ + "linux", + "linux64", + "osx", + "win", + "win64", + "win64-aarch64", + ], + }, + }, + "partials": { + "releases-dir": { + "product-name": "Devedition-%(version)s-Partial-%(prev_version)s", + "platforms": [ + "linux", + "linux64", + "osx", + "win", + "win64", + "win64-aarch64", + ], + }, + }, +} diff --git a/testing/mozharness/configs/releases/bouncer_firefox_esr.py b/testing/mozharness/configs/releases/bouncer_firefox_esr.py new file mode 100644 index 0000000000..21528c2aac --- /dev/null +++ b/testing/mozharness/configs/releases/bouncer_firefox_esr.py @@ -0,0 +1,186 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +# lint_ignore=E501 +config = { + "products": { + # for installers, stubs, msi (ie not updates) ... + # products containing "latest" are for www.mozilla.org via cron-bouncer-check + # products using versions are for release automation via release-bouncer-check-firefox + "installer": { + "product-name": "Firefox-%(version)s", + "platforms": [ + "linux", + "linux64", + "osx", + "win", + "win64", + "win64-aarch64", + ], + }, + "installer-latest": { + "product-name": "Firefox-esr-latest", + "platforms": [ + "linux", + "linux64", + "osx", + "win", + "win64", + "win64-aarch64", + ], + }, + "installer-next-latest": { + "product-name": "Firefox-esr-next-latest", + "platforms": [ + "linux", + "linux64", + "osx", + "win", + "win64", + "win64-aarch64", + ], + }, + "installer-ssl": { + "product-name": "Firefox-%(version)s-SSL", + "platforms": [ + "linux", + "linux64", + "osx", + "win", + "win64", + "win64-aarch64", + ], + }, + "installer-latest-ssl": { + "product-name": "Firefox-esr-latest-SSL", + "platforms": [ + "linux", + "linux64", + "osx", + "win", + "win64", + "win64-aarch64", + ], + }, + "installer-next-latest-ssl": { + "product-name": "Firefox-esr-next-latest-SSL", + "platforms": [ + "linux", + "linux64", + "osx", + "win", + "win64", + "win64-aarch64", + ], + }, + "msi": { + "product-name": "Firefox-%(version)s-msi-SSL", + "platforms": [ + "win", + "win64", + ], + }, + "msi-latest": { + "product-name": "Firefox-esr-msi-latest-SSL", + "platforms": [ + "win", + "win64", + ], + }, + "msi-next-latest": { + "product-name": "Firefox-esr-next-msi-latest-SSL", + "platforms": [ + "win", + "win64", + ], + }, + "msix": { + "product-name": "Firefox-%(version)s-msix-SSL", + "platforms": [ + "win", + "win64", + ], + }, + "msix-latest": { + "product-name": "Firefox-esr-msix-latest-SSL", + "platforms": [ + "win", + "win64", + ], + }, + "msix-next-latest": { + "product-name": "Firefox-esr-next-msix-latest-SSL", + "platforms": [ + "win", + "win64", + ], + }, + "pkg": { + "product-name": "Firefox-%(version)s-pkg-SSL", + "platforms": ["osx"], + }, + "pkg-latest": { + "product-name": "Firefox-esr-pkg-latest-SSL", + "platforms": ["osx"], + }, + "pkg-next-latest": { + "product-name": "Firefox-esr-next-pkg-latest-SSL", + "platforms": ["osx"], + }, + "langpack": { + "product-name": "Firefox-%(version)s-langpack-SSL", + "platforms": [ + "linux", + "linux64", + "osx", + "win", + "win64", + ], + }, + "langpack-latest": { + "product-name": "Firefox-esr-langpack-latest-SSL", + "platforms": [ + "linux", + "linux64", + "osx", + "win", + "win64", + ], + }, + "langpack-latest-next": { + "product-name": "Firefox-esr-next-langpack-latest-SSL", + "platforms": [ + "linux", + "linux64", + "osx", + "win", + "win64", + ], + }, + "complete-mar": { + "product-name": "Firefox-%(version)s-Complete", + "platforms": [ + "linux", + "linux64", + "osx", + "win", + "win64", + "win64-aarch64", + ], + }, + }, + "partials": { + "releases-dir": { + "product-name": "Firefox-%(version)s-Partial-%(prev_version)s", + "platforms": [ + "linux", + "linux64", + "osx", + "win", + "win64", + "win64-aarch64", + ], + }, + }, +} diff --git a/testing/mozharness/configs/releases/bouncer_firefox_nightly.py b/testing/mozharness/configs/releases/bouncer_firefox_nightly.py new file mode 100644 index 0000000000..09d52fe4a3 --- /dev/null +++ b/testing/mozharness/configs/releases/bouncer_firefox_nightly.py @@ -0,0 +1,80 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +# lint_ignore=E501 +config = { + "products": { + "installer-latest": { + "product-name": "Firefox-nightly-latest", + "platforms": [ + "linux", + "linux64", + "osx", + "win", + "win64", + "win64-aarch64", + ], + }, + "installer-latest-ssl": { + "product-name": "Firefox-nightly-latest-SSL", + "platforms": [ + "linux", + "linux64", + "osx", + "win", + "win64", + "win64-aarch64", + ], + }, + "installer-latest-l10n-ssl": { + "product-name": "Firefox-nightly-latest-l10n-SSL", + "platforms": [ + "linux", + "linux64", + "osx", + "win", + "win64", + "win64-aarch64", + ], + }, + "msi-latest": { + "product-name": "Firefox-nightly-msi-latest-SSL", + "platforms": [ + "win", + "win64", + ], + }, + "msi-latest-l10n": { + "product-name": "Firefox-nightly-msi-latest-l10n-SSL", + "platforms": [ + "win", + "win64", + ], + }, + "stub-installer": { + "product-name": "Firefox-nightly-stub", + "platforms": [ + "win", + "win64", + "win64-aarch64", + ], + }, + "stub-installer-l10n": { + "product-name": "Firefox-nightly-stub-l10n", + "platforms": [ + "win", + "win64", + "win64-aarch64", + ], + }, + "pkg-latest": { + "product-name": "Firefox-nightly-pkg-latest-ssl", + "platforms": ["osx"], + }, + "pkg-latest-l10n": { + "product-name": "Firefox-nightly-pkg-latest-l10n-ssl", + "platforms": ["osx"], + }, + }, +} diff --git a/testing/mozharness/configs/releases/bouncer_firefox_release.py b/testing/mozharness/configs/releases/bouncer_firefox_release.py new file mode 100644 index 0000000000..0259e4ad57 --- /dev/null +++ b/testing/mozharness/configs/releases/bouncer_firefox_release.py @@ -0,0 +1,152 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +# lint_ignore=E501 +config = { + "products": { + # for installers, stubs, msi (ie not updates) ... + # products containing "latest" are for www.mozilla.org via cron-bouncer-check + # products using versions are for release automation via release-bouncer-check-firefox + "installer": { + "product-name": "Firefox-%(version)s", + "platforms": [ + "linux", + "linux64", + "osx", + "win", + "win64", + "win64-aarch64", + ], + }, + "installer-latest": { + "product-name": "Firefox-latest", + "platforms": [ + "linux", + "linux64", + "osx", + "win", + "win64", + "win64-aarch64", + ], + }, + "installer-ssl": { + "product-name": "Firefox-%(version)s-SSL", + "platforms": [ + "linux", + "linux64", + "osx", + "win", + "win64", + "win64-aarch64", + ], + }, + "installer-latest-ssl": { + "product-name": "Firefox-latest-SSL", + "platforms": [ + "linux", + "linux64", + "osx", + "win", + "win64", + "win64-aarch64", + ], + }, + "msi": { + "product-name": "Firefox-%(version)s-msi-SSL", + "platforms": [ + "win", + "win64", + ], + }, + "msi-latest": { + "product-name": "Firefox-msi-latest-SSL", + "platforms": [ + "win", + "win64", + ], + }, + "msix": { + "product-name": "Firefox-%(version)s-msix-SSL", + "platforms": [ + "win", + "win64", + ], + }, + "msix-latest": { + "product-name": "Firefox-msix-latest-SSL", + "platforms": [ + "win", + "win64", + ], + }, + "langpack": { + "product-name": "Firefox-%(version)s-langpack-SSL", + "platforms": [ + "linux", + "linux64", + "osx", + "win", + "win64", + ], + }, + "langpack-latest": { + "product-name": "Firefox-langpack-latest-SSL", + "platforms": [ + "linux", + "linux64", + "osx", + "win", + "win64", + ], + }, + "stub-installer": { + "product-name": "Firefox-%(version)s-stub", + "platforms": [ + "win", + "win64", + "win64-aarch64", + ], + }, + "stub-installer-latest": { + "product-name": "Firefox-stub", + "platforms": [ + "win", + "win64", + "win64-aarch64", + ], + }, + "pkg": { + "product-name": "Firefox-%(version)s-pkg-SSL", + "platforms": ["osx"], + }, + "pkg-latest": { + "product-name": "Firefox-pkg-latest-SSL", + "platforms": ["osx"], + }, + "complete-mar": { + "product-name": "Firefox-%(version)s-Complete", + "platforms": [ + "linux", + "linux64", + "osx", + "win", + "win64", + "win64-aarch64", + ], + }, + }, + "partials": { + "releases-dir": { + "product-name": "Firefox-%(version)s-Partial-%(prev_version)s", + "platforms": [ + "linux", + "linux64", + "osx", + "win", + "win64", + "win64-aarch64", + ], + }, + }, +} diff --git a/testing/mozharness/configs/releases/dev_postrelease_fennec_beta.py b/testing/mozharness/configs/releases/dev_postrelease_fennec_beta.py new file mode 100644 index 0000000000..1b0038db75 --- /dev/null +++ b/testing/mozharness/configs/releases/dev_postrelease_fennec_beta.py @@ -0,0 +1,24 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + # maple is used for staging mozilla-beta + "log_name": "bump_maple", + "version_files": [{"file": "browser/config/version_display.txt"}], + "repo": { + # maple is used for staging mozilla-beta + "repo": "https://hg.mozilla.org/projects/maple", + "branch": "default", + "dest": "maple", + "vcs": "hg", + "clone_upstream_url": "https://hg.mozilla.org/mozilla-unified", + }, + # maple is used for staging mozilla-beta + "push_dest": "ssh://hg.mozilla.org/projects/maple", + "ignore_no_changes": True, + "ssh_user": "ffxbld", + "ssh_key": "~/.ssh/ffxbld_rsa", + "ship_it_root": "https://ship-it-dev.allizom.org", + "ship_it_username": "ship_it-stage-ffxbld", +} diff --git a/testing/mozharness/configs/releases/dev_postrelease_fennec_release.py b/testing/mozharness/configs/releases/dev_postrelease_fennec_release.py new file mode 100644 index 0000000000..5205ad41cc --- /dev/null +++ b/testing/mozharness/configs/releases/dev_postrelease_fennec_release.py @@ -0,0 +1,26 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "log_name": "bump_release_dev", + "version_files": [ + {"file": "browser/config/version.txt"}, + {"file": "browser/config/version_display.txt"}, + {"file": "config/milestone.txt"}, + ], + "repo": { + # jamun is used for staging mozilla-release + "repo": "https://hg.mozilla.org/projects/jamun", + "branch": "default", + "dest": "jamun", + "vcs": "hg", + "clone_upstream_url": "https://hg.mozilla.org/mozilla-unified", + }, + "push_dest": "ssh://hg.mozilla.org/projects/jamun", + "ignore_no_changes": True, + "ssh_user": "ffxbld", + "ssh_key": "~/.ssh/ffxbld_rsa", + "ship_it_root": "https://ship-it-dev.allizom.org", + "ship_it_username": "ship_it-stage-ffxbld", +} diff --git a/testing/mozharness/configs/releases/dev_postrelease_firefox_beta.py b/testing/mozharness/configs/releases/dev_postrelease_firefox_beta.py new file mode 100644 index 0000000000..ce7ff54bd5 --- /dev/null +++ b/testing/mozharness/configs/releases/dev_postrelease_firefox_beta.py @@ -0,0 +1,24 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + # date is used for staging mozilla-beta + "log_name": "bump_date", + "version_files": [{"file": "browser/config/version_display.txt"}], + "repo": { + # maple is used for staging mozilla-beta + "repo": "https://hg.mozilla.org/projects/jamun", + "branch": "default", + "dest": "jamun", + "vcs": "hg", + "clone_upstream_url": "https://hg.mozilla.org/mozilla-unified", + }, + # date is used for staging mozilla-beta + "push_dest": "ssh://hg.mozilla.org/projects/jamun", + "ignore_no_changes": True, + "ssh_user": "ffxbld", + "ssh_key": "~/.ssh/ffxbld_rsa", + "ship_it_root": "https://ship-it-dev.allizom.org", + "ship_it_username": "ship_it-stage-ffxbld", +} diff --git a/testing/mozharness/configs/releases/dev_postrelease_firefox_release.py b/testing/mozharness/configs/releases/dev_postrelease_firefox_release.py new file mode 100644 index 0000000000..5205ad41cc --- /dev/null +++ b/testing/mozharness/configs/releases/dev_postrelease_firefox_release.py @@ -0,0 +1,26 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "log_name": "bump_release_dev", + "version_files": [ + {"file": "browser/config/version.txt"}, + {"file": "browser/config/version_display.txt"}, + {"file": "config/milestone.txt"}, + ], + "repo": { + # jamun is used for staging mozilla-release + "repo": "https://hg.mozilla.org/projects/jamun", + "branch": "default", + "dest": "jamun", + "vcs": "hg", + "clone_upstream_url": "https://hg.mozilla.org/mozilla-unified", + }, + "push_dest": "ssh://hg.mozilla.org/projects/jamun", + "ignore_no_changes": True, + "ssh_user": "ffxbld", + "ssh_key": "~/.ssh/ffxbld_rsa", + "ship_it_root": "https://ship-it-dev.allizom.org", + "ship_it_username": "ship_it-stage-ffxbld", +} diff --git a/testing/mozharness/configs/releases/dev_postrelease_firefox_release_birch.py b/testing/mozharness/configs/releases/dev_postrelease_firefox_release_birch.py new file mode 100644 index 0000000000..47593625f2 --- /dev/null +++ b/testing/mozharness/configs/releases/dev_postrelease_firefox_release_birch.py @@ -0,0 +1,26 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "log_name": "bump_release_dev", + "version_files": [ + {"file": "browser/config/version.txt"}, + {"file": "browser/config/version_display.txt"}, + {"file": "config/milestone.txt"}, + ], + "repo": { + # jamun is used for staging mozilla-release + "repo": "https://hg.mozilla.org/projects/birch", + "branch": "default", + "dest": "birch", + "vcs": "hg", + "clone_upstream_url": "https://hg.mozilla.org/mozilla-unified", + }, + "push_dest": "ssh://hg.mozilla.org/projects/birch", + "ignore_no_changes": True, + "ssh_user": "ffxbld", + "ssh_key": "~/.ssh/ffxbld_rsa", + "ship_it_root": "https://ship-it-dev.allizom.org", + "ship_it_username": "ship_it-stage-ffxbld", +} diff --git a/testing/mozharness/configs/releases/dev_updates_firefox_beta.py b/testing/mozharness/configs/releases/dev_updates_firefox_beta.py new file mode 100644 index 0000000000..9c60d1e9ce --- /dev/null +++ b/testing/mozharness/configs/releases/dev_updates_firefox_beta.py @@ -0,0 +1,42 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "log_name": "bump_beta_dev", + # TODO: use real repo + "repo": { + "repo": "https://hg.mozilla.org/users/stage-ffxbld/tools", + "branch": "default", + "dest": "tools", + "vcs": "hg", + }, + "vcs_share_base": "/builds/hg-shared", + # TODO: use real repo + "push_dest": "ssh://hg.mozilla.org/users/stage-ffxbld/tools", + # jamun repo used for staging beta + "shipped-locales-url": "https://hg.mozilla.org/projects/jamun/raw-file/{revision}/browser/locales/shipped-locales", + "ignore_no_changes": True, + "ssh_user": "ffxbld", + "ssh_key": "~/.ssh/ffxbld_rsa", + "archive_domain": "ftp.stage.mozaws.net", + "archive_prefix": "https://ftp.stage.mozaws.net/pub", + "previous_archive_prefix": "https://archive.mozilla.org/pub", + "download_domain": "download.mozilla.org", + "balrog_url": "http://54.90.211.22:9090", + "balrog_username": "balrog-stage-ffxbld", + "update_channels": { + "beta": { + "version_regex": r"^(\d+\.\d+(b\d+)?)$", + "requires_mirrors": True, + # TODO - when we use a real repo, rename this file # s/MozJamun/Mozbeta/ + "patcher_config": "mozJamun-branch-patcher2.cfg", + "update_verify_channel": "beta-localtest", + "mar_channel_ids": [], + "channel_names": ["beta", "beta-localtest", "beta-cdntest"], + "rules_to_update": ["firefox-beta-cdntest", "firefox-beta-localtest"], + "publish_rules": [32], + } + }, + "balrog_use_dummy_suffix": False, +} diff --git a/testing/mozharness/configs/releases/dev_updates_firefox_devedition.py b/testing/mozharness/configs/releases/dev_updates_firefox_devedition.py new file mode 100644 index 0000000000..2b2406be39 --- /dev/null +++ b/testing/mozharness/configs/releases/dev_updates_firefox_devedition.py @@ -0,0 +1,45 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "log_name": "updates_devedition", + # TODO: use real repo + "repo": { + "repo": "https://hg.mozilla.org/users/asasaki_mozilla.com/tools", + "branch": "default", + "dest": "tools", + "vcs": "hg", + }, + "vcs_share_base": "/builds/hg-shared", + # TODO: use real repo + "push_dest": "ssh://hg.mozilla.org/users/asasaki_mozilla.com/tools", + # maple repo used for staging beta + "shipped-locales-url": "https://hg.mozilla.org/projects/maple/raw-file/{revision}/browser/locales/shipped-locales", + "ignore_no_changes": True, + "ssh_user": "ffxbld", + "ssh_key": "~/.ssh/ffxbld_rsa", + "archive_domain": "ftp.stage.mozaws.net", + "archive_prefix": "https://ftp.stage.mozaws.net/pub", + "previous_archive_prefix": "https://archive.mozilla.org/pub", + "download_domain": "download.mozilla.org", + "balrog_url": "https://stage.balrog.nonprod.cloudops.mozgcp.net/", + "balrog_username": "balrog-stage-ffxbld", + "update_channels": { + "aurora": { + "version_regex": r"^(\d+\.\d+(b\d+)?)$", + "requires_mirrors": True, + # TODO - when we use a real repo, rename this file # s/MozJamun/Mozbeta/ + "patcher_config": "mozDevedition-branch-patcher2.cfg", + "patcher_config_product_override": "firefox", + "update_verify_channel": "aurora-localtest", + "mar_channel_ids": [], + "channel_names": ["aurora", "aurora-localtest", "aurora-cdntest"], + "rules_to_update": ["devedition-cdntest", "devedition-localtest"], + "publish_rules": [10], + } + }, + "balrog_use_dummy_suffix": False, + "stage_product": "devedition", + "bouncer_product": "devedition", +} diff --git a/testing/mozharness/configs/releases/dev_updates_firefox_release.py b/testing/mozharness/configs/releases/dev_updates_firefox_release.py new file mode 100644 index 0000000000..1413ae1031 --- /dev/null +++ b/testing/mozharness/configs/releases/dev_updates_firefox_release.py @@ -0,0 +1,55 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "log_name": "updates_release_dev", + # TODO: use real repo + "repo": { + "repo": "https://hg.mozilla.org/users/stage-ffxbld/tools", + "branch": "default", + "dest": "tools", + "vcs": "hg", + }, + "vcs_share_base": "/builds/hg-shared", + # TODO: use real repo + "push_dest": "ssh://hg.mozilla.org/users/stage-ffxbld/tools", + # jamun repo used for staging release + "shipped-locales-url": "https://hg.mozilla.org/projects/jamun/raw-file/{revision}/browser/locales/shipped-locales", + "ignore_no_changes": True, + "ssh_user": "ffxbld", + "ssh_key": "~/.ssh/ffxbld_rsa", + "archive_domain": "ftp.stage.mozaws.net", + "archive_prefix": "https://ftp.stage.mozaws.net/pub", + "previous_archive_prefix": "https://archive.mozilla.org/pub", + "download_domain": "download.mozilla.org", + "balrog_url": "http://54.90.211.22:9090", + "balrog_username": "balrog-stage-ffxbld", + "update_channels": { + "beta": { + "version_regex": r"^(\d+\.\d+(b\d+)?)$", + "requires_mirrors": False, + "patcher_config": "mozDate-branch-patcher2.cfg", + "update_verify_channel": "beta-localtest", + "mar_channel_ids": [ + "firefox-mozilla-beta", + "firefox-mozilla-release", + ], + "channel_names": ["beta", "beta-localtest", "beta-cdntest"], + "rules_to_update": ["firefox-beta-cdntest", "firefox-beta-localtest"], + "publish_rules": [32], + "schedule_asap": True, + }, + "release": { + "version_regex": r"^\d+\.\d+(\.\d+)?$", + "requires_mirrors": True, + "patcher_config": "mozJamun-branch-patcher2.cfg", + "update_verify_channel": "release-localtest", + "mar_channel_ids": [], + "channel_names": ["release", "release-localtest", "release-cdntest"], + "rules_to_update": ["firefox-release-cdntest", "firefox-release-localtest"], + "publish_rules": [145], + }, + }, + "balrog_use_dummy_suffix": False, +} diff --git a/testing/mozharness/configs/releases/dev_updates_firefox_release_birch.py b/testing/mozharness/configs/releases/dev_updates_firefox_release_birch.py new file mode 100644 index 0000000000..8ea3ebd76a --- /dev/null +++ b/testing/mozharness/configs/releases/dev_updates_firefox_release_birch.py @@ -0,0 +1,55 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "log_name": "updates_release_dev", + # TODO: use real repo + "repo": { + "repo": "https://hg.mozilla.org/users/bhearsum_mozilla.com/tools", + "branch": "default", + "dest": "tools", + "vcs": "hg", + }, + "vcs_share_base": "/builds/hg-shared", + # TODO: use real repo + "push_dest": "ssh://hg.mozilla.org/users/bhearsum_mozilla.com/tools", + # birch repo used for staging release + "shipped-locales-url": "https://hg.mozilla.org/projects/birch/raw-file/{revision}/browser/locales/shipped-locales", + "ignore_no_changes": True, + "ssh_user": "ffxbld", + "ssh_key": "~/.ssh/ffxbld_rsa", + "archive_domain": "ftp.stage.mozaws.net", + "archive_prefix": "https://ftp.stage.mozaws.net/pub", + "previous_archive_prefix": "https://archive.mozilla.org/pub", + "download_domain": "download.mozilla.org", + "balrog_url": "https://stage.balrog.nonprod.cloudops.mozgcp.net/", + "balrog_username": "balrog-stage-ffxbld", + "update_channels": { + "beta": { + "version_regex": r"^(\d+\.\d+(b\d+)?)$", + "requires_mirrors": False, + "patcher_config": "mozBeta-branch-patcher2.cfg", + "update_verify_channel": "beta-localtest", + "mar_channel_ids": [ + "firefox-mozilla-beta", + "firefox-mozilla-release", + ], + "channel_names": ["beta", "beta-localtest", "beta-cdntest"], + "rules_to_update": ["firefox-beta-cdntest", "firefox-beta-localtest"], + "publish_rules": [32], + "schedule_asap": True, + }, + "release": { + "version_regex": r"^\d+\.\d+(\.\d+)?$", + "requires_mirrors": True, + "patcher_config": "mozRelease-branch-patcher2.cfg", + "update_verify_channel": "release-localtest", + "mar_channel_ids": [], + "channel_names": ["release", "release-localtest", "release-cdntest"], + "rules_to_update": ["firefox-release-cdntest", "firefox-release-localtest"], + "publish_rules": [145], + }, + }, + "balrog_use_dummy_suffix": False, +} diff --git a/testing/mozharness/configs/releases/updates_firefox_beta.py b/testing/mozharness/configs/releases/updates_firefox_beta.py new file mode 100644 index 0000000000..8e4bfa9e7d --- /dev/null +++ b/testing/mozharness/configs/releases/updates_firefox_beta.py @@ -0,0 +1,38 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "log_name": "updates_beta", + "repo": { + "repo": "https://hg.mozilla.org/build/tools", + "branch": "default", + "dest": "tools", + "vcs": "hg", + }, + "vcs_share_base": "/builds/hg-shared", + "push_dest": "ssh://hg.mozilla.org/build/tools", + "shipped-locales-url": "https://hg.mozilla.org/releases/mozilla-beta/raw-file/{revision}/browser/locales/shipped-locales", + "ignore_no_changes": True, + "ssh_user": "ffxbld", + "ssh_key": "~/.ssh/ffxbld_rsa", + "archive_domain": "archive.mozilla.org", + "archive_prefix": "https://archive.mozilla.org/pub", + "previous_archive_prefix": "https://archive.mozilla.org/pub", + "download_domain": "download.mozilla.org", + "balrog_url": "https://aus5.mozilla.org", + "balrog_username": "balrog-ffxbld", + "update_channels": { + "beta": { + "version_regex": r"^(\d+\.\d+(b\d+)?)$", + "requires_mirrors": True, + "patcher_config": "mozBeta-branch-patcher2.cfg", + "update_verify_channel": "beta-localtest", + "mar_channel_ids": [], + "channel_names": ["beta", "beta-localtest", "beta-cdntest"], + "rules_to_update": ["firefox-beta-cdntest", "firefox-beta-localtest"], + "publish_rules": [32], + }, + }, + "balrog_use_dummy_suffix": False, +} diff --git a/testing/mozharness/configs/releases/updates_firefox_devedition.py b/testing/mozharness/configs/releases/updates_firefox_devedition.py new file mode 100644 index 0000000000..f09456b624 --- /dev/null +++ b/testing/mozharness/configs/releases/updates_firefox_devedition.py @@ -0,0 +1,42 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "log_name": "updates_devedition", + "repo": { + "repo": "https://hg.mozilla.org/build/tools", + "branch": "default", + "dest": "tools", + "vcs": "hg", + }, + "vcs_share_base": "/builds/hg-shared", + "push_dest": "ssh://hg.mozilla.org/build/tools", + "shipped-locales-url": "https://hg.mozilla.org/releases/mozilla-beta/raw-file/{revision}/browser/locales/shipped-locales", + "ignore_no_changes": True, + "ssh_user": "ffxbld", + "ssh_key": "~/.ssh/ffxbld_rsa", + "archive_domain": "archive.mozilla.org", + "archive_prefix": "https://archive.mozilla.org/pub", + "previous_archive_prefix": "https://archive.mozilla.org/pub", + "download_domain": "download.mozilla.org", + "balrog_url": "https://aus5.mozilla.org", + "balrog_username": "balrog-ffxbld", + "update_channels": { + "aurora": { + "version_regex": r"^.*$", + "requires_mirrors": True, + "patcher_config": "mozDevedition-branch-patcher2.cfg", + # Allow to override the patcher config product name + "patcher_config_product_override": "firefox", + "update_verify_channel": "aurora-localtest", + "mar_channel_ids": [], + "channel_names": ["aurora", "aurora-localtest", "aurora-cdntest"], + "rules_to_update": ["devedition-cdntest", "devedition-localtest"], + "publish_rules": [10], + }, + }, + "balrog_use_dummy_suffix": False, + "stage_product": "devedition", + "bouncer_product": "devedition", +} diff --git a/testing/mozharness/configs/releases/updates_firefox_release.py b/testing/mozharness/configs/releases/updates_firefox_release.py new file mode 100644 index 0000000000..969b4efadc --- /dev/null +++ b/testing/mozharness/configs/releases/updates_firefox_release.py @@ -0,0 +1,52 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "log_name": "updates_release", + "repo": { + "repo": "https://hg.mozilla.org/build/tools", + "branch": "default", + "dest": "tools", + "vcs": "hg", + }, + "vcs_share_base": "/builds/hg-shared", + "push_dest": "ssh://hg.mozilla.org/build/tools", + "shipped-locales-url": "https://hg.mozilla.org/releases/mozilla-release/raw-file/{revision}/browser/locales/shipped-locales", + "ignore_no_changes": True, + "ssh_user": "ffxbld", + "ssh_key": "~/.ssh/ffxbld_rsa", + "archive_domain": "archive.mozilla.org", + "archive_prefix": "https://archive.mozilla.org/pub", + "previous_archive_prefix": "https://archive.mozilla.org/pub", + "download_domain": "download.mozilla.org", + "balrog_url": "https://aus5.mozilla.org", + "balrog_username": "balrog-ffxbld", + "update_channels": { + "beta": { + "version_regex": r"^(\d+\.\d+(b\d+)?)$", + "requires_mirrors": False, + "patcher_config": "mozBeta-branch-patcher2.cfg", + "update_verify_channel": "beta-localtest", + "mar_channel_ids": [ + "firefox-mozilla-beta", + "firefox-mozilla-release", + ], + "channel_names": ["beta", "beta-localtest", "beta-cdntest"], + "rules_to_update": ["firefox-beta-cdntest", "firefox-beta-localtest"], + "publish_rules": [32], + "schedule_asap": True, + }, + "release": { + "version_regex": r"^\d+\.\d+(\.\d+)?$", + "requires_mirrors": True, + "patcher_config": "mozRelease-branch-patcher2.cfg", + "update_verify_channel": "release-localtest", + "mar_channel_ids": [], + "channel_names": ["release", "release-localtest", "release-cdntest"], + "rules_to_update": ["firefox-release-cdntest", "firefox-release-localtest"], + "publish_rules": [145], + }, + }, + "balrog_use_dummy_suffix": False, +} diff --git a/testing/mozharness/configs/remove_executables.py b/testing/mozharness/configs/remove_executables.py new file mode 100644 index 0000000000..1377c5825c --- /dev/null +++ b/testing/mozharness/configs/remove_executables.py @@ -0,0 +1,7 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "exes": {}, +} diff --git a/testing/mozharness/configs/repackage/base.py b/testing/mozharness/configs/repackage/base.py new file mode 100644 index 0000000000..517ddbb2d7 --- /dev/null +++ b/testing/mozharness/configs/repackage/base.py @@ -0,0 +1,13 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "package-name": "firefox", + "installer-tag": "browser/installer/windows/app.tag", + "stub-installer-tag": "browser/installer/windows/stub.tag", + "wsx-stub": "browser/installer/windows/msi/installer.wxs", + "fetch-dir": os.environ.get("MOZ_FETCHES_DIR"), +} diff --git a/testing/mozharness/configs/repackage/linux32_signed.py b/testing/mozharness/configs/repackage/linux32_signed.py new file mode 100644 index 0000000000..adbed9537b --- /dev/null +++ b/testing/mozharness/configs/repackage/linux32_signed.py @@ -0,0 +1,14 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +platform = "linux32" + +config = { + "locale": os.environ.get("LOCALE"), + # ToolTool + "tooltool_cache": os.environ.get("TOOLTOOL_CACHE"), + "run_configure": False, +} diff --git a/testing/mozharness/configs/repackage/linux64_signed.py b/testing/mozharness/configs/repackage/linux64_signed.py new file mode 100644 index 0000000000..d1431456c0 --- /dev/null +++ b/testing/mozharness/configs/repackage/linux64_signed.py @@ -0,0 +1,14 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +platform = "linux64" + +config = { + "locale": os.environ.get("LOCALE"), + # ToolTool + "tooltool_cache": os.environ.get("TOOLTOOL_CACHE"), + "run_configure": False, +} diff --git a/testing/mozharness/configs/repackage/osx_partner.py b/testing/mozharness/configs/repackage/osx_partner.py new file mode 100644 index 0000000000..e8e93c5e8f --- /dev/null +++ b/testing/mozharness/configs/repackage/osx_partner.py @@ -0,0 +1,12 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "src_mozconfig": "browser/config/mozconfigs/macosx64/repack", + "repack_id": os.environ.get("REPACK_ID"), + # ToolTool + "tooltool_cache": os.environ.get("TOOLTOOL_CACHE"), +} diff --git a/testing/mozharness/configs/repackage/osx_signed.py b/testing/mozharness/configs/repackage/osx_signed.py new file mode 100644 index 0000000000..3969ebc70a --- /dev/null +++ b/testing/mozharness/configs/repackage/osx_signed.py @@ -0,0 +1,13 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "src_mozconfig": "browser/config/mozconfigs/macosx64/repack", + "locale": os.environ.get("LOCALE"), + # ToolTool + "tooltool_cache": os.environ.get("TOOLTOOL_CACHE"), + "run_configure": False, +} diff --git a/testing/mozharness/configs/repackage/win32_partner.py b/testing/mozharness/configs/repackage/win32_partner.py new file mode 100644 index 0000000000..375f949c3a --- /dev/null +++ b/testing/mozharness/configs/repackage/win32_partner.py @@ -0,0 +1,15 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +platform = "win32" + +config = { + "repack_id": os.environ.get("REPACK_ID"), + "run_configure": False, + "env": { + "PATH": "%(abs_input_dir)s/upx/bin:%(PATH)s", + }, +} diff --git a/testing/mozharness/configs/repackage/win32_sfx_stub.py b/testing/mozharness/configs/repackage/win32_sfx_stub.py new file mode 100644 index 0000000000..7b098b7281 --- /dev/null +++ b/testing/mozharness/configs/repackage/win32_sfx_stub.py @@ -0,0 +1,7 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "sfx-stub": "other-licenses/7zstub/firefox/7zSD.Win32.sfx", +} diff --git a/testing/mozharness/configs/repackage/win32_signed.py b/testing/mozharness/configs/repackage/win32_signed.py new file mode 100644 index 0000000000..1095a8ff01 --- /dev/null +++ b/testing/mozharness/configs/repackage/win32_signed.py @@ -0,0 +1,15 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +platform = "win32" + +config = { + "locale": os.environ.get("LOCALE"), + "run_configure": False, + "env": { + "PATH": "%(abs_input_dir)s/upx/bin:%(PATH)s", + }, +} diff --git a/testing/mozharness/configs/repackage/win64-aarch64_sfx_stub.py b/testing/mozharness/configs/repackage/win64-aarch64_sfx_stub.py new file mode 100644 index 0000000000..0d8634d3a9 --- /dev/null +++ b/testing/mozharness/configs/repackage/win64-aarch64_sfx_stub.py @@ -0,0 +1,7 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "sfx-stub": "other-licenses/7zstub/firefox/7zSD.ARM64.sfx", +} diff --git a/testing/mozharness/configs/repackage/win64_partner.py b/testing/mozharness/configs/repackage/win64_partner.py new file mode 100644 index 0000000000..d5aa55e728 --- /dev/null +++ b/testing/mozharness/configs/repackage/win64_partner.py @@ -0,0 +1,15 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +platform = "win64" + +config = { + "repack_id": os.environ.get("REPACK_ID"), + "run_configure": False, + "env": { + "PATH": "%(abs_input_dir)s/upx/bin:%(PATH)s", + }, +} diff --git a/testing/mozharness/configs/repackage/win64_signed.py b/testing/mozharness/configs/repackage/win64_signed.py new file mode 100644 index 0000000000..3b0a23ef04 --- /dev/null +++ b/testing/mozharness/configs/repackage/win64_signed.py @@ -0,0 +1,15 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +platform = "win64" + +config = { + "locale": os.environ.get("LOCALE"), + "run_configure": False, + "env": { + "PATH": "%(abs_input_dir)s/upx/bin:%(PATH)s", + }, +} diff --git a/testing/mozharness/configs/servo/mac.py b/testing/mozharness/configs/servo/mac.py new file mode 100644 index 0000000000..6058abdc20 --- /dev/null +++ b/testing/mozharness/configs/servo/mac.py @@ -0,0 +1,7 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "concurrency": 6, +} diff --git a/testing/mozharness/configs/single_locale/devedition.py b/testing/mozharness/configs/single_locale/devedition.py new file mode 100644 index 0000000000..aef519b9d1 --- /dev/null +++ b/testing/mozharness/configs/single_locale/devedition.py @@ -0,0 +1,9 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "app_name": "browser", + "mozconfig_variant": "l10n-mozconfig-devedition", + "locales_dir": "browser/locales", +} diff --git a/testing/mozharness/configs/single_locale/firefox.py b/testing/mozharness/configs/single_locale/firefox.py new file mode 100644 index 0000000000..c679ecebba --- /dev/null +++ b/testing/mozharness/configs/single_locale/firefox.py @@ -0,0 +1,9 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "app_name": "browser", + "mozconfig_variant": "l10n-mozconfig", + "locales_dir": "browser/locales", +} diff --git a/testing/mozharness/configs/single_locale/linux32.py b/testing/mozharness/configs/single_locale/linux32.py new file mode 100644 index 0000000000..1a1d073862 --- /dev/null +++ b/testing/mozharness/configs/single_locale/linux32.py @@ -0,0 +1,11 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "mozconfig_platform": "linux32", + "log_name": "single_locale", + "vcs_share_base": "/builds/hg-shared", + # l10n + "ignore_locales": ["en-US", "ja-JP-mac"], +} diff --git a/testing/mozharness/configs/single_locale/linux64.py b/testing/mozharness/configs/single_locale/linux64.py new file mode 100644 index 0000000000..d54a67b857 --- /dev/null +++ b/testing/mozharness/configs/single_locale/linux64.py @@ -0,0 +1,10 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "mozconfig_platform": "linux64", + "vcs_share_base": "/builds/hg-shared", + # l10n + "ignore_locales": ["en-US", "ja-JP-mac"], +} diff --git a/testing/mozharness/configs/single_locale/macosx64.py b/testing/mozharness/configs/single_locale/macosx64.py new file mode 100644 index 0000000000..07c1f07221 --- /dev/null +++ b/testing/mozharness/configs/single_locale/macosx64.py @@ -0,0 +1,12 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "mozconfig_platform": "macosx64", + "upload_env_extra": { + "MOZ_PKG_PLATFORM": "mac", + }, + # l10n + "ignore_locales": ["en-US", "ja"], +} diff --git a/testing/mozharness/configs/single_locale/tc_android-arm.py b/testing/mozharness/configs/single_locale/tc_android-arm.py new file mode 100644 index 0000000000..85a8ff45f5 --- /dev/null +++ b/testing/mozharness/configs/single_locale/tc_android-arm.py @@ -0,0 +1,35 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "locales_dir": "mobile/android/locales", + "ignore_locales": ["en-US"], + "repack_env": { + "MOZ_OBJDIR": "%(abs_obj_dir)s", + }, + "vcs_share_base": "/builds/hg-shared", + "mozconfig": "src/mobile/android/config/mozconfigs/android-arm/l10n-nightly", + "tooltool_config": { + "manifest": "mobile/android/config/tooltool-manifests/android/releng.manifest", + "output_dir": "%(abs_work_dir)s/src", + }, + "secret_files": [ + { + "filename": "/builds/gls-gapi.data", + "secret_name": "project/releng/gecko/build/level-%(scm-level)s/gls-gapi.data", + "min_scm_level": 1, + }, + { + "filename": "/builds/sb-gapi.data", + "secret_name": "project/releng/gecko/build/level-%(scm-level)s/sb-gapi.data", + "min_scm_level": 1, + }, + { + "filename": "/builds/mozilla-fennec-geoloc-api.key", + "secret_name": "project/releng/gecko/build/level-%(scm-level)s/mozilla-fennec-geoloc-api.key", + "min_scm_level": 2, + "default": "try-build-has-no-secrets", + }, + ], +} diff --git a/testing/mozharness/configs/single_locale/tc_common.py b/testing/mozharness/configs/single_locale/tc_common.py new file mode 100644 index 0000000000..029283b163 --- /dev/null +++ b/testing/mozharness/configs/single_locale/tc_common.py @@ -0,0 +1,11 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "simple_name_move": True, + "vcs_share_base": "/builds/hg-shared", + "upload_env": { + "UPLOAD_PATH": "/builds/worker/artifacts/", + }, +} diff --git a/testing/mozharness/configs/single_locale/tc_linux32.py b/testing/mozharness/configs/single_locale/tc_linux32.py new file mode 100644 index 0000000000..4ae7528473 --- /dev/null +++ b/testing/mozharness/configs/single_locale/tc_linux32.py @@ -0,0 +1,16 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "bootstrap_env": { + "NO_MERCURIAL_SETUP_CHECK": "1", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "EN_US_BINARY_URL": os.environ["EN_US_BINARY_URL"], + "DIST": "%(abs_obj_dir)s", + "L10NBASEDIR": "../../l10n", + "TOOLTOOL_CACHE": os.environ.get("TOOLTOOL_CACHE"), + }, +} diff --git a/testing/mozharness/configs/single_locale/tc_linux_common.py b/testing/mozharness/configs/single_locale/tc_linux_common.py new file mode 100644 index 0000000000..4ae7528473 --- /dev/null +++ b/testing/mozharness/configs/single_locale/tc_linux_common.py @@ -0,0 +1,16 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "bootstrap_env": { + "NO_MERCURIAL_SETUP_CHECK": "1", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "EN_US_BINARY_URL": os.environ["EN_US_BINARY_URL"], + "DIST": "%(abs_obj_dir)s", + "L10NBASEDIR": "../../l10n", + "TOOLTOOL_CACHE": os.environ.get("TOOLTOOL_CACHE"), + }, +} diff --git a/testing/mozharness/configs/single_locale/tc_macosx64.py b/testing/mozharness/configs/single_locale/tc_macosx64.py new file mode 100644 index 0000000000..4ae7528473 --- /dev/null +++ b/testing/mozharness/configs/single_locale/tc_macosx64.py @@ -0,0 +1,16 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "bootstrap_env": { + "NO_MERCURIAL_SETUP_CHECK": "1", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "EN_US_BINARY_URL": os.environ["EN_US_BINARY_URL"], + "DIST": "%(abs_obj_dir)s", + "L10NBASEDIR": "../../l10n", + "TOOLTOOL_CACHE": os.environ.get("TOOLTOOL_CACHE"), + }, +} diff --git a/testing/mozharness/configs/single_locale/tc_win32.py b/testing/mozharness/configs/single_locale/tc_win32.py new file mode 100644 index 0000000000..34bcde89bc --- /dev/null +++ b/testing/mozharness/configs/single_locale/tc_win32.py @@ -0,0 +1,17 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "bootstrap_env": { + "NO_MERCURIAL_SETUP_CHECK": "1", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "EN_US_BINARY_URL": os.environ["EN_US_BINARY_URL"], + "DIST": "%(abs_obj_dir)s", + "L10NBASEDIR": "../../l10n", + "TOOLTOOL_CACHE": os.environ.get("TOOLTOOL_CACHE"), + "EN_US_PACKAGE_NAME": "target.zip", + }, +} diff --git a/testing/mozharness/configs/single_locale/tc_win64.py b/testing/mozharness/configs/single_locale/tc_win64.py new file mode 100644 index 0000000000..34bcde89bc --- /dev/null +++ b/testing/mozharness/configs/single_locale/tc_win64.py @@ -0,0 +1,17 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +config = { + "bootstrap_env": { + "NO_MERCURIAL_SETUP_CHECK": "1", + "MOZ_OBJDIR": "%(abs_obj_dir)s", + "EN_US_BINARY_URL": os.environ["EN_US_BINARY_URL"], + "DIST": "%(abs_obj_dir)s", + "L10NBASEDIR": "../../l10n", + "TOOLTOOL_CACHE": os.environ.get("TOOLTOOL_CACHE"), + "EN_US_PACKAGE_NAME": "target.zip", + }, +} diff --git a/testing/mozharness/configs/single_locale/win32.py b/testing/mozharness/configs/single_locale/win32.py new file mode 100644 index 0000000000..e00275792c --- /dev/null +++ b/testing/mozharness/configs/single_locale/win32.py @@ -0,0 +1,10 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "mozconfig_platform": "win32", + "log_name": "single_locale", + # l10n + "ignore_locales": ["en-US", "ja-JP-mac"], +} diff --git a/testing/mozharness/configs/single_locale/win64-aarch64.py b/testing/mozharness/configs/single_locale/win64-aarch64.py new file mode 100644 index 0000000000..5846f01b89 --- /dev/null +++ b/testing/mozharness/configs/single_locale/win64-aarch64.py @@ -0,0 +1,9 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "mozconfig_platform": "win64-aarch64", + # l10n + "ignore_locales": ["en-US", "ja-JP-mac"], +} diff --git a/testing/mozharness/configs/single_locale/win64.py b/testing/mozharness/configs/single_locale/win64.py new file mode 100644 index 0000000000..a3061add60 --- /dev/null +++ b/testing/mozharness/configs/single_locale/win64.py @@ -0,0 +1,9 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "mozconfig_platform": "win64", + # l10n + "ignore_locales": ["en-US", "ja-JP-mac"], +} diff --git a/testing/mozharness/configs/talos/linux64_config_taskcluster.py b/testing/mozharness/configs/talos/linux64_config_taskcluster.py new file mode 100644 index 0000000000..4fe2861d8f --- /dev/null +++ b/testing/mozharness/configs/talos/linux64_config_taskcluster.py @@ -0,0 +1,32 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os +import sys + +PYTHON = sys.executable +VENV_PATH = "%s/build/venv" % os.getcwd() + +exes = { + "python": PYTHON, +} +ABS_WORK_DIR = os.path.join(os.getcwd(), "build") +INSTALLER_PATH = os.path.join(ABS_WORK_DIR, "installer.tar.bz2") + +config = { + "log_name": "talos", + "installer_path": INSTALLER_PATH, + "virtualenv_path": VENV_PATH, + "exes": exes, + "title": os.uname()[1].lower().split(".")[0], + "default_actions": [ + "clobber", + "download-and-extract", + "populate-webroot", + "create-virtualenv", + "install", + "run-tests", + ], + "tooltool_cache": "/builds/worker/tooltool-cache", +} diff --git a/testing/mozharness/configs/talos/linux_config.py b/testing/mozharness/configs/talos/linux_config.py new file mode 100644 index 0000000000..c26fa4f8e5 --- /dev/null +++ b/testing/mozharness/configs/talos/linux_config.py @@ -0,0 +1,23 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +VENV_PATH = "%s/build/venv" % os.getcwd() + +config = { + "log_name": "talos", + "installer_path": "installer.exe", + "virtualenv_path": VENV_PATH, + "title": os.uname()[1].lower().split(".")[0], + "default_actions": [ + "clobber", + "download-and-extract", + "populate-webroot", + "create-virtualenv", + "install", + "run-tests", + ], + "tooltool_cache": "/builds/tooltool_cache", +} diff --git a/testing/mozharness/configs/talos/mac_config.py b/testing/mozharness/configs/talos/mac_config.py new file mode 100644 index 0000000000..a8a5f9b87d --- /dev/null +++ b/testing/mozharness/configs/talos/mac_config.py @@ -0,0 +1,26 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +VENV_PATH = "%s/build/venv" % os.getcwd() + +config = { + "log_name": "talos", + "installer_path": "installer.exe", + "virtualenv_path": VENV_PATH, + "title": os.uname()[1].lower().split(".")[0], + "default_actions": [ + "clobber", + "download-and-extract", + "populate-webroot", + "create-virtualenv", + "install", + "run-tests", + ], + "run_cmd_checks_enabled": True, + "preflight_run_cmd_suites": [], + "postflight_run_cmd_suites": [], + "tooltool_cache": "/builds/tooltool_cache", +} diff --git a/testing/mozharness/configs/talos/windows_config.py b/testing/mozharness/configs/talos/windows_config.py new file mode 100644 index 0000000000..6511a9a4fc --- /dev/null +++ b/testing/mozharness/configs/talos/windows_config.py @@ -0,0 +1,65 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os +import platform +import socket +import sys + +PYTHON = sys.executable +VENV_PATH = os.path.join(os.getcwd(), "build/venv") + +config = { + "log_name": "talos", + "installer_path": "installer.exe", + "virtualenv_path": VENV_PATH, + "exes": { + "python": PYTHON, + "hg": os.path.join(os.environ["PROGRAMFILES"], "Mercurial", "hg"), + "tooltool.py": [ + PYTHON, + os.path.join(os.environ["MOZILLABUILD"], "tooltool.py"), + ], + }, + "title": socket.gethostname().split(".")[0], + "default_actions": [ + "clobber", + "download-and-extract", + "populate-webroot", + "create-virtualenv", + "install", + "run-tests", + ], + "tooltool_cache": os.path.join("c:\\", "build", "tooltool_cache"), + "run_cmd_checks_enabled": True, + "preflight_run_cmd_suites": [ + { + "name": "run mouse & screen adjustment script", + "cmd": [ + sys.executable, + os.path.join( + os.getcwd(), + "mozharness", + "external_tools", + "mouse_and_screen_resolution.py", + ), + "--configuration-file", + os.path.join( + os.getcwd(), + "mozharness", + "external_tools", + "machine-configuration.json", + ), + "--platform=win10-hw" + if (platform.uname().version == "10.0.19045") + else "--platform=win11-hw" + if (platform.uname().version == "10.0.22621") + else "--platform=win7", + ], + "architectures": ["32bit", "64bit"], + "halt_on_failure": True, + "enabled": True, + } + ], +} diff --git a/testing/mozharness/configs/talos/windows_taskcluster_config.py b/testing/mozharness/configs/talos/windows_taskcluster_config.py new file mode 100644 index 0000000000..d9ab7505ab --- /dev/null +++ b/testing/mozharness/configs/talos/windows_taskcluster_config.py @@ -0,0 +1,28 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os +import socket +import sys + +PYTHON = sys.executable +VENV_PATH = os.path.join(os.getcwd(), "venv") + +config = { + "log_name": "talos", + "installer_path": "installer.exe", + "virtualenv_path": VENV_PATH, + "exes": { + "python": PYTHON, + "hg": os.path.join(os.environ["PROGRAMFILES"], "Mercurial", "hg"), + }, + "title": socket.gethostname().split(".")[0], + "default_actions": [ + "populate-webroot", + "create-virtualenv", + "install", + "run-tests", + ], + "tooltool_cache": os.path.join("Y:\\", "tooltool-cache"), +} diff --git a/testing/mozharness/configs/talos/windows_vm_config.py b/testing/mozharness/configs/talos/windows_vm_config.py new file mode 100644 index 0000000000..3e4f364b3e --- /dev/null +++ b/testing/mozharness/configs/talos/windows_vm_config.py @@ -0,0 +1,30 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os +import socket +import sys + +PYTHON = sys.executable +VENV_PATH = os.path.join(os.getcwd(), "build/venv") + +config = { + "log_name": "talos", + "installer_path": "installer.exe", + "virtualenv_path": VENV_PATH, + "exes": { + "python": PYTHON, + "hg": os.path.join(os.environ["PROGRAMFILES"], "Mercurial", "hg"), + }, + "title": socket.gethostname().split(".")[0], + "default_actions": [ + "clobber", + "download-and-extract", + "populate-webroot", + "create-virtualenv", + "install", + "run-tests", + ], + "tooltool_cache": os.path.join("c:\\", "build", "tooltool_cache"), +} diff --git a/testing/mozharness/configs/taskcluster_nightly.py b/testing/mozharness/configs/taskcluster_nightly.py new file mode 100644 index 0000000000..596bf2f94e --- /dev/null +++ b/testing/mozharness/configs/taskcluster_nightly.py @@ -0,0 +1,8 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +config = { + "nightly_build": True, + "taskcluster_nightly": True, +} diff --git a/testing/mozharness/configs/test/example_config1.json b/testing/mozharness/configs/test/example_config1.json new file mode 100644 index 0000000000..2c8b9d8430 --- /dev/null +++ b/testing/mozharness/configs/test/example_config1.json @@ -0,0 +1,5 @@ +{ + "beverage": "fizzy drink", + "long_sleep_time": 1800, + "random_config_key1": "spectacular" +} diff --git a/testing/mozharness/configs/test/example_config2.py b/testing/mozharness/configs/test/example_config2.py new file mode 100644 index 0000000000..958543b60e --- /dev/null +++ b/testing/mozharness/configs/test/example_config2.py @@ -0,0 +1,5 @@ +config = { + "beverage": "cider", + "long_sleep_time": 300, + "random_config_key2": "wunderbar", +} diff --git a/testing/mozharness/configs/test/test.illegal_suffix b/testing/mozharness/configs/test/test.illegal_suffix new file mode 100644 index 0000000000..7d9a4d96d6 --- /dev/null +++ b/testing/mozharness/configs/test/test.illegal_suffix @@ -0,0 +1,20 @@ +{ + "log_name": "test", + "log_dir": "test_logs", + "log_to_console": false, + "key1": "value1", + "key2": "value2", + "section1": { + + "subsection1": { + "key1": "value1", + "key2": "value2" + }, + + "subsection2": { + "key1": "value1", + "key2": "value2" + } + + } +} diff --git a/testing/mozharness/configs/test/test.json b/testing/mozharness/configs/test/test.json new file mode 100644 index 0000000000..659bcb0704 --- /dev/null +++ b/testing/mozharness/configs/test/test.json @@ -0,0 +1,18 @@ +{ + "log_name": "test", + "log_dir": "test_logs", + "log_to_console": false, + "key1": "value1", + "key2": "value2", + "section1": { + "subsection1": { + "key1": "value1", + "key2": "value2" + }, + + "subsection2": { + "key1": "value1", + "key2": "value2" + } + } +} diff --git a/testing/mozharness/configs/test/test.py b/testing/mozharness/configs/test/test.py new file mode 100644 index 0000000000..d06c2f130a --- /dev/null +++ b/testing/mozharness/configs/test/test.py @@ -0,0 +1,13 @@ +#!/usr/bin/env python +config = { + "log_name": "test", + "log_dir": "test_logs", + "log_to_console": False, + "key1": "value1", + "key2": "value2", + "section1": { + "subsection1": {"key1": "value1", "key2": "value2"}, + "subsection2": {"key1": "value1", "key2": "value2"}, + }, + "opt_override": "some stuff", +} diff --git a/testing/mozharness/configs/test/test_malformed.json b/testing/mozharness/configs/test/test_malformed.json new file mode 100644 index 0000000000..260be45b88 --- /dev/null +++ b/testing/mozharness/configs/test/test_malformed.json @@ -0,0 +1,20 @@ +{ + "log_name": "test", + "log_dir": "test_logs", + "log_to_console": false, + "key1": "value1", + "key2": "value2", + "section1": { + + "subsection1": { + "key1": "value1", + "key2": "value2" + }, + + "subsection2": { + "key1": "value1", + "key2": "value2" + }, + + } +} diff --git a/testing/mozharness/configs/test/test_malformed.py b/testing/mozharness/configs/test/test_malformed.py new file mode 100644 index 0000000000..e7ccefd15f --- /dev/null +++ b/testing/mozharness/configs/test/test_malformed.py @@ -0,0 +1,22 @@ +#!/usr/bin/env python +config = { + "log_name": "test", + "log_dir": "test_logs", + "log_to_console": False, + "key1": "value1", + "key2": "value2", + "section1": { + + "subsection1": { + "key1": "value1", + "key2": "value2" + }, + +a;sldkfjas;dfkljasdf;kjasdf;ljkadsflkjsdfkweoi + "subsection2": { + "key1": "value1", + "key2": "value2" + }, + + }, +} diff --git a/testing/mozharness/configs/test/test_optional.py b/testing/mozharness/configs/test/test_optional.py new file mode 100644 index 0000000000..4eb13b3dfb --- /dev/null +++ b/testing/mozharness/configs/test/test_optional.py @@ -0,0 +1,4 @@ +#!/usr/bin/env python +config = { + "opt_override": "new stuff", +} diff --git a/testing/mozharness/configs/test/test_override.py b/testing/mozharness/configs/test/test_override.py new file mode 100644 index 0000000000..356207d547 --- /dev/null +++ b/testing/mozharness/configs/test/test_override.py @@ -0,0 +1,7 @@ +#!/usr/bin/env python +config = { + "override_string": "TODO", + "override_list": ["to", "do"], + "override_dict": {"to": "do"}, + "keep_string": "don't change me", +} diff --git a/testing/mozharness/configs/test/test_override2.py b/testing/mozharness/configs/test/test_override2.py new file mode 100644 index 0000000000..561a170358 --- /dev/null +++ b/testing/mozharness/configs/test/test_override2.py @@ -0,0 +1,6 @@ +#!/usr/bin/env python +config = { + "override_string": "yay", + "override_list": ["yay", "worked"], + "override_dict": {"yay": "worked"}, +} diff --git a/testing/mozharness/configs/unittests/linux_unittest.py b/testing/mozharness/configs/unittests/linux_unittest.py new file mode 100644 index 0000000000..801f57eb14 --- /dev/null +++ b/testing/mozharness/configs/unittests/linux_unittest.py @@ -0,0 +1,291 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os +import platform + +# OS Specifics +ABS_WORK_DIR = os.path.join(os.getcwd(), "build") +BINARY_PATH = os.path.join(ABS_WORK_DIR, "application", "firefox", "firefox-bin") +INSTALLER_PATH = os.path.join(ABS_WORK_DIR, "installer.tar.bz2") +XPCSHELL_NAME = "xpcshell" +PLUGIN_CONTAINER_NAME = "plugin-container" +HTTP3SERVER_NAME = "http3server" +EXE_SUFFIX = "" +DISABLE_SCREEN_SAVER = True +ADJUST_MOUSE_AND_SCREEN = False + +# Note: keep these Valgrind .sup file names consistent with those +# in testing/mochitest/mochitest_options.py. +VALGRIND_SUPP_DIR = os.path.join(os.getcwd(), "build/tests/mochitest") +NODEJS_PATH = None +if "MOZ_FETCHES_DIR" in os.environ: + NODEJS_PATH = os.path.join(os.environ["MOZ_FETCHES_DIR"], "node/bin/node") + +VALGRIND_SUPP_CROSS_ARCH = os.path.join(VALGRIND_SUPP_DIR, "cross-architecture.sup") +VALGRIND_SUPP_ARCH = None + +if platform.architecture()[0] == "64bit": + VALGRIND_SUPP_ARCH = os.path.join(VALGRIND_SUPP_DIR, "x86_64-pc-linux-gnu.sup") +else: + VALGRIND_SUPP_ARCH = os.path.join(VALGRIND_SUPP_DIR, "i386-pc-linux-gnu.sup") + +##### +config = { + ### + "virtualenv_modules": ["six==1.13.0", "vcversioner==2.16.0.0"], + "installer_path": INSTALLER_PATH, + "binary_path": BINARY_PATH, + "xpcshell_name": XPCSHELL_NAME, + "plugin_container_name": PLUGIN_CONTAINER_NAME, + "http3server_name": HTTP3SERVER_NAME, + "exe_suffix": EXE_SUFFIX, + "run_file_names": { + "mochitest": "runtests.py", + "reftest": "runreftest.py", + "xpcshell": "runxpcshelltests.py", + "cppunittest": "runcppunittests.py", + "gtest": "rungtests.py", + "jittest": "jit_test.py", + }, + "minimum_tests_zip_dirs": [ + "bin/*", + "certs/*", + "config/*", + "mach", + "marionette/*", + "modules/*", + "mozbase/*", + "tools/*", + "mozpack/*", + "mozbuild/*", + ], + "suite_definitions": { + "cppunittest": { + "options": [ + "--symbols-path=%(symbols_path)s", + "--utility-path=tests/bin", + "--xre-path=%(abs_app_dir)s", + ], + "run_filename": "runcppunittests.py", + "testsdir": "cppunittest", + }, + "jittest": { + "options": [ + "tests/bin/js", + "--no-slow", + "--no-progress", + "--format=automation", + "--jitflags=all", + "--timeout=970", # Keep in sync with run_timeout below. + ], + "run_filename": "jit_test.py", + "testsdir": "jit-test/jit-test", + "run_timeout": 1000, # Keep in sync with --timeout above. + }, + "mochitest": { + "options": [ + "--appname=%(binary_path)s", + "--utility-path=tests/bin", + "--extra-profile-file=tests/bin/plugins", + "--symbols-path=%(symbols_path)s", + "--certificate-path=tests/certs", + "--setpref=webgl.force-enabled=true", + "--quiet", + "--log-errorsummary=%(error_summary_file)s", + "--use-test-media-devices", + "--screenshot-on-fail", + "--cleanup-crashes", + "--marionette-startup-timeout=180", + "--sandbox-read-whitelist=%(abs_work_dir)s", + ], + "run_filename": "runtests.py", + "testsdir": "mochitest", + }, + "reftest": { + "options": [ + "--appname=%(binary_path)s", + "--utility-path=tests/bin", + "--extra-profile-file=tests/bin/plugins", + "--symbols-path=%(symbols_path)s", + "--log-errorsummary=%(error_summary_file)s", + "--cleanup-crashes", + "--marionette-startup-timeout=180", + "--sandbox-read-whitelist=%(abs_work_dir)s", + ], + "run_filename": "runreftest.py", + "testsdir": "reftest", + }, + "xpcshell": { + "options": [ + "--self-test", + "--symbols-path=%(symbols_path)s", + "--log-errorsummary=%(error_summary_file)s", + "--utility-path=tests/bin", + ], + "run_filename": "runxpcshelltests.py", + "testsdir": "xpcshell", + }, + "gtest": { + "options": [ + "--xre-path=%(abs_res_dir)s", + "--cwd=%(gtest_dir)s", + "--symbols-path=%(symbols_path)s", + "--utility-path=tests/bin", + "%(binary_path)s", + ], + "run_filename": "rungtests.py", + }, + }, + # local mochi suites + "all_mochitest_suites": { + "mochitest-valgrind-plain": [ + "--valgrind=/usr/bin/valgrind", + "--valgrind-supp-files=" + + VALGRIND_SUPP_ARCH + + "," + + VALGRIND_SUPP_CROSS_ARCH, + "--timeout=900", + "--max-timeouts=50", + ], + "mochitest-plain": ["--chunk-by-dir=4"], + "mochitest-plain-gpu": ["--subsuite=gpu"], + "mochitest-plain-coverage": ["--chunk-by-dir=4", "--timeout=1200"], + "mochitest-media": ["--subsuite=media"], + "mochitest-chrome": ["--flavor=chrome", "--chunk-by-dir=4", "--disable-e10s"], + "mochitest-chrome-gpu": ["--flavor=chrome", "--subsuite=gpu", "--disable-e10s"], + "mochitest-browser-chrome": ["--flavor=browser", "--chunk-by-runtime"], + "mochitest-browser-chrome-coverage": [ + "--flavor=browser", + "--chunk-by-runtime", + "--timeout=1200", + ], + "mochitest-browser-screenshots": [ + "--flavor=browser", + "--subsuite=screenshots", + ], + "mochitest-webgl1-core": ["--subsuite=webgl1-core"], + "mochitest-webgl1-ext": ["--subsuite=webgl1-ext"], + "mochitest-webgl2-core": ["--subsuite=webgl2-core"], + "mochitest-webgl2-ext": ["--subsuite=webgl2-ext"], + "mochitest-webgl2-deqp": ["--subsuite=webgl2-deqp"], + "mochitest-webgpu": ["--subsuite=webgpu"], + "mochitest-devtools-chrome": [ + "--flavor=browser", + "--subsuite=devtools", + "--chunk-by-runtime", + ], + "mochitest-devtools-chrome-coverage": [ + "--flavor=browser", + "--subsuite=devtools", + "--chunk-by-runtime", + "--timeout=1200", + ], + "mochitest-browser-a11y": ["--flavor=browser", "--subsuite=a11y"], + "mochitest-browser-media": ["--flavor=browser", "--subsuite=media-bc"], + "mochitest-a11y": ["--flavor=a11y", "--disable-e10s"], + "mochitest-remote": ["--flavor=browser", "--subsuite=remote"], + }, + # local reftest suites + "all_reftest_suites": { + "crashtest": { + "options": ["--suite=crashtest", "--topsrcdir=tests/reftest/tests"], + "tests": ["tests/reftest/tests/testing/crashtest/crashtests.list"], + }, + "jsreftest": { + "options": [ + "--extra-profile-file=tests/jsreftest/tests/js/src/tests/user.js", + "--suite=jstestbrowser", + "--topsrcdir=tests/jsreftest/tests", + ], + "tests": ["tests/jsreftest/tests/js/src/tests/jstests.list"], + }, + "reftest": { + "options": [ + "--suite=reftest", + "--setpref=layers.acceleration.force-enabled=true", + "--topsrcdir=tests/reftest/tests", + ], + "tests": ["tests/reftest/tests/layout/reftests/reftest.list"], + }, + "reftest-no-accel": { + "options": [ + "--suite=reftest", + "--setpref=layers.acceleration.disabled=true", + "--topsrcdir=tests/reftest/tests", + ], + "tests": ["tests/reftest/tests/layout/reftests/reftest.list"], + }, + "reftest-snapshot": { + "options": [ + "--suite=reftest", + "--setpref=reftest.use-draw-snapshot=true", + "--topsrcdir=tests/reftest/tests", + ], + "tests": ["tests/reftest/tests/layout/reftests/reftest.list"], + }, + }, + "all_xpcshell_suites": { + "xpcshell": { + "options": [ + "--xpcshell=%(abs_app_dir)s/" + XPCSHELL_NAME, + "--http3server=%(abs_app_dir)s/" + HTTP3SERVER_NAME, + "--manifest=tests/xpcshell/tests/xpcshell.toml", + ], + "tests": [], + }, + "xpcshell-coverage": { + "options": [ + "--xpcshell=%(abs_app_dir)s/" + XPCSHELL_NAME, + "--http3server=%(abs_app_dir)s/" + HTTP3SERVER_NAME, + "--manifest=tests/xpcshell/tests/xpcshell.toml", + "--sequential", + ], + "tests": [], + }, + }, + "all_cppunittest_suites": {"cppunittest": {"tests": ["tests/cppunittest"]}}, + "all_gtest_suites": {"gtest": []}, + "all_jittest_suites": { + "jittest": [], + "jittest1": ["--total-chunks=2", "--this-chunk=1"], + "jittest2": ["--total-chunks=2", "--this-chunk=2"], + }, + "run_cmd_checks_enabled": True, + "preflight_run_cmd_suites": [ + # NOTE 'enabled' is only here while we have unconsolidated configs + { + "name": "disable_screen_saver", + "cmd": ["xset", "s", "off", "s", "reset"], + "halt_on_failure": False, + "architectures": ["32bit", "64bit"], + "enabled": DISABLE_SCREEN_SAVER, + }, + { + "name": "run mouse & screen adjustment script", + "cmd": [ + # when configs are consolidated this python path will only show + # for windows. + "python", + "../scripts/external_tools/mouse_and_screen_resolution.py", + "--configuration-file", + "../scripts/external_tools/machine-configuration.json", + ], + "architectures": ["32bit"], + "halt_on_failure": True, + "enabled": ADJUST_MOUSE_AND_SCREEN, + }, + ], + "vcs_output_timeout": 1000, + "minidump_save_path": "%(abs_work_dir)s/../minidumps", + "unstructured_flavors": { + "xpcshell": [], + "gtest": [], + "cppunittest": [], + "jittest": [], + }, + "tooltool_cache": "/builds/worker/tooltool-cache", + "nodejs_path": NODEJS_PATH, + # "log_format": "%(levelname)8s - %(message)s", +} diff --git a/testing/mozharness/configs/unittests/mac_unittest.py b/testing/mozharness/configs/unittests/mac_unittest.py new file mode 100644 index 0000000000..63c0922f82 --- /dev/null +++ b/testing/mozharness/configs/unittests/mac_unittest.py @@ -0,0 +1,228 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os + +# OS Specifics +INSTALLER_PATH = os.path.join(os.getcwd(), "installer.dmg") +NODEJS_PATH = None +if "MOZ_FETCHES_DIR" in os.environ: + NODEJS_PATH = os.path.join(os.environ["MOZ_FETCHES_DIR"], "node/bin/node") + +XPCSHELL_NAME = "xpcshell" +HTTP3SERVER_NAME = "http3server" +EXE_SUFFIX = "" +DISABLE_SCREEN_SAVER = False +ADJUST_MOUSE_AND_SCREEN = False +##### +config = { + "virtualenv_modules": ["six==1.13.0", "vcversioner==2.16.0.0"], + ### + "installer_path": INSTALLER_PATH, + "xpcshell_name": XPCSHELL_NAME, + "http3server_name": HTTP3SERVER_NAME, + "exe_suffix": EXE_SUFFIX, + "run_file_names": { + "mochitest": "runtests.py", + "reftest": "runreftest.py", + "xpcshell": "runxpcshelltests.py", + "cppunittest": "runcppunittests.py", + "gtest": "rungtests.py", + "jittest": "jit_test.py", + }, + "minimum_tests_zip_dirs": [ + "bin/*", + "certs/*", + "config/*", + "mach", + "marionette/*", + "modules/*", + "mozbase/*", + "tools/*", + ], + "suite_definitions": { + "cppunittest": { + "options": [ + "--symbols-path=%(symbols_path)s", + "--utility-path=tests/bin", + "--xre-path=%(abs_res_dir)s", + ], + "run_filename": "runcppunittests.py", + "testsdir": "cppunittest", + }, + "jittest": { + "options": [ + "tests/bin/js", + "--no-slow", + "--no-progress", + "--format=automation", + "--jitflags=all", + "--timeout=970", # Keep in sync with run_timeout below. + ], + "run_filename": "jit_test.py", + "testsdir": "jit-test/jit-test", + "run_timeout": 1000, # Keep in sync with --timeout above. + }, + "mochitest": { + "options": [ + "--appname=%(binary_path)s", + "--utility-path=tests/bin", + "--extra-profile-file=tests/bin/plugins", + "--symbols-path=%(symbols_path)s", + "--certificate-path=tests/certs", + "--quiet", + "--log-errorsummary=%(error_summary_file)s", + "--screenshot-on-fail", + "--cleanup-crashes", + "--marionette-startup-timeout=180", + "--sandbox-read-whitelist=%(abs_work_dir)s", + ], + "run_filename": "runtests.py", + "testsdir": "mochitest", + }, + "reftest": { + "options": [ + "--appname=%(binary_path)s", + "--utility-path=tests/bin", + "--extra-profile-file=tests/bin/plugins", + "--symbols-path=%(symbols_path)s", + "--log-errorsummary=%(error_summary_file)s", + "--cleanup-crashes", + "--marionette-startup-timeout=180", + "--sandbox-read-whitelist=%(abs_work_dir)s", + ], + "run_filename": "runreftest.py", + "testsdir": "reftest", + }, + "xpcshell": { + "options": [ + "--self-test", + "--symbols-path=%(symbols_path)s", + "--log-errorsummary=%(error_summary_file)s", + "--utility-path=tests/bin", + ], + "run_filename": "runxpcshelltests.py", + "testsdir": "xpcshell", + }, + "gtest": { + "options": [ + "--xre-path=%(abs_res_dir)s", + "--cwd=%(gtest_dir)s", + "--symbols-path=%(symbols_path)s", + "--utility-path=tests/bin", + "%(binary_path)s", + ], + "run_filename": "rungtests.py", + }, + }, + # local mochi suites + "all_mochitest_suites": { + "mochitest-plain": ["--chunk-by-dir=4"], + "mochitest-plain-gpu": ["--subsuite=gpu"], + "mochitest-media": ["--subsuite=media"], + "mochitest-chrome": ["--flavor=chrome", "--chunk-by-dir=4", "--disable-e10s"], + "mochitest-chrome-gpu": ["--flavor=chrome", "--subsuite=gpu", "--disable-e10s"], + "mochitest-browser-chrome": ["--flavor=browser", "--chunk-by-runtime"], + "mochitest-browser-screenshots": [ + "--flavor=browser", + "--subsuite=screenshots", + ], + "mochitest-webgl1-core": ["--subsuite=webgl1-core"], + "mochitest-webgl1-ext": ["--subsuite=webgl1-ext"], + "mochitest-webgl2-core": ["--subsuite=webgl2-core"], + "mochitest-webgl2-ext": ["--subsuite=webgl2-ext"], + "mochitest-webgl2-deqp": ["--subsuite=webgl2-deqp"], + "mochitest-webgpu": ["--subsuite=webgpu"], + "mochitest-devtools-chrome": [ + "--flavor=browser", + "--subsuite=devtools", + "--chunk-by-runtime", + ], + "mochitest-browser-a11y": ["--flavor=browser", "--subsuite=a11y"], + "mochitest-browser-media": ["--flavor=browser", "--subsuite=media-bc"], + "mochitest-a11y": ["--flavor=a11y", "--disable-e10s"], + "mochitest-remote": ["--flavor=browser", "--subsuite=remote"], + }, + # local reftest suites + "all_reftest_suites": { + "crashtest": { + "options": ["--suite=crashtest", "--topsrcdir=tests/reftest/tests"], + "tests": ["tests/reftest/tests/testing/crashtest/crashtests.list"], + }, + "jsreftest": { + "options": [ + "--extra-profile-file=tests/jsreftest/tests/js/src/tests/user.js", + "--suite=jstestbrowser", + "--topsrcdir=tests/jsreftest/tests", + ], + "tests": ["tests/jsreftest/tests/js/src/tests/jstests.list"], + }, + "reftest": { + "options": ["--suite=reftest", "--topsrcdir=tests/reftest/tests"], + "tests": ["tests/reftest/tests/layout/reftests/reftest.list"], + }, + }, + "all_xpcshell_suites": { + "xpcshell": { + "options": [ + "--xpcshell=%(abs_app_dir)s/" + XPCSHELL_NAME, + "--http3server=%(abs_app_dir)s/" + HTTP3SERVER_NAME, + "--manifest=tests/xpcshell/tests/xpcshell.toml", + ], + "tests": [], + }, + }, + "all_cppunittest_suites": {"cppunittest": ["tests/cppunittest"]}, + "all_gtest_suites": {"gtest": []}, + "all_jittest_suites": {"jittest": [], "jittest-chunked": []}, + "run_cmd_checks_enabled": True, + "preflight_run_cmd_suites": [ + # NOTE 'enabled' is only here while we have unconsolidated configs + { + "name": "disable_screen_saver", + "cmd": ["xset", "s", "off", "s", "reset"], + "architectures": ["32bit", "64bit"], + "halt_on_failure": False, + "enabled": DISABLE_SCREEN_SAVER, + }, + { + "name": "disable_dock", + "cmd": ["defaults", "write", "com.apple.dock", "autohide", "-bool", "true"], + "architectures": ["64bit"], + "halt_on_failure": True, + "enabled": True, + }, + { + "name": "kill_dock", + "cmd": ["killall", "Dock"], + "architectures": ["64bit"], + "halt_on_failure": True, + "enabled": True, + }, + { + "name": "run mouse & screen adjustment script", + "cmd": [ + # when configs are consolidated this python path will only show + # for windows. + "python", + "../scripts/external_tools/mouse_and_screen_resolution.py", + "--configuration-file", + "../scripts/external_tools/machine-configuration.json", + ], + "architectures": ["32bit"], + "halt_on_failure": True, + "enabled": ADJUST_MOUSE_AND_SCREEN, + }, + ], + "vcs_output_timeout": 1000, + "minidump_save_path": "%(abs_work_dir)s/../minidumps", + "unstructured_flavors": { + "xpcshell": [], + "gtest": [], + "cppunittest": [], + "jittest": [], + }, + "tooltool_cache": "/builds/tooltool_cache", + "nodejs_path": NODEJS_PATH, +} diff --git a/testing/mozharness/configs/unittests/win_unittest.py b/testing/mozharness/configs/unittests/win_unittest.py new file mode 100644 index 0000000000..d34acbeca6 --- /dev/null +++ b/testing/mozharness/configs/unittests/win_unittest.py @@ -0,0 +1,338 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +import os +import platform +import sys + +# OS Specifics +ABS_WORK_DIR = os.path.join(os.getcwd(), "build") +BINARY_PATH = os.path.join(ABS_WORK_DIR, "firefox", "firefox.exe") +INSTALLER_PATH = os.path.join(ABS_WORK_DIR, "installer.zip") +NODEJS_PATH = None +if "MOZ_FETCHES_DIR" in os.environ: + NODEJS_PATH = os.path.join(os.environ["MOZ_FETCHES_DIR"], "node/node.exe") + +REQUIRE_GPU = False +if "REQUIRE_GPU" in os.environ: + REQUIRE_GPU = os.environ["REQUIRE_GPU"] == "1" + +PYWIN32 = "pywin32==306" + +XPCSHELL_NAME = "xpcshell.exe" +EXE_SUFFIX = ".exe" +DISABLE_SCREEN_SAVER = False +ADJUST_MOUSE_AND_SCREEN = True +DESKTOP_VISUALFX_THEME = { + "Let Windows choose": 0, + "Best appearance": 1, + "Best performance": 2, + "Custom": 3, +}.get("Best appearance") +TASKBAR_AUTOHIDE_REG_PATH = { + "Windows 7": r"HKCU:SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\StuckRects2", + "Windows 10": r"HKCU:SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\StuckRects3", +}.get("{} {}".format(platform.system(), platform.release())) +##### +config = { + "exes": { + "python": sys.executable, + "hg": os.path.join(os.environ.get("PROGRAMFILES", ""), "Mercurial", "hg"), + }, + ### + "installer_path": INSTALLER_PATH, + "binary_path": BINARY_PATH, + "xpcshell_name": XPCSHELL_NAME, + "virtualenv_modules": [PYWIN32, "six==1.13.0", "vcversioner==2.16.0.0"], + "virtualenv_path": "venv", + "exe_suffix": EXE_SUFFIX, + "run_file_names": { + "mochitest": "runtests.py", + "reftest": "runreftest.py", + "xpcshell": "runxpcshelltests.py", + "cppunittest": "runcppunittests.py", + "gtest": "rungtests.py", + "jittest": "jit_test.py", + }, + "minimum_tests_zip_dirs": [ + "bin/*", + "certs/*", + "config/*", + "mach", + "marionette/*", + "modules/*", + "mozbase/*", + "tools/*", + "mozpack/*", + "mozbuild/*", + ], + "suite_definitions": { + "cppunittest": { + "options": [ + "--symbols-path=%(symbols_path)s", + "--utility-path=tests/bin", + "--xre-path=%(abs_app_dir)s", + ], + "run_filename": "runcppunittests.py", + "testsdir": "cppunittest", + }, + "jittest": { + "options": [ + "tests/bin/js", + "--no-slow", + "--no-progress", + "--format=automation", + "--jitflags=all", + "--timeout=970", # Keep in sync with run_timeout below. + ], + "run_filename": "jit_test.py", + "testsdir": "jit-test/jit-test", + "run_timeout": 1000, # Keep in sync with --timeout above. + }, + "mochitest": { + "options": [ + "--appname=%(binary_path)s", + "--utility-path=tests/bin", + "--extra-profile-file=tests/bin/plugins", + "--symbols-path=%(symbols_path)s", + "--certificate-path=tests/certs", + "--quiet", + "--log-errorsummary=%(error_summary_file)s", + "--screenshot-on-fail", + "--cleanup-crashes", + "--marionette-startup-timeout=180", + ], + "run_filename": "runtests.py", + "testsdir": "mochitest", + }, + "reftest": { + "options": [ + "--appname=%(binary_path)s", + "--utility-path=tests/bin", + "--extra-profile-file=tests/bin/plugins", + "--symbols-path=%(symbols_path)s", + "--log-errorsummary=%(error_summary_file)s", + "--cleanup-crashes", + "--marionette-startup-timeout=180", + "--sandbox-read-whitelist=%(abs_work_dir)s", + ], + "run_filename": "runreftest.py", + "testsdir": "reftest", + }, + "xpcshell": { + "options": [ + "--self-test", + "--symbols-path=%(symbols_path)s", + "--log-errorsummary=%(error_summary_file)s", + "--utility-path=tests/bin", + "--manifest=tests/xpcshell/tests/xpcshell.toml", + ], + "run_filename": "runxpcshelltests.py", + "testsdir": "xpcshell", + }, + "gtest": { + "options": [ + "--xre-path=%(abs_res_dir)s", + "--cwd=%(gtest_dir)s", + "--symbols-path=%(symbols_path)s", + "--utility-path=tests/bin", + "%(binary_path)s", + ], + "run_filename": "rungtests.py", + }, + }, + # local mochi suites + "all_mochitest_suites": { + "mochitest-plain": ["--chunk-by-dir=4"], + "mochitest-plain-gpu": ["--subsuite=gpu"], + "mochitest-media": ["--subsuite=media"], + "mochitest-chrome": ["--flavor=chrome", "--chunk-by-dir=4", "--disable-e10s"], + "mochitest-chrome-gpu": ["--flavor=chrome", "--subsuite=gpu", "--disable-e10s"], + "mochitest-browser-chrome": ["--flavor=browser", "--chunk-by-runtime"], + "mochitest-browser-screenshots": [ + "--flavor=browser", + "--subsuite=screenshots", + ], + "mochitest-webgl1-core": ["--subsuite=webgl1-core"], + "mochitest-webgl1-ext": ["--subsuite=webgl1-ext"], + "mochitest-webgl2-core": ["--subsuite=webgl2-core"], + "mochitest-webgl2-ext": ["--subsuite=webgl2-ext"], + "mochitest-webgl2-deqp": ["--subsuite=webgl2-deqp"], + "mochitest-webgpu": ["--subsuite=webgpu"], + "mochitest-devtools-chrome": [ + "--flavor=browser", + "--subsuite=devtools", + "--chunk-by-runtime", + ], + "mochitest-browser-a11y": ["--flavor=browser", "--subsuite=a11y"], + "mochitest-browser-media": ["--flavor=browser", "--subsuite=media-bc"], + "mochitest-a11y": ["--flavor=a11y", "--disable-e10s"], + "mochitest-remote": ["--flavor=browser", "--subsuite=remote"], + }, + # local reftest suites + "all_reftest_suites": { + "crashtest": { + "options": ["--suite=crashtest", "--topsrcdir=tests/reftest/tests"], + "tests": ["tests/reftest/tests/testing/crashtest/crashtests.list"], + }, + "jsreftest": { + "options": [ + "--extra-profile-file=tests/jsreftest/tests/js/src/tests/user.js", + "--suite=jstestbrowser", + "--topsrcdir=tests/jsreftest/tests", + ], + "tests": ["tests/jsreftest/tests/js/src/tests/jstests.list"], + }, + "reftest": { + "options": ["--suite=reftest", "--topsrcdir=tests/reftest/tests"], + "tests": ["tests/reftest/tests/layout/reftests/reftest.list"], + }, + "reftest-no-accel": { + "options": [ + "--suite=reftest", + "--setpref=layers.acceleration.disabled=true", + "--topsrcdir=tests/reftest/tests", + ], + "tests": ["tests/reftest/tests/layout/reftests/reftest.list"], + }, + }, + "all_xpcshell_suites": { + "xpcshell": { + "options": [ + "--xpcshell=%(abs_app_dir)s/" + XPCSHELL_NAME, + ], + "tests": [], + }, + "xpcshell-msix": { + "options": [ + "--app-binary=%(binary_path)s", + "--app-path=%(install_dir)s", + "--xre-path=%(install_dir)s", + ], + "tests": [], + }, + }, + "all_cppunittest_suites": {"cppunittest": ["tests/cppunittest"]}, + "all_gtest_suites": {"gtest": []}, + "all_jittest_suites": { + "jittest": [], + "jittest-chunked": [], + }, + "run_cmd_checks_enabled": True, + "preflight_run_cmd_suites": [ + { + "name": "disable_screen_saver", + "cmd": ["xset", "s", "off", "s", "reset"], + "architectures": ["32bit", "64bit"], + "halt_on_failure": False, + "enabled": DISABLE_SCREEN_SAVER, + }, + { + "name": "run mouse & screen adjustment script", + "cmd": [ + sys.executable, + os.path.join( + os.getcwd(), + "mozharness", + "external_tools", + "mouse_and_screen_resolution.py", + ), + "--configuration-file", + os.path.join( + os.getcwd(), + "mozharness", + "external_tools", + "machine-configuration.json", + ), + "--platform=win10-vm" + if REQUIRE_GPU and (platform.uname().version == "10.0.19045") + else "--platform=win11-hw" + if REQUIRE_GPU and (platform.uname().version == "10.0.22621") + else "--platform=win7", + ], + "architectures": ["32bit", "64bit"], + "halt_on_failure": True, + "enabled": ADJUST_MOUSE_AND_SCREEN, + }, + { + "name": "disable windows security and maintenance notifications", + "cmd": [ + "powershell", + "-command", + "\"&{$p='HKCU:SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Notifications\\Settings\\Windows.SystemToast.SecurityAndMaintenance';if(!(Test-Path -Path $p)){&New-Item -Path $p -Force}&Set-ItemProperty -Path $p -Name Enabled -Value 0}\"", # noqa + ], + "architectures": ["32bit", "64bit"], + "halt_on_failure": True, + "enabled": (platform.release() == "10"), + }, + { + "name": "set windows VisualFX", + "cmd": [ + "powershell", + "-command", + "\"&{{&Set-ItemProperty -Path 'HKCU:Software\\Microsoft\\Windows\\CurrentVersion\\Explorer\\VisualEffects' -Name VisualFXSetting -Value {}}}\"".format( + DESKTOP_VISUALFX_THEME + ), + ], + "architectures": ["32bit", "64bit"], + "halt_on_failure": True, + "enabled": True, + }, + { + "name": "create scrollbars always show key", + "cmd": [ + "powershell", + "-command", + "New-ItemProperty -Path 'HKCU:\\Control Panel\\Accessibility' -Name 'DynamicScrollbars' -Value 0", + ], + "architectures": ["32bit", "64bit"], + "halt_on_failure": False, + "enabled": True, + }, + { + "name": "hide windows taskbar", + "cmd": [ + "powershell", + "-command", + "\"&{{$p='{}';$v=(Get-ItemProperty -Path $p).Settings;$v[8]=3;&Set-ItemProperty -Path $p -Name Settings -Value $v}}\"".format( + TASKBAR_AUTOHIDE_REG_PATH + ), + ], + "architectures": ["32bit", "64bit"], + "halt_on_failure": True, + "enabled": True, + }, + { + "name": "restart windows explorer", + "cmd": [ + "powershell", + "-command", + '"&{&Stop-Process -ProcessName explorer}"', + ], + "architectures": ["32bit", "64bit"], + "halt_on_failure": True, + "enabled": True, + }, + { + "name": "prepare chrome profile", + "cmd": [ + "powershell", + "-command", + "if (test-path ${env:ProgramFiles(x86)}\\Google\\Chrome\\Application\\chrome.exe) {start chrome; Start-Sleep -s 30; taskkill /F /IM chrome.exe /T}", + ], + "architectures": ["32bit", "64bit"], + "halt_on_failure": True, + "enabled": True, + }, + ], + "vcs_output_timeout": 1000, + "minidump_save_path": "%(abs_work_dir)s/../minidumps", + "unstructured_flavors": { + "xpcshell": [], + "gtest": [], + "cppunittest": [], + "jittest": [], + }, + "nodejs_path": NODEJS_PATH, +} diff --git a/testing/mozharness/configs/web_platform_tests/prod_config.py b/testing/mozharness/configs/web_platform_tests/prod_config.py new file mode 100644 index 0000000000..ee3f192b68 --- /dev/null +++ b/testing/mozharness/configs/web_platform_tests/prod_config.py @@ -0,0 +1,50 @@ +# ***** BEGIN LICENSE BLOCK ***** +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this file, +# You can obtain one at http://mozilla.org/MPL/2.0/. +# ***** END LICENSE BLOCK ***** + +import os + +# OS Specifics +DISABLE_SCREEN_SAVER = True +ADJUST_MOUSE_AND_SCREEN = False +##### + +config = { + "options": [ + "--prefs-root=%(test_path)s/prefs", + "--config=%(test_path)s/wptrunner.ini", + "--ca-cert-path=%(test_path)s/tests/tools/certs/cacert.pem", + "--host-key-path=%(test_path)s/tests/tools/certs/web-platform.test.key", + "--host-cert-path=%(test_path)s/tests/tools/certs/web-platform.test.pem", + "--certutil-binary=%(test_install_path)s/bin/certutil", + ], + "geckodriver": os.path.join("%(abs_fetches_dir)s", "geckodriver"), + "per_test_category": "web-platform", + "run_cmd_checks_enabled": True, + "preflight_run_cmd_suites": [ + # NOTE 'enabled' is only here while we have unconsolidated configs + { + "name": "disable_screen_saver", + "cmd": ["xset", "s", "off", "s", "reset"], + "halt_on_failure": False, + "architectures": ["32bit", "64bit"], + "enabled": DISABLE_SCREEN_SAVER, + }, + { + "name": "run mouse & screen adjustment script", + "cmd": [ + # when configs are consolidated this python path will only show + # for windows. + "python", + "../scripts/external_tools/mouse_and_screen_resolution.py", + "--configuration-file", + "../scripts/external_tools/machine-configuration.json", + ], + "architectures": ["32bit"], + "halt_on_failure": True, + "enabled": ADJUST_MOUSE_AND_SCREEN, + }, + ], +} diff --git a/testing/mozharness/configs/web_platform_tests/prod_config_android.py b/testing/mozharness/configs/web_platform_tests/prod_config_android.py new file mode 100644 index 0000000000..f1644d26fd --- /dev/null +++ b/testing/mozharness/configs/web_platform_tests/prod_config_android.py @@ -0,0 +1,25 @@ +# ***** BEGIN LICENSE BLOCK ***** +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this file, +# You can obtain one at http://mozilla.org/MPL/2.0/. +# ***** END LICENSE BLOCK ***** +import os + +config = { + "options": [ + "--prefs-root=%(test_path)s/prefs", + "--config=%(test_path)s/wptrunner.ini", + "--ca-cert-path=%(test_path)s/tests/tools/certs/cacert.pem", + "--host-key-path=%(test_path)s/tests/tools/certs/web-platform.test.key", + "--host-cert-path=%(test_path)s/tests/tools/certs/web-platform.test.pem", + "--certutil-binary=%(xre_path)s/certutil", + "--product=firefox_android", + ], + "binary_path": "/tmp", + "geckodriver": "%(abs_fetches_dir)s/geckodriver", + "hostutils_manifest_path": "testing/config/tooltool-manifests/linux64/hostutils.manifest", + "log_tbpl_level": "info", + "log_raw_level": "info", + "per_test_category": "web-platform", + "tooltool_cache": os.environ.get("TOOLTOOL_CACHE"), +} diff --git a/testing/mozharness/configs/web_platform_tests/prod_config_mac.py b/testing/mozharness/configs/web_platform_tests/prod_config_mac.py new file mode 100644 index 0000000000..17a0133003 --- /dev/null +++ b/testing/mozharness/configs/web_platform_tests/prod_config_mac.py @@ -0,0 +1,50 @@ +# ***** BEGIN LICENSE BLOCK ***** +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this file, +# You can obtain one at http://mozilla.org/MPL/2.0/. +# ***** END LICENSE BLOCK ***** + +import os + +# OS Specifics +DISABLE_SCREEN_SAVER = False +ADJUST_MOUSE_AND_SCREEN = False +##### + +config = { + "options": [ + "--prefs-root=%(test_path)s/prefs", + "--config=%(test_path)s/wptrunner.ini", + "--ca-cert-path=%(test_path)s/tests/tools/certs/cacert.pem", + "--host-key-path=%(test_path)s/tests/tools/certs/web-platform.test.key", + "--host-cert-path=%(test_path)s/tests/tools/certs/web-platform.test.pem", + "--certutil-binary=%(test_install_path)s/bin/certutil", + ], + "geckodriver": os.path.join("%(abs_fetches_dir)s", "geckodriver"), + "per_test_category": "web-platform", + "run_cmd_checks_enabled": True, + "preflight_run_cmd_suites": [ + # NOTE 'enabled' is only here while we have unconsolidated configs + { + "name": "disable_screen_saver", + "cmd": ["xset", "s", "off", "s", "reset"], + "halt_on_failure": False, + "architectures": ["32bit", "64bit"], + "enabled": DISABLE_SCREEN_SAVER, + }, + { + "name": "run mouse & screen adjustment script", + "cmd": [ + # when configs are consolidated this python path will only show + # for windows. + "python", + "../scripts/external_tools/mouse_and_screen_resolution.py", + "--configuration-file", + "../scripts/external_tools/machine-configuration.json", + ], + "architectures": ["32bit"], + "halt_on_failure": True, + "enabled": ADJUST_MOUSE_AND_SCREEN, + }, + ], +} diff --git a/testing/mozharness/configs/web_platform_tests/prod_config_windows.py b/testing/mozharness/configs/web_platform_tests/prod_config_windows.py new file mode 100644 index 0000000000..738671d01f --- /dev/null +++ b/testing/mozharness/configs/web_platform_tests/prod_config_windows.py @@ -0,0 +1,58 @@ +# ***** BEGIN LICENSE BLOCK ***** +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this file, +# You can obtain one at http://mozilla.org/MPL/2.0/. +# ***** END LICENSE BLOCK ***** + +# This is a template config file for web-platform-tests test. + +import os +import sys + +# OS Specifics +DISABLE_SCREEN_SAVER = False +ADJUST_MOUSE_AND_SCREEN = True +##### + + +config = { + "options": [ + "--prefs-root=%(test_path)s\\prefs", + "--config=%(test_path)s\\wptrunner.ini", + "--ca-cert-path=%(test_path)s\\tests\\tools\\certs\\cacert.pem", + "--host-key-path=%(test_path)s\\tests\\tools\\certs\\web-platform.test.key", + "--host-cert-path=%(test_path)s\\tests\\tools\\certs\\web-platform.test.pem", + "--certutil-binary=%(test_install_path)s\\bin\\certutil.exe", + ], + "exes": { + "python": sys.executable, + "hg": "c:\\mozilla-build\\hg\\hg", + }, + "geckodriver": os.path.join("%(abs_fetches_dir)s", "geckodriver.exe"), + "per_test_category": "web-platform", + "run_cmd_checks_enabled": True, + "preflight_run_cmd_suites": [ + # NOTE 'enabled' is only here while we have unconsolidated configs + { + "name": "disable_screen_saver", + "cmd": ["xset", "s", "off", "s", "reset"], + "architectures": ["32bit", "64bit"], + "halt_on_failure": False, + "enabled": DISABLE_SCREEN_SAVER, + }, + { + "name": "run mouse & screen adjustment script", + "cmd": [ + # when configs are consolidated this python path will only show + # for windows. + sys.executable, + "..\\scripts\\external_tools\\mouse_and_screen_resolution.py", + "--configuration-file", + "..\\scripts\\external_tools\\machine-configuration.json", + ], + "architectures": ["32bit"], + "halt_on_failure": True, + "enabled": ADJUST_MOUSE_AND_SCREEN, + }, + ], +} diff --git a/testing/mozharness/configs/web_platform_tests/prod_config_windows_taskcluster.py b/testing/mozharness/configs/web_platform_tests/prod_config_windows_taskcluster.py new file mode 100644 index 0000000000..7e84f69be4 --- /dev/null +++ b/testing/mozharness/configs/web_platform_tests/prod_config_windows_taskcluster.py @@ -0,0 +1,134 @@ +# ***** BEGIN LICENSE BLOCK ***** +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this file, +# You can obtain one at http://mozilla.org/MPL/2.0/. +# ***** END LICENSE BLOCK ***** + +# This is a template config file for web-platform-tests test. + +import os +import platform +import sys + +# OS Specifics +DISABLE_SCREEN_SAVER = False +ADJUST_MOUSE_AND_SCREEN = True +DESKTOP_VISUALFX_THEME = { + "Let Windows choose": 0, + "Best appearance": 1, + "Best performance": 2, + "Custom": 3, +}.get("Best appearance") +TASKBAR_AUTOHIDE_REG_PATH = { + "Windows 7": "HKCU:SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\StuckRects2", + "Windows 10": "HKCU:SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\StuckRects3", +}.get("{} {}".format(platform.system(), platform.release())) +##### + +config = { + "options": [ + "--prefs-root=%(test_path)s\\prefs", + "--config=%(test_path)s\\wptrunner.ini", + "--ca-cert-path=%(test_path)s\\tests\\tools\\certs\\cacert.pem", + "--host-key-path=%(test_path)s\\tests\\tools\\certs\\web-platform.test.key", + "--host-cert-path=%(test_path)s\\tests\\tools\\certs\\web-platform.test.pem", + "--certutil-binary=%(test_install_path)s\\bin\\certutil.exe", + ], + "exes": { + "python": sys.executable, + "hg": os.path.join(os.environ["PROGRAMFILES"], "Mercurial", "hg"), + }, + "run_cmd_checks_enabled": True, + "preflight_run_cmd_suites": [ + { + "name": "disable_screen_saver", + "cmd": ["xset", "s", "off", "s", "reset"], + "architectures": ["32bit", "64bit"], + "halt_on_failure": False, + "enabled": DISABLE_SCREEN_SAVER, + }, + { + "name": "run mouse & screen adjustment script", + "cmd": [ + sys.executable, + os.path.join( + os.getcwd(), + "mozharness", + "external_tools", + "mouse_and_screen_resolution.py", + ), + "--configuration-file", + os.path.join( + os.getcwd(), + "mozharness", + "external_tools", + "machine-configuration.json", + ), + ], + "architectures": ["32bit", "64bit"], + "halt_on_failure": True, + "enabled": ADJUST_MOUSE_AND_SCREEN, + }, + { + "name": "disable windows security and maintenance notifications", + "cmd": [ + "powershell", + "-command", + r"\"&{$p='HKCU:SOFTWARE\Microsoft\Windows\CurrentVersion\Notifications\Settings\Windows.SystemToast.SecurityAndMaintenance';if(!(Test-Path -Path $p)){&New-Item -Path $p -Force}&Set-ItemProperty -Path $p -Name Enabled -Value 0}\"", # noqa + ], + "architectures": ["32bit", "64bit"], + "halt_on_failure": True, + "enabled": (platform.release() == 10), + }, + { + "name": "set windows VisualFX", + "cmd": [ + "powershell", + "-command", + "\"&{{&Set-ItemProperty -Path 'HKCU:Software\Microsoft\Windows\CurrentVersion\Explorer\VisualEffects' -Name VisualFXSetting -Value {}}}\"".format( + DESKTOP_VISUALFX_THEME + ), + ], + "architectures": ["32bit", "64bit"], + "halt_on_failure": True, + "enabled": True, + }, + { + "name": "create scrollbars always show key", + "cmd": [ + "powershell", + "-command", + "New-ItemProperty -Path 'HKCU:\Control Panel\Accessibility' -Name 'DynamicScrollbars' -Value 0", + ], + "architectures": ["32bit", "64bit"], + "halt_on_failure": False, + "enabled": True, + }, + { + "name": "hide windows taskbar", + "cmd": [ + "powershell", + "-command", + "\"&{{$p='{}';$v=(Get-ItemProperty -Path $p).Settings;$v[8]=3;&Set-ItemProperty -Path $p -Name Settings -Value $v}}\"".format( + TASKBAR_AUTOHIDE_REG_PATH + ), + ], + "architectures": ["32bit", "64bit"], + "halt_on_failure": True, + "enabled": True, + }, + { + "name": "restart windows explorer", + "cmd": [ + "powershell", + "-command", + '"&{&Stop-Process -ProcessName explorer}"', + ], + "architectures": ["32bit", "64bit"], + "halt_on_failure": True, + "enabled": True, + }, + ], + "geckodriver": os.path.join("%(abs_fetches_dir)s", "geckodriver.exe"), + "per_test_category": "web-platform", +} diff --git a/testing/mozharness/configs/web_platform_tests/test_config.py b/testing/mozharness/configs/web_platform_tests/test_config.py new file mode 100644 index 0000000000..a9787185a7 --- /dev/null +++ b/testing/mozharness/configs/web_platform_tests/test_config.py @@ -0,0 +1,24 @@ +# ***** BEGIN LICENSE BLOCK ***** +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this file, +# You can obtain one at http://mozilla.org/MPL/2.0/. +# ***** END LICENSE BLOCK ***** + +config = { + "options": [ + "--prefs-root=%(test_path)s/prefs", + "--config=%(test_path)s/wptrunner.ini", + "--ca-cert-path=%(test_path)s/tests/tools/certs/cacert.pem", + "--host-key-path=%(test_path)s/tests/tools/certs/web-platform.test.key", + "--host-cert-path=%(test_path)s/tests/tools/certs/web-platform.test.pem", + "--certutil-binary=%(test_install_path)s/bin/certutil", + ], + "default_actions": [ + "clobber", + "download-and-extract", + "create-virtualenv", + "pull", + "install", + "run-tests", + ], +} diff --git a/testing/mozharness/configs/web_platform_tests/test_config_windows.py b/testing/mozharness/configs/web_platform_tests/test_config_windows.py new file mode 100644 index 0000000000..6822769bec --- /dev/null +++ b/testing/mozharness/configs/web_platform_tests/test_config_windows.py @@ -0,0 +1,30 @@ +# ***** BEGIN LICENSE BLOCK ***** +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this file, +# You can obtain one at http://mozilla.org/MPL/2.0/. +# ***** END LICENSE BLOCK ***** + +import sys + +config = { + "options": [ + "--prefs-root=%(test_path)s\\prefs", + "--config=%(test_path)s\\wptrunner.ini", + "--ca-cert-path=%(test_path)s\\tests\\tools\\certs\\cacert.pem", + "--host-key-path=%(test_path)s\\tests\\tools\\certs\\web-platform.test.key", + "--host-cert-path=%(test_path)s\\tests\\tools\\certs\\web-platform.test.pem", + "--certutil-binary=%(test_install_path)s\\bin\\certutil.exe", + ], + "exes": { + "python": sys.executable, + "hg": "c:\\mozilla-build\\hg\\hg", + }, + "default_actions": [ + "clobber", + "download-and-extract", + "create-virtualenv", + "pull", + "install", + "run-tests", + ], +} |