Bug 981030 - Create platform specific mozharness files for storing test harness options, r=aki
authorAndrew Halberstadt <ahalberstadt@mozilla.com>
Thu, 20 Mar 2014 15:25:43 -0400
changeset 174623 284661ffd813d11983da8de8457e1a976259c198
parent 174613 11d170b90e988e4516a76fdb0627cab57c93f907
child 174624 472cb7738e14e4e04c698cface9e27c0ec2722a4
push id26458
push usercbook@mozilla.com
push dateFri, 21 Mar 2014 14:15:06 +0000
treeherdermozilla-central@584c7a6d5a09 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersaki
bugs981030
milestone31.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 981030 - Create platform specific mozharness files for storing test harness options, r=aki
testing/config/mozharness/android_arm_config.py
testing/config/mozharness/android_panda_config.py
testing/config/mozharness/android_x86_config.py
testing/config/mozharness/b2g_desktop_config.py
testing/config/mozharness/b2g_emulator_config.py
testing/config/mozharness/linux_config.py
testing/config/mozharness/mac_config.py
testing/config/mozharness/windows_config.py
testing/config/mozharness_config.py
new file mode 100644
--- /dev/null
+++ b/testing/config/mozharness/android_arm_config.py
@@ -0,0 +1,37 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+config = {
+    "suite_definitions": {
+        "mochitest": {
+            "run_filename": "runtestsremote.py",
+            "options": ["--autorun", "--close-when-done", "--dm_trans=sut",
+                "--console-level=INFO", "--app=%(app)s", "--remote-webserver=%(remote_webserver)s",
+                "--xre-path=%(xre_path)s", "--utility-path=%(utility_path)s",
+                "--deviceIP=%(device_ip)s", "--devicePort=%(device_port)s",
+                "--http-port=%(http_port)s", "--ssl-port=%(ssl_port)s",
+                "--certificate-path=%(certs_path)s", "--symbols-path=%(symbols_path)s"
+            ],
+        },
+        "reftest": {
+            "run_filename": "remotereftest.py",
+            "options": [ "--app=%(app)s", "--ignore-window-size",
+                "--bootstrap", "--enable-privilege",
+                "--remote-webserver=%(remote_webserver)s", "--xre-path=%(xre_path)s",
+                "--utility-path=%(utility_path)s", "--deviceIP=%(device_ip)s",
+                "--devicePort=%(device_port)s", "--http-port=%(http_port)s",
+                "--ssl-port=%(ssl_port)s", "--httpd-path", "reftest/components",
+                "--symbols-path=%(symbols_path)s",
+            ],
+        },
+        "xpcshell": {
+            "run_filename": "remotexpcshelltests.py",
+            "options": ["--deviceIP=%(device_ip)s", "--devicePort=%(device_port)s",
+                "--xre-path=%(xre_path)s", "--testing-modules-dir=%(modules_dir)s",
+                "--apk=%(installer_path)s", "--no-logfiles",
+                "--symbols-path=%(symbols_path)s",
+            ],
+        },
+    }, # end suite_definitions
+}
new file mode 100644
--- /dev/null
+++ b/testing/config/mozharness/android_panda_config.py
@@ -0,0 +1,86 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.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 = {
+    "mochitest_options": [
+        "--deviceIP=%(device_ip)s",
+        "--xre-path=../hostutils/xre",
+        "--utility-path=../hostutils/bin", "--certificate-path=certs",
+        "--app=%(app_name)s", "--console-level=INFO",
+        "--http-port=%(http_port)s", "--ssl-port=%(ssl_port)s",
+        "--run-only-tests=android.json", "--symbols-path=%(symbols_path)s"
+    ],
+    "reftest_options": [
+        "--deviceIP=%(device_ip)s",
+        "--xre-path=../hostutils/xre",
+        "--utility-path=../hostutils/bin",
+        "--app=%(app_name)s",
+        "--ignore-window-size", "--bootstrap",
+        "--http-port=%(http_port)s", "--ssl-port=%(ssl_port)s",
+        "--symbols-path=%(symbols_path)s",
+        "reftest/tests/layout/reftests/reftest.list"
+    ],
+    "crashtest_options": [
+        "--deviceIP=%(device_ip)s",
+        "--xre-path=../hostutils/xre",
+        "--utility-path=../hostutils/bin",
+        "--app=%(app_name)s",
+        "--enable-privilege", "--ignore-window-size", "--bootstrap",
+        "--http-port=%(http_port)s", "--ssl-port=%(ssl_port)s",
+        "--symbols-path=%(symbols_path)s",
+        "reftest/tests/testing/crashtest/crashtests.list"
+    ],
+    "jsreftest_options": [
+        "--deviceIP=%(device_ip)s",
+        "--xre-path=../hostutils/xre",
+        "--utility-path=../hostutils/bin",
+        "--app=%(app_name)s",
+        "--enable-privilege", "--ignore-window-size", "--bootstrap",
+        "--extra-profile-file=jsreftest/tests/user.js", "jsreftest/tests/jstests.list",
+        "--http-port=%(http_port)s", "--ssl-port=%(ssl_port)s",
+        "--symbols-path=%(symbols_path)s"
+    ],
+    "robocop_options": [
+        "--deviceIP=%(device_ip)s",
+        "--xre-path=../hostutils/xre",
+        "--utility-path=../hostutils/bin",
+        "--certificate-path=certs",
+        "--app=%(app_name)s", "--console-level=INFO",
+        "--http-port=%(http_port)s", "--ssl-port=%(ssl_port)s",
+        "--symbols-path=%(symbols_path)s",
+        "--robocop=mochitest/robocop.ini"
+    ],
+    "xpcshell_options": [
+        "--deviceIP=%(device_ip)s",
+        "--xre-path=../hostutils/xre",
+        "--manifest=xpcshell/tests/xpcshell_android.ini",
+        "--build-info-json=xpcshell/mozinfo.json",
+        "--testing-modules-dir=modules",
+        "--local-lib-dir=../fennec",
+        "--apk=../%(apk_name)s",
+        "--no-logfiles",
+        "--symbols-path=%(symbols_path)s"
+    ],
+    "jittest_options": [
+        "bin/js",
+        "--remote",
+        "-j", "1",
+        "--deviceTransport=sut",
+        "--deviceIP=%(device_ip)s",
+        "--localLib=../tests/bin",
+        "--no-slow",
+        "--no-progress",
+        "--tinderbox",
+        "--tbpl"
+     ],
+     "cppunittest_options": [
+        "--symbols-path=%(symbols_path)s",
+        "--xre-path=tests/bin",
+        "--dm_trans=SUT",
+        "--deviceIP=%(device_ip)s",
+        "--localBinDir=../tests/bin",
+        "--apk=%(apk_path)s",
+        "--skip-manifest=../tests/cppunittests/android_cppunittest_manifest.txt"
+     ],
+}
new file mode 100644
--- /dev/null
+++ b/testing/config/mozharness/android_x86_config.py
@@ -0,0 +1,37 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+config = {
+    "suite_definitions": {
+        "mochitest": {
+            "run_filename": "runtestsremote.py",
+            "options": ["--autorun", "--close-when-done", "--dm_trans=sut",
+                "--console-level=INFO", "--app=%(app)s", "--remote-webserver=%(remote_webserver)s",
+                "--xre-path=%(xre_path)s", "--utility-path=%(utility_path)s",
+                "--deviceIP=%(device_ip)s", "--devicePort=%(device_port)s",
+                "--http-port=%(http_port)s", "--ssl-port=%(ssl_port)s",
+                "--certificate-path=%(certs_path)s", "--symbols-path=%(symbols_path)s"
+            ],
+        },
+        "reftest": {
+            "run_filename": "remotereftest.py",
+            "options": [ "--app=%(app)s", "--ignore-window-size",
+                "--bootstrap", "--enable-privilege",
+                "--remote-webserver=%(remote_webserver)s", "--xre-path=%(xre_path)s",
+                "--utility-path=%(utility_path)s", "--deviceIP=%(device_ip)s",
+                "--devicePort=%(device_port)s", "--http-port=%(http_port)s",
+                "--ssl-port=%(ssl_port)s", "--httpd-path", "reftest/components",
+                "--symbols-path=%(symbols_path)s",
+            ],
+        },
+        "xpcshell": {
+            "run_filename": "remotexpcshelltests.py",
+            "options": ["--deviceIP=%(device_ip)s", "--devicePort=%(device_port)s",
+                "--xre-path=%(xre_path)s", "--testing-modules-dir=%(modules_dir)s",
+                "--apk=%(installer_path)s", "--no-logfiles",
+                "--symbols-path=%(symbols_path)s",
+            ],
+        },
+    }, # end suite_definitions
+}
new file mode 100644
--- /dev/null
+++ b/testing/config/mozharness/b2g_desktop_config.py
@@ -0,0 +1,18 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+config = {
+    "mochitest_options": [
+        "--console-level=INFO", "%(test_manifest)s",
+        "--total-chunks=%(total_chunks)s", "--this-chunk=%(this_chunk)s",
+        "--profile=%(gaia_profile)s", "--app=%(application)s", "--desktop",
+        "--utility-path=%(utility_path)s", "--certificate-path=%(cert_path)s",
+        "--symbols-path=%(symbols_path)s",
+    ],
+
+    "reftest_options": [
+        "--desktop", "--profile=%(gaia_profile)s", "--appname=%(application)s",
+        "--symbols-path=%(symbols_path)s", "%(test_manifest)s",
+    ]
+}
new file mode 100644
--- /dev/null
+++ b/testing/config/mozharness/b2g_emulator_config.py
@@ -0,0 +1,48 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.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 = {
+    "jsreftest_options": [
+        "--adbpath=%(adbpath)s", "--b2gpath=%(b2gpath)s", "--emulator=%(emulator)s",
+        "--emulator-res=800x1000", "--logcat-dir=%(logcat_dir)s",
+        "--remote-webserver=%(remote_webserver)s", "--ignore-window-size",
+        "--xre-path=%(xre_path)s", "--symbols-path=%(symbols_path)s", "--busybox=%(busybox)s",
+        "--total-chunks=%(total_chunks)s", "--this-chunk=%(this_chunk)s",
+        "--extra-profile-file=jsreftest/tests/user.js",
+        "%(test_manifest)s",
+    ],
+
+    "mochitest_options": [
+        "--adbpath=%(adbpath)s", "--b2gpath=%(b2gpath)s", "--console-level=INFO",
+        "--emulator=%(emulator)s", "--logcat-dir=%(logcat_dir)s",
+        "--remote-webserver=%(remote_webserver)s", "%(test_manifest)s",
+        "--xre-path=%(xre_path)s", "--symbols-path=%(symbols_path)s", "--busybox=%(busybox)s",
+        "--total-chunks=%(total_chunks)s", "--this-chunk=%(this_chunk)s",
+    ],
+
+    "reftest_options": [
+        "--adbpath=%(adbpath)s", "--b2gpath=%(b2gpath)s", "--emulator=%(emulator)s",
+        "--emulator-res=800x1000", "--logcat-dir=%(logcat_dir)s",
+        "--remote-webserver=%(remote_webserver)s", "--ignore-window-size",
+        "--xre-path=%(xre_path)s", "--symbols-path=%(symbols_path)s", "--busybox=%(busybox)s",
+        "--total-chunks=%(total_chunks)s", "--this-chunk=%(this_chunk)s",
+        "%(test_manifest)s",
+    ],
+
+    "crashtest_options": [
+        "--adbpath=%(adbpath)s", "--b2gpath=%(b2gpath)s", "--emulator=%(emulator)s",
+        "--emulator-res=800x1000", "--logcat-dir=%(logcat_dir)s",
+        "--remote-webserver=%(remote_webserver)s", "--ignore-window-size",
+        "--xre-path=%(xre_path)s", "--symbols-path=%(symbols_path)s", "--busybox=%(busybox)s",
+        "--total-chunks=%(total_chunks)s", "--this-chunk=%(this_chunk)s",
+        "%(test_manifest)s",
+    ],
+
+    "xpcshell_options": [
+        "--adbpath=%(adbpath)s", "--b2gpath=%(b2gpath)s", "--emulator=%(emulator)s",
+        "--logcat-dir=%(logcat_dir)s", "--manifest=%(test_manifest)s", "--use-device-libs",
+        "--testing-modules-dir=%(modules_dir)s", "--symbols-path=%(symbols_path)s",
+        "--busybox=%(busybox)s", "--total-chunks=%(total_chunks)s", "--this-chunk=%(this_chunk)s",
+    ],
+}
new file mode 100644
--- /dev/null
+++ b/testing/config/mozharness/linux_config.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/.
+
+config = {
+    "reftest_options": [
+        "--appname=%(binary_path)s", "--utility-path=tests/bin",
+        "--extra-profile-file=tests/bin/plugins", "--symbols-path=%(symbols_path)s"
+    ],
+    "mochitest_options": [
+        "--appname=%(binary_path)s", "--utility-path=tests/bin",
+        "--extra-profile-file=tests/bin/plugins", "--symbols-path=%(symbols_path)s",
+        "--certificate-path=tests/certs", "--autorun", "--close-when-done",
+        "--console-level=INFO", "--setpref=webgl.force-enabled=true"
+    ],
+    "xpcshell_options": [
+        "--symbols-path=%(symbols_path)s",
+        "--test-plugin-path=%(test_plugin_path)s"
+    ],
+    "cppunittest_options": [
+        "--symbols-path=%(symbols_path)s",
+        "--xre-path=%(abs_app_dir)s"
+    ],
+    "jittest_options": [
+        "tests/bin/js",
+        "--no-slow",
+        "--no-progress",
+        "--tinderbox",
+        "--tbpl"
+    ],
+    "mozbase_options": [
+        "-b", "%(binary_path)s"
+    ],
+}
new file mode 100644
--- /dev/null
+++ b/testing/config/mozharness/mac_config.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/.
+
+config = {
+    "reftest_options": [
+        "--appname=%(binary_path)s", "--utility-path=tests/bin",
+        "--extra-profile-file=tests/bin/plugins", "--symbols-path=%(symbols_path)s"
+    ],
+    "mochitest_options": [
+        "--appname=%(binary_path)s", "--utility-path=tests/bin",
+        "--extra-profile-file=tests/bin/plugins", "--symbols-path=%(symbols_path)s",
+        "--certificate-path=tests/certs", "--autorun", "--close-when-done",
+        "--console-level=INFO"
+    ],
+    "xpcshell_options": [
+        "--symbols-path=%(symbols_path)s",
+        "--test-plugin-path=%(test_plugin_path)s"
+    ],
+    "cppunittest_options": [
+        "--symbols-path=%(symbols_path)s",
+        "--xre-path=%(abs_app_dir)s"
+    ],
+    "jittest_options": [
+        "tests/bin/js",
+        "--no-slow",
+        "--no-progress",
+        "--tinderbox",
+        "--tbpl"
+    ],
+    "mozbase_options": [
+        "-b", "%(binary_path)s"
+    ],
+}
new file mode 100644
--- /dev/null
+++ b/testing/config/mozharness/windows_config.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/.
+
+config = {
+    "reftest_options": [
+        "--appname=%(binary_path)s", "--utility-path=tests/bin",
+        "--extra-profile-file=tests/bin/plugins", "--symbols-path=%(symbols_path)s"
+    ],
+    "mochitest_options": [
+        "--appname=%(binary_path)s", "--utility-path=tests/bin",
+        "--extra-profile-file=tests/bin/plugins", "--symbols-path=%(symbols_path)s",
+        "--certificate-path=tests/certs", "--autorun", "--close-when-done",
+        "--console-level=INFO"
+    ],
+    "xpcshell_options": [
+        "--symbols-path=%(symbols_path)s",
+        "--test-plugin-path=%(test_plugin_path)s"
+    ],
+    "cppunittest_options": [
+        "--symbols-path=%(symbols_path)s",
+        "--xre-path=%(abs_app_dir)s"
+    ],
+    "jittest_options": [
+        "tests/bin/js",
+        "--no-slow",
+        "--no-progress",
+        "--tinderbox",
+        "--tbpl"
+    ],
+    "mozbase_options": [
+        "-b", "%(binary_path)s"
+    ],
+}
deleted file mode 100644
--- a/testing/config/mozharness_config.py
+++ /dev/null
@@ -1,28 +0,0 @@
-# This Source Code Form is subject to the terms of the Mozilla Public
-# License, v. 2.0. If a copy of the MPL was not distributed with this
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
-"""The config defined in this module is read by mozharness, which is a
-tool used to run many of the tests reporting to TBPL. This file is
-primarily useful for pushing custom test harness configurations to try.
-
-For example you can define a custom mochitest configuration by adding:
-    "mochitest_options": [
-        "--appname=%(binary_path)s", "--utility-path=tests/bin",
-        "--extra-profile-file=tests/bin/plugins", "--symbols-path=%(symbols_path)s",
-        "--certificate-path=tests/certs", "--autorun", "--close-when-done",
-        "--console-level=INFO", "--setpref=webgl.force-enabled=true"
-    ],
-
-Be warned that these values will be picked up by all platforms and changing them
-may result in unexpected behaviour. For example, the above will break B2G
-mochitests.
-
-You must also provide the complete command line to avoid errors. The official
-configuration files containing the default values live in:
-    https://hg.mozilla.org/build/mozharness/configs
-"""
-
-config = {
-    # Add custom mozharness config options here
-}