summaryrefslogtreecommitdiffstats
path: root/comm/taskcluster/ci/test
diff options
context:
space:
mode:
Diffstat (limited to 'comm/taskcluster/ci/test')
-rw-r--r--comm/taskcluster/ci/test/compiled.yml35
-rw-r--r--comm/taskcluster/ci/test/kind.yml57
-rw-r--r--comm/taskcluster/ci/test/test-platforms.yml149
-rw-r--r--comm/taskcluster/ci/test/test-sets.yml22
-rw-r--r--comm/taskcluster/ci/test/tests.yml179
5 files changed, 442 insertions, 0 deletions
diff --git a/comm/taskcluster/ci/test/compiled.yml b/comm/taskcluster/ci/test/compiled.yml
new file mode 100644
index 0000000000..67098d1798
--- /dev/null
+++ b/comm/taskcluster/ci/test/compiled.yml
@@ -0,0 +1,35 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+---
+job-defaults:
+ run-without-variant: false
+ variants: ["1proc"]
+ mozharness:
+ script: desktop_unittest.py
+ config:
+ by-test-platform:
+ linux.*:
+ - unittests/linux_unittest.py
+ - remove_executables.py
+ - unittests/thunderbird_extra.py
+ macosx.*:
+ - unittests/mac_unittest.py
+ - unittests/thunderbird_extra.py
+ windows.*:
+ - unittests/win_unittest.py
+ - unittests/thunderbird_extra.py
+ supports-artifact-builds: false
+
+gtest:
+ description: "GTests run"
+ suite: gtest
+ treeherder-symbol: GTest
+ instance-size: xlarge
+ run-on-projects:
+ by-test-platform:
+ macosx.*: [] # currently fails on macOS
+ default: built-projects
+ test-manifest-loader: null # don't load tests in the taskgraph
+ target: null
+ tier: default
diff --git a/comm/taskcluster/ci/test/kind.yml b/comm/taskcluster/ci/test/kind.yml
new file mode 100644
index 0000000000..13061808f1
--- /dev/null
+++ b/comm/taskcluster/ci/test/kind.yml
@@ -0,0 +1,57 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+---
+loader: gecko_taskgraph.loader.test:loader
+
+kind-dependencies:
+ - build
+ - build-mac-signing
+ - build-signing
+ - repackage-signing-shippable-l10n-msix
+ - repackage-signing-msix
+ - fetch
+ - toolchain
+
+transforms:
+ - comm_taskgraph.transforms.tests:transforms
+ - gecko_taskgraph.transforms.test:transforms
+ - gecko_taskgraph.transforms.job:transforms
+ - gecko_taskgraph.transforms.task:transforms
+
+jobs-from:
+ - compiled.yml
+ - tests.yml
+
+# These apply to all included test yml files listed in jobs-from
+job-defaults:
+ attributes:
+ retrigger: true
+ optimization:
+ by-test-platform:
+ .*-tsan.*/opt:
+ skip-unless-backstop-no-suite: null
+ .*-asan.*/opt:
+ skip-unless-backstop-no-suite: null
+ default:
+ skip-suite-only: null
+ mozharness:
+ requires-signed-builds:
+ by-test-platform:
+ windows11-64.*:
+ by-variant:
+ msix: true
+ default: false
+ default: false
+ fetches:
+ toolchain:
+ by-test-platform:
+ win.*:
+ - win32-fix-stacks
+ - win32-minidump-stackwalk
+ macosx.*:
+ - macosx64-fix-stacks
+ - macosx64-minidump-stackwalk
+ default:
+ - linux64-fix-stacks
+ - linux64-minidump-stackwalk
diff --git a/comm/taskcluster/ci/test/test-platforms.yml b/comm/taskcluster/ci/test/test-platforms.yml
new file mode 100644
index 0000000000..985eda9d57
--- /dev/null
+++ b/comm/taskcluster/ci/test/test-platforms.yml
@@ -0,0 +1,149 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.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 file maps build platforms to test platforms. In some cases, a
+# single build may be tested on multiple test platforms, but a single test
+# platform can only link to one build platform. Both build and test platforms
+# are represented as <platform>/<type>, where <type> is what Treeherder calls a
+# collection.
+#
+# Each test platform further specifies the set of tests that will be scheduled
+# for the platform, referring to tests defined in test-sets.yml.
+#
+# Note that set does not depend on the tree; tree-dependent job selection
+# should be performed in the target task selection phase of task-graph
+# generation.
+
+# Linux platforms (matching /linux.*/)
+
+linux1804-64-qr/opt:
+ build-platform: linux64/opt
+ test-sets:
+ - gtest-tests
+ - mochitest-tests
+ - xpcshell-tests
+
+linux1804-64-shippable-qr/opt:
+ build-platform: linux64-shippable/opt
+ test-sets:
+ - gtest-tests
+ - mochitest-tests
+ - xpcshell-tests
+
+linux1804-64-qr/debug:
+ build-platform: linux64/debug
+ test-sets:
+ - gtest-tests
+ - mochitest-tests
+ - xpcshell-tests
+
+linux1804-64-asan-qr/opt:
+ build-platform: linux64-asan/opt
+ test-sets:
+ - mochitest-tests
+ - xpcshell-tests
+
+linux1804-64-tsan-qr/opt:
+ build-platform: linux64-tsan/opt
+ test-sets:
+ - mochitest-tests
+ - xpcshell-tests
+
+linux1804-64-ccov-qr/opt:
+ build-platform: linux64-ccov/opt
+ test-sets:
+ - mochitest-tests
+ - xpcshell-tests
+
+# Windows platforms (matching /windows.*/)
+
+# windows 11 - 32bit
+windows11-32-2009-qr/opt:
+ build-platform: win32/opt
+ build-signing-label: build-signing-win32/opt
+ test-sets:
+ - gtest-tests
+ - mochitest-tests
+ - xpcshell-tests
+
+windows11-32-2009-shippable-qr/opt:
+ build-platform: win32-shippable/opt
+ build-signing-label: build-signing-win32-shippable/opt
+ test-sets:
+ - gtest-tests
+ - mochitest-tests
+ - xpcshell-tests
+
+windows11-32-2009-qr/debug:
+ build-platform: win32/debug
+ build-signing-label: build-signing-win32/debug
+ test-sets:
+ - gtest-tests
+ - mochitest-tests
+ - xpcshell-tests
+
+# windows 11 - 64bit
+windows11-64-2009-qr/opt:
+ build-platform: win64/opt
+ build-signing-label:
+ by-variant:
+ msix: repackage-signing-msix-win64/opt
+ default: build-signing-win64/opt
+ test-sets:
+ - gtest-tests
+ - mochitest-tests
+ - xpcshell-tests
+
+windows11-64-2009-shippable-qr/opt:
+ build-platform: win64-shippable/opt
+ build-signing-label:
+ by-variant:
+ msix: repackage-signing-shippable-l10n-msix-win64-shippable/opt
+ default: build-signing-win64-shippable/opt
+ test-sets:
+ - gtest-tests
+ - mochitest-tests
+ - xpcshell-tests
+
+windows11-64-2009-qr/debug:
+ build-platform: win64/debug
+ build-signing-label:
+ by-variant:
+ msix: repackage-signing-msix-win64/debug
+ default: build-signing-win64/debug
+ test-sets:
+ - gtest-tests
+ - mochitest-tests
+ - xpcshell-tests
+
+windows11-64-2009-asan-qr/opt:
+ build-platform: win64-asan/opt
+ test-sets:
+ - mochitest-tests
+
+# MacOS X platforms (matching /macosx.*/)
+
+macosx1015-64-qr/opt:
+ build-platform: macosx64/opt
+ test-sets:
+ - mochitest-tests
+ - xpcshell-tests
+
+macosx1015-64-qr/debug:
+ build-platform: macosx64/debug
+ test-sets:
+ - mochitest-tests
+ - xpcshell-tests
+
+macosx1015-64-shippable-qr/opt:
+ build-platform: macosx64-shippable/opt
+ test-sets:
+ - mochitest-tests
+ - xpcshell-tests
+
+# macosx1100-64-shippable/opt:
+# build-platform: macosx64-shippable/opt
+# test-sets:
+# - mochitest-tests
+# - xpcshell-tests
diff --git a/comm/taskcluster/ci/test/test-sets.yml b/comm/taskcluster/ci/test/test-sets.yml
new file mode 100644
index 0000000000..5e487e1050
--- /dev/null
+++ b/comm/taskcluster/ci/test/test-sets.yml
@@ -0,0 +1,22 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+---
+# Each key in this file specifies a set of tests to run. Different test sets
+# may, for example, be bound to different test platforms.
+#
+# Note that set does not depend on the tree; tree-dependent job selection
+# should be performed in the target task selection phase of task-graph
+# generation.
+#
+# A test set has a name, and a list of tests that it contains.
+#
+
+gtest-tests:
+ - gtest
+
+mochitest-tests:
+ - mochitest-thunderbird
+
+xpcshell-tests:
+ - xpcshell
diff --git a/comm/taskcluster/ci/test/tests.yml b/comm/taskcluster/ci/test/tests.yml
new file mode 100644
index 0000000000..9d3105d5e9
--- /dev/null
+++ b/comm/taskcluster/ci/test/tests.yml
@@ -0,0 +1,179 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+---
+# Each stanza here describes a particular test suite or sub-suite. These are
+# processed through the transformations described in kind.yml to produce a
+# bunch of tasks. See the schema in `taskcluster/gecko_taskgraph/transforms/tests.py`
+# for a description of the fields used here.
+
+# Note that these are in lexical order, as enforced by the task loader.
+
+# Adding a new test type or running tests on a new platform? Be sure to review
+# https://wiki.mozilla.org/Sheriffing/Job_Visibility_Policy
+
+xpcshell:
+ description: "xpcshell test run"
+ suite:
+ category: xpcshell
+ name:
+ by-variant:
+ msix: xpcshell-msix
+ default: xpcshell
+ target:
+ by-test-platform:
+ windows11-64.*:
+ by-variant:
+ msix: target.installer.msix
+ default: null
+ default: null
+ treeherder-symbol: X(X)
+ variants:
+ - msix
+ run-on-projects:
+ by-variant:
+ msix:
+ by-test-platform:
+ windows11-64.*: built-projects
+ default: []
+ default: built-projects
+ tier:
+ by-variant:
+ msix: 2
+ default:
+ by-test-platform:
+ .*-asan.*: 2
+ .*-tsan.*: 2
+ macosx1100.*: 2
+ windows11.*: 1
+ default: default
+ chunks:
+ by-test-platform:
+ .*-ccov.*/.*: 8
+ .*-tsan.*/opt: 8
+ default: 4
+ instance-size: default
+ max-run-time:
+ by-variant:
+ msix: 7200
+ default:
+ by-test-platform:
+ windows.*/opt: 5400
+ .*-ccov(-qr)?/.*: 7200
+ .*-tsan.*/opt: 7200
+ default: 2700
+ allow-software-gl-layers: false
+ mozharness:
+ script: desktop_unittest.py
+ config:
+ by-test-platform:
+ windows.*:
+ - unittests/win_unittest.py
+ - unittests/thunderbird_extra.py
+ macosx.*64.*:
+ - unittests/mac_unittest.py
+ - unittests/thunderbird_extra.py
+ linux.*:
+ - unittests/linux_unittest.py
+ - remove_executables.py
+ - unittests/thunderbird_extra.py
+ extra-options:
+ by-test-platform:
+ windows1.*:
+ - --threads=2
+ default: []
+ requires-signed-builds:
+ by-test-platform:
+ windows1.-64-asan-qr/opt: false
+ windows.*: true
+ default: false
+ fetches:
+ toolchain:
+ by-test-platform:
+ linux.*:
+ - linux64-fix-stacks
+ - linux64-node
+ - linux64-minidump-stackwalk
+ macosx.*:
+ - macosx64-fix-stacks
+ - macosx64-node
+ - macosx64-minidump-stackwalk
+ win.*64.*:
+ - win32-fix-stacks
+ - win64-node
+ - win32-minidump-stackwalk
+ win.*32.*:
+ - win32-fix-stacks
+ - win32-node
+ - win32-minidump-stackwalk
+ default: []
+
+mochitest-thunderbird:
+ description: "Mochitest browser-chrome-thunderbird run"
+ suite:
+ category: mochitest
+ name: mochitest-browser-chrome-thunderbird
+ target:
+ by-test-platform:
+ windows11-64.*:
+ by-variant:
+ msix: target.installer.msix
+ default: null
+ default: null
+ treeherder-symbol: M(bct)
+ built-projects-only: true
+ test-manifest-loader: null # don't load tests in the taskgraph
+ loopback-video: true
+ max-run-time:
+ by-variant:
+ msix: 5400
+ default:
+ by-test-platform:
+ linux.*64-ccov.*/.*: 9000
+ linux.*64-tsan.*/opt: 9000
+ default: 3600
+ variants:
+ - msix
+ run-on-projects:
+ by-variant:
+ msix:
+ by-test-platform:
+ windows11-64.*: built-projects
+ default: []
+ default: built-projects
+ tier:
+ by-variant:
+ msix: 2
+ default:
+ by-test-platform:
+ .*-asan.*: 2
+ .*-tsan.*: 2
+ macosx1100.*: 2
+ windows11.*: 1
+ default: default
+ chunks:
+ by-test-platform:
+ linux.*64-asan.*/opt: 16
+ linux.*64-tsan.*/opt: 15
+ windows1.-64-asan.*/opt: 9
+ default: 7
+ mozharness:
+ script: desktop_unittest.py
+ mochitest-flavor: browser
+ config:
+ by-test-platform:
+ windows.*:
+ - unittests/win_unittest.py
+ - unittests/thunderbird_extra.py
+ macosx.*64.*:
+ - unittests/mac_unittest.py
+ - unittests/thunderbird_extra.py
+ linux.*:
+ - unittests/linux_unittest.py
+ - remove_executables.py
+ - unittests/thunderbird_extra.py
+ instance-size:
+ by-test-platform:
+ linux.*64-tsan.*/opt: xlarge # runs out of memory on default/m3.large
+ default: default
+ allow-software-gl-layers: false