summaryrefslogtreecommitdiffstats
path: root/testing/mozharness/configs/builds
diff options
context:
space:
mode:
Diffstat (limited to 'testing/mozharness/configs/builds')
-rw-r--r--testing/mozharness/configs/builds/build_pool_specifics.py14
-rw-r--r--testing/mozharness/configs/builds/releng_base_android_64_builds.py59
-rw-r--r--testing/mozharness/configs/builds/releng_base_firefox.py7
-rw-r--r--testing/mozharness/configs/builds/releng_base_linux_32_builds.py61
-rw-r--r--testing/mozharness/configs/builds/releng_base_linux_64_builds.py60
-rw-r--r--testing/mozharness/configs/builds/releng_base_mac_64_cross_builds.py56
-rw-r--r--testing/mozharness/configs/builds/releng_base_windows_32_mingw_builds.py54
-rw-r--r--testing/mozharness/configs/builds/releng_base_windows_64_mingw_builds.py55
-rw-r--r--testing/mozharness/configs/builds/releng_sub_android_configs/64_aarch64.py8
-rw-r--r--testing/mozharness/configs/builds/releng_sub_android_configs/64_aarch64_beta.py8
-rw-r--r--testing/mozharness/configs/builds/releng_sub_android_configs/64_aarch64_beta_debug.py9
-rw-r--r--testing/mozharness/configs/builds/releng_sub_android_configs/64_aarch64_debug.py9
-rw-r--r--testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16.py8
-rw-r--r--testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_beta.py8
-rw-r--r--testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_beta_debug.py9
-rw-r--r--testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_debug.py9
-rw-r--r--testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_debug_ccov.py15
-rw-r--r--testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_debug_searchfox.py12
-rw-r--r--testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_gradle_dependencies.py16
-rw-r--r--testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_partner_sample1.py10
-rw-r--r--testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_profile_generate.py8
-rw-r--r--testing/mozharness/configs/builds/releng_sub_android_configs/64_geckoview_docs.py26
-rw-r--r--testing/mozharness/configs/builds/releng_sub_android_configs/64_x86.py8
-rw-r--r--testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_64.py8
-rw-r--r--testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_64_beta.py8
-rw-r--r--testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_64_beta_debug.py9
-rw-r--r--testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_64_debug.py9
-rw-r--r--testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_64_fuzzing_asan.py8
-rw-r--r--testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_beta.py8
-rw-r--r--testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_beta_debug.py9
-rw-r--r--testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_debug.py9
-rw-r--r--testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_fuzzing_debug.py9
-rw-r--r--testing/mozharness/configs/builds/releng_sub_linux_configs/32_debug.py27
-rw-r--r--testing/mozharness/configs/builds/releng_sub_linux_configs/32_rusttests.py29
-rw-r--r--testing/mozharness/configs/builds/releng_sub_linux_configs/32_rusttests_debug.py29
-rw-r--r--testing/mozharness/configs/builds/releng_sub_linux_configs/64_add-on-devel.py25
-rw-r--r--testing/mozharness/configs/builds/releng_sub_linux_configs/64_asan.py31
-rw-r--r--testing/mozharness/configs/builds/releng_sub_linux_configs/64_asan_and_debug.py32
-rw-r--r--testing/mozharness/configs/builds/releng_sub_linux_configs/64_asan_reporter_tc.py28
-rw-r--r--testing/mozharness/configs/builds/releng_sub_linux_configs/64_asan_tc.py26
-rw-r--r--testing/mozharness/configs/builds/releng_sub_linux_configs/64_asan_tc_and_debug.py27
-rw-r--r--testing/mozharness/configs/builds/releng_sub_linux_configs/64_code_coverage_debug.py26
-rw-r--r--testing/mozharness/configs/builds/releng_sub_linux_configs/64_code_coverage_opt.py26
-rw-r--r--testing/mozharness/configs/builds/releng_sub_linux_configs/64_debug.py27
-rw-r--r--testing/mozharness/configs/builds/releng_sub_linux_configs/64_fuzzing_asan_tc.py28
-rw-r--r--testing/mozharness/configs/builds/releng_sub_linux_configs/64_fuzzing_debug.py28
-rw-r--r--testing/mozharness/configs/builds/releng_sub_linux_configs/64_fuzzing_tsan_tc.py26
-rw-r--r--testing/mozharness/configs/builds/releng_sub_linux_configs/64_noopt_debug.py25
-rw-r--r--testing/mozharness/configs/builds/releng_sub_linux_configs/64_rusttests.py28
-rw-r--r--testing/mozharness/configs/builds/releng_sub_linux_configs/64_rusttests_debug.py27
-rw-r--r--testing/mozharness/configs/builds/releng_sub_linux_configs/64_searchfox_and_debug.py41
-rw-r--r--testing/mozharness/configs/builds/releng_sub_linux_configs/64_source.py15
-rw-r--r--testing/mozharness/configs/builds/releng_sub_linux_configs/64_stat_and_debug.py38
-rw-r--r--testing/mozharness/configs/builds/releng_sub_linux_configs/64_tsan_tc.py26
-rw-r--r--testing/mozharness/configs/builds/releng_sub_linux_configs/64_valgrind.py31
-rw-r--r--testing/mozharness/configs/builds/releng_sub_mac_configs/64_add-on-devel.py26
-rw-r--r--testing/mozharness/configs/builds/releng_sub_mac_configs/64_code_coverage_debug.py27
-rw-r--r--testing/mozharness/configs/builds/releng_sub_mac_configs/64_code_coverage_opt.py26
-rw-r--r--testing/mozharness/configs/builds/releng_sub_mac_configs/64_cross_debug.py27
-rw-r--r--testing/mozharness/configs/builds/releng_sub_mac_configs/64_cross_debug_searchfox.py34
-rw-r--r--testing/mozharness/configs/builds/releng_sub_mac_configs/64_cross_fuzzing_asan.py28
-rw-r--r--testing/mozharness/configs/builds/releng_sub_mac_configs/64_cross_fuzzing_debug.py29
-rw-r--r--testing/mozharness/configs/builds/releng_sub_mac_configs/64_cross_noopt_debug.py27
-rw-r--r--testing/mozharness/configs/builds/releng_sub_mac_configs/64_debug.py33
-rw-r--r--testing/mozharness/configs/builds/releng_sub_mac_configs/64_stat_and_debug.py34
-rw-r--r--testing/mozharness/configs/builds/releng_sub_windows_configs/32_add-on-devel.py29
-rw-r--r--testing/mozharness/configs/builds/releng_sub_windows_configs/32_debug.py30
-rw-r--r--testing/mozharness/configs/builds/releng_sub_windows_configs/32_mingwclang.py9
-rw-r--r--testing/mozharness/configs/builds/releng_sub_windows_configs/32_stat_and_debug.py31
-rw-r--r--testing/mozharness/configs/builds/releng_sub_windows_configs/64_add-on-devel.py28
-rw-r--r--testing/mozharness/configs/builds/releng_sub_windows_configs/64_debug.py29
-rw-r--r--testing/mozharness/configs/builds/releng_sub_windows_configs/64_mingwclang.py9
-rw-r--r--testing/mozharness/configs/builds/taskcluster_base_macosx.py45
-rw-r--r--testing/mozharness/configs/builds/taskcluster_base_win32.py8
-rw-r--r--testing/mozharness/configs/builds/taskcluster_base_win64.py8
-rw-r--r--testing/mozharness/configs/builds/taskcluster_base_windows.py47
-rw-r--r--testing/mozharness/configs/builds/taskcluster_sub_win32/debug.py11
-rw-r--r--testing/mozharness/configs/builds/taskcluster_sub_win32/noopt_debug.py11
-rw-r--r--testing/mozharness/configs/builds/taskcluster_sub_win64/asan_debug.py11
-rw-r--r--testing/mozharness/configs/builds/taskcluster_sub_win64/asan_reporter_opt.py8
-rw-r--r--testing/mozharness/configs/builds/taskcluster_sub_win64/ccov_opt.py10
-rw-r--r--testing/mozharness/configs/builds/taskcluster_sub_win64/debug.py11
-rw-r--r--testing/mozharness/configs/builds/taskcluster_sub_win64/noopt_debug.py11
-rw-r--r--testing/mozharness/configs/builds/taskcluster_sub_win64/plain_opt.py12
-rw-r--r--testing/mozharness/configs/builds/taskcluster_sub_win64/rusttests_opt.py15
-rw-r--r--testing/mozharness/configs/builds/taskcluster_sub_win64/searchfox_debug.py15
86 files changed, 1931 insertions, 0 deletions
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..3461a3e77a
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_base_android_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/.
+
+from __future__ import absolute_import
+import os
+
+config = {
+ #########################################################################
+ ######## ANDROID GENERIC CONFIG KEYS/VAlUES
+ # note: overridden by MOZHARNESS_ACTIONS in TaskCluster tasks
+ "default_actions": [
+ "build",
+ "multi-l10n",
+ ],
+ "max_build_output_timeout": 0,
+ "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..b1c238fe1b
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_base_linux_32_builds.py
@@ -0,0 +1,61 @@
+# 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/.
+
+from __future__ import absolute_import
+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..d8a90f3617
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_base_linux_64_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/.
+
+from __future__ import absolute_import
+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..3b94391174
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_base_mac_64_cross_builds.py
@@ -0,0 +1,56 @@
+# 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/.
+
+from __future__ import absolute_import
+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..3f4433fc58
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_base_windows_32_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/.
+
+from __future__ import absolute_import
+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..26ab6cfcbc
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_base_windows_64_mingw_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/.
+
+from __future__ import absolute_import
+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_api_16.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16.py
new file mode 100644
index 0000000000..0cfda6d679
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16.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-api-16",
+ "src_mozconfig": "mobile/android/config/mozconfigs/android-api-16/nightly",
+}
diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_beta.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_beta.py
new file mode 100644
index 0000000000..4fc089feea
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_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-api-16",
+ "src_mozconfig": "mobile/android/config/mozconfigs/android-api-16/beta",
+}
diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_beta_debug.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_beta_debug.py
new file mode 100644
index 0000000000..2445f5d2f7
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_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-api-16-debug",
+ "src_mozconfig": "mobile/android/config/mozconfigs/android-api-16/debug-beta",
+ "debug_build": True,
+}
diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_debug.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_debug.py
new file mode 100644
index 0000000000..0711f8c783
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_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-api-16-debug",
+ "src_mozconfig": "mobile/android/config/mozconfigs/android-api-16/debug",
+ "debug_build": True,
+}
diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_debug_ccov.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_debug_ccov.py
new file mode 100644
index 0000000000..a2fcd00cfd
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_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-api-16-debug-ccov",
+ "src_mozconfig": "mobile/android/config/mozconfigs/android-api-16/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_api_16_debug_searchfox.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_debug_searchfox.py
new file mode 100644
index 0000000000..7c5ae88e33
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_debug_searchfox.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": "android-api-16-debug",
+ "env": {
+ "SCCACHE_DISABLE": "1",
+ },
+ "src_mozconfig": "mobile/android/config/mozconfigs/android-api-16/debug-searchfox",
+ "debug_build": True,
+}
diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_gradle_dependencies.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_gradle_dependencies.py
new file mode 100644
index 0000000000..950d520261
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_gradle_dependencies.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 = {
+ "stage_platform": "android-api-16-gradle-dependencies",
+ "src_mozconfig": "mobile/android/config/mozconfigs/android-api-16-gradle-dependencies/nightly",
+ # gradle-dependencies doesn't produce a package. So don't collect package metrics.
+ "postflight_build_mach_commands": [
+ [
+ "android",
+ "gradle-dependencies",
+ ],
+ ],
+ "max_build_output_timeout": 0,
+}
diff --git a/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_partner_sample1.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_partner_sample1.py
new file mode 100644
index 0000000000..a703cf9f87
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_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-api-16-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_api_16_profile_generate.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_profile_generate.py
new file mode 100644
index 0000000000..e87f6730a0
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_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-api-16",
+ "src_mozconfig": "mobile/android/config/mozconfigs/android-api-16/profile-generate",
+}
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..136a8cfead
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_geckoview_docs.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 = {
+ "stage_platform": "android-geckoview-docs",
+ "src_mozconfig": "mobile/android/config/mozconfigs/android-api-16/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}",
+ ],
+ ],
+ "max_build_output_timeout": 0,
+}
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_fuzzing_asan.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_64_fuzzing_asan.py
new file mode 100644
index 0000000000..1095c18c68
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_64_fuzzing_asan.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_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_fuzzing_debug.py b/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_fuzzing_debug.py
new file mode 100644
index 0000000000..5d892c313f
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_x86_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-fuzzing-debug",
+ "src_mozconfig": "mobile/android/config/mozconfigs/android-x86/debug-fuzzing",
+ "debug_build": True,
+}
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..9ee5508d45
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/32_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/.
+
+from __future__ import absolute_import
+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_rusttests.py b/testing/mozharness/configs/builds/releng_sub_linux_configs/32_rusttests.py
new file mode 100644
index 0000000000..c33908220f
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/32_rusttests.py
@@ -0,0 +1,29 @@
+# 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/.
+
+from __future__ import absolute_import
+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",
+ },
+ "build_targets": ["pre-export", "export", "recurse_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..399f5ad7c2
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/32_rusttests_debug.py
@@ -0,0 +1,29 @@
+# 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/.
+
+from __future__ import absolute_import
+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",
+ },
+ "build_targets": ["pre-export", "export", "recurse_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..419c0f0764
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_linux_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/.
+
+from __future__ import absolute_import
+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..53c7ccb7e8
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_asan.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/.
+
+from __future__ import absolute_import
+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..514f8abdea
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_asan_and_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/.
+
+from __future__ import absolute_import
+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..d1cf3a0c7b
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_asan_reporter_tc.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/.
+
+from __future__ import absolute_import
+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..eea28a0bb8
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_asan_tc.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/.
+
+from __future__ import absolute_import
+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..617b3a471c
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_asan_tc_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/.
+
+from __future__ import absolute_import
+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..74bc6b0712
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_linux_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/.
+
+from __future__ import absolute_import
+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..74bc6b0712
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_code_coverage_opt.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/.
+
+from __future__ import absolute_import
+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..b546ccfcc6
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_linux_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/.
+
+from __future__ import absolute_import
+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..1c5e7404d8
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_fuzzing_asan_tc.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/.
+
+from __future__ import absolute_import
+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..89bd1bc69b
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_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/.
+
+from __future__ import absolute_import
+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..22f5f87a28
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_fuzzing_tsan_tc.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/.
+
+from __future__ import absolute_import
+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..0422cea052
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_noopt_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/.
+
+from __future__ import absolute_import
+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..6b53167f0f
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_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/.
+
+from __future__ import absolute_import
+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",
+ },
+ "build_targets": ["pre-export", "export", "recurse_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..95cfe4ac8b
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_rusttests_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/.
+
+from __future__ import absolute_import
+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",
+ },
+ "build_targets": ["pre-export", "export", "recurse_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..e136291be3
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_searchfox_and_debug.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/.
+
+from __future__ import absolute_import
+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",
+ # Disable sccache because otherwise we won't index the files that
+ # sccache optimizes away compilation for
+ "SCCACHE_DISABLE": "1",
+ ## 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..53ec22511c
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_stat_and_debug.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/.
+
+from __future__ import absolute_import
+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..27fd6beeed
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_tsan_tc.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/.
+
+from __future__ import absolute_import
+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..feb6f70c27
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_linux_configs/64_valgrind.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/.
+
+from __future__ import absolute_import
+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..f7d099c5c6
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_mac_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/.
+
+from __future__ import absolute_import
+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..19b3efcabc
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_mac_configs/64_code_coverage_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/.
+
+from __future__ import absolute_import
+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..26830f4358
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_mac_configs/64_code_coverage_opt.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/.
+
+from __future__ import absolute_import
+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..8b5ec033be
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_mac_configs/64_cross_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/.
+
+from __future__ import absolute_import
+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..b8ba33f28e
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_mac_configs/64_cross_debug_searchfox.py
@@ -0,0 +1,34 @@
+# 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/.
+
+from __future__ import absolute_import
+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",
+ # Disable sccache because otherwise we won't index the files that
+ # sccache optimizes away compilation for
+ "SCCACHE_DISABLE": "1",
+ # 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..fee50128ce
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_mac_configs/64_cross_fuzzing_asan.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/.
+
+from __future__ import absolute_import
+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..c0c86ce7f4
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_mac_configs/64_cross_fuzzing_debug.py
@@ -0,0 +1,29 @@
+# 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/.
+
+from __future__ import absolute_import
+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..e134becf99
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_mac_configs/64_cross_noopt_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/.
+
+from __future__ import absolute_import
+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..db58e9d549
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_mac_configs/64_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/.
+
+from __future__ import absolute_import
+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..e183aa0557
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_mac_configs/64_stat_and_debug.py
@@ -0,0 +1,34 @@
+# 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/.
+
+from __future__ import absolute_import
+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_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..745aee83b0
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_windows_configs/32_add-on-devel.py
@@ -0,0 +1,29 @@
+# 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/.
+
+from __future__ import absolute_import
+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/nsis-3.01;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..5fc38a4b95
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_windows_configs/32_debug.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/.
+
+from __future__ import absolute_import
+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/nsis-3.01;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..8a385cf7b6
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_windows_configs/32_stat_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/.
+
+from __future__ import absolute_import
+import os
+
+config = {
+ "default_actions": [
+ "clobber",
+ "build",
+ ],
+ "stage_platform": "win32-st-an-debug",
+ "debug_build": True,
+ "tooltool_manifest_src": "browser/config/tooltool-manifests/win32/\
+releng.manifest",
+ #### 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/nsis-3.01;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..367ca69037
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_windows_configs/64_add-on-devel.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/.
+
+from __future__ import absolute_import
+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/nsis-3.01;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..e901417ab4
--- /dev/null
+++ b/testing/mozharness/configs/builds/releng_sub_windows_configs/64_debug.py
@@ -0,0 +1,29 @@
+# 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/.
+
+from __future__ import absolute_import
+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/nsis-3.01;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..28c0eeafa1
--- /dev/null
+++ b/testing/mozharness/configs/builds/taskcluster_base_macosx.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/.
+
+from __future__ import absolute_import
+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..0f7186cd41
--- /dev/null
+++ b/testing/mozharness/configs/builds/taskcluster_base_windows.py
@@ -0,0 +1,47 @@
+# 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/.
+
+from __future__ import absolute_import
+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..a7e15d287d
--- /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",
+ },
+ "build_targets": ["pre-export", "export", "recurse_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..afcd3a696f
--- /dev/null
+++ b/testing/mozharness/configs/builds/taskcluster_sub_win64/searchfox_debug.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": "win64-st-an-debug",
+ "debug_build": True,
+ "env": {
+ "XPCOM_DEBUG_BREAK": "stack-and-abort",
+ # Disable sccache because otherwise we won't index the files that
+ # sccache optimizes away compilation for
+ "SCCACHE_DISABLE": "1",
+ },
+ "mozconfig_variant": "debug-searchfox",
+}