Bug 1269872 - Add gpu jobs to try. r=jmaher draft
authorArmen Zambrano Gasparnian <armenzg@mozilla.com>
Tue, 10 May 2016 11:44:02 -0400
changeset 14160 3f392def6271e324fed7bae6e04d69c60e6e4911
parent 14158 cfe4c07f81613cb40a99659d922d7184be51d14f
child 14161 6faea28d442614257f4a5293da2e9a14a13096cf
push id72
push userarmenzg@mozilla.com
push dateThu, 12 May 2016 14:20:53 +0000
reviewersjmaher
bugs1269872
Bug 1269872 - Add gpu jobs to try. r=jmaher MozReview-Commit-ID: 74LBtL4D4aE
mozilla-tests/config.py
mozilla-tests/mobile_config.py
--- a/mozilla-tests/config.py
+++ b/mozilla-tests/config.py
@@ -663,16 +663,41 @@ MOCHITEST_WEBGL_E10S = [
         'use_mozharness': True,
         'script_path': 'scripts/desktop_unittest.py',
         'extra_args': ['--mochitest-suite', 'mochitest-gl', '--e10s'],
         'blob_upload': True,
         'script_maxtime': 5400,
     }),
 ]
 
+MOCHITEST_GPU = [
+    ('mochitest-gpu', {
+        'use_mozharness': True,
+        'script_path': 'scripts/desktop_unittest.py',
+        'extra_args': ['--mochitest-suite',
+                       'mochitest-plain,mochitest-chrome,mochitest-browser-chrome',
+                       '--subsuite=gpu',
+                       '--disable-e10s'],
+        'blob_upload': True,
+        'script_maxtime': 7200,
+    }),
+]
+
+MOCHITEST_GPU_E10S = [
+    ('mochitest-gpu-e10s', {
+        'use_mozharness': True,
+        'script_path': 'scripts/desktop_unittest.py',
+        'extra_args': ['--mochitest-suite',
+                       'mochitest-plain,mochitest-chrome,mochitest-browser-chrome',
+                       '--subsuite=gpu'],
+        'blob_upload': True,
+        'script_maxtime': 7200,
+    }),
+]
+
 ### Mochitest Combinations ###
 MOCHITEST = MOCHITEST_WO_BC + MOCHITEST_OTHER
 
 ### Mozbase ###
 MOZBASE = [
     ('mozbase', {
         'use_mozharness': True,
         'script_path': 'scripts/desktop_unittest.py',
@@ -925,16 +950,22 @@ PLATFORM_UNITTEST_VARS = {
         'enable_debug_unittests': True,
         'ubuntu32_vm': {
             'opt_unittest_suites': UNITTEST_SUITES['opt_unittest_suites'] + JITTEST_CHUNKED + \
                                    MARIONETTE + REFTEST_NOACCEL_TWO_CHUNKS + REFTEST_TWO_CHUNKS + \
                                    WEB_PLATFORM_REFTESTS + WEB_PLATFORM_TESTS_CHUNKED,
             'debug_unittest_suites': UNITTEST_SUITES['debug_unittest_suites'] + JITTEST_CHUNKED + \
                                      REFTEST_FOUR_CHUNKS,
             'suite_config': {
+                'mochitest-gpu': {
+                    'config_files': ["unittests/linux_unittest.py"],
+                },
+                'mochitest-gpu-e10s': {
+                    'config_files': ["unittests/linux_unittest.py"],
+                },
                 'cppunit': {
                     'config_files': ["unittests/linux_unittest.py"],
                 },
                 'gtest': {
                     'config_files': ["unittests/linux_unittest.py"],
                 },
                 'jittest': {
                     'config_files': ["unittests/linux_unittest.py"],
@@ -1049,16 +1080,22 @@ PLATFORM_UNITTEST_VARS = {
         'ubuntu64_hw': {},
         'ubuntu64_vm': {
             'opt_unittest_suites': UNITTEST_SUITES['opt_unittest_suites'] + JITTEST_CHUNKED + \
                                    MARIONETTE + REFTEST_NOACCEL_TWO_CHUNKS + REFTEST_TWO_CHUNKS + \
                                    WEB_PLATFORM_REFTESTS + WEB_PLATFORM_TESTS_CHUNKED,
             'debug_unittest_suites': UNITTEST_SUITES['debug_unittest_suites'] + JITTEST_CHUNKED + \
                                     REFTEST_FOUR_CHUNKS,
             'suite_config': {
+                'mochitest-gpu': {
+                    'config_files': ["unittests/linux_unittest.py"],
+                },
+                'mochitest-gpu-e10s': {
+                    'config_files': ["unittests/linux_unittest.py"],
+                },
                 'cppunit': {
                     'config_files': ["unittests/linux_unittest.py"],
                 },
                 'jittest': {
                     'config_files': ["unittests/linux_unittest.py"],
                 },
                 'luciddream': {
                     'config_files': ["luciddream/linux_config.py"],
@@ -1580,16 +1617,22 @@ PLATFORM_UNITTEST_VARS = {
         'enable_debug_unittests': True,
         'xp_ix': {
             'opt_unittest_suites': UNITTEST_SUITES['opt_unittest_suites'] + JITTEST + \
                                    MARIONETTE + REFTEST_ONE_CHUNK + WEB_PLATFORM_REFTESTS + \
                                    WEB_PLATFORM_TESTS_CHUNKED,
             'debug_unittest_suites': UNITTEST_SUITES['debug_unittest_suites'] + JITTEST + \
                                      REFTEST_ONE_CHUNK,
             'suite_config': {
+                'mochitest-gpu': {
+                    'config_files': ["unittests/win_unittest.py"],
+                },
+                'mochitest-gpu-e10s': {
+                    'config_files': ["unittests/win_unittest.py"],
+                },
                 'cppunit': {
                     'config_files': ["unittests/win_unittest.py"],
                 },
                 'gtest': {
                     'config_files': ["unittests/win_unittest.py"],
                 },
                 'jittest': {
                     'config_files': ["unittests/win_unittest.py"],
@@ -1700,16 +1743,22 @@ PLATFORM_UNITTEST_VARS = {
         },
         'win7_ix': {
             'opt_unittest_suites': UNITTEST_SUITES['opt_unittest_suites'] + JITTEST + MARIONETTE + \
                                    REFTEST_NOACCEL + REFTEST_ONE_CHUNK + WEB_PLATFORM_REFTESTS + \
                                    WEB_PLATFORM_TESTS_CHUNKED,
             'debug_unittest_suites': UNITTEST_SUITES['debug_unittest_suites'] + JITTEST + \
                                      REFTEST_ONE_CHUNK,
             'suite_config': {
+                'mochitest-gpu': {
+                    'config_files': ["unittests/win_unittest.py"],
+                },
+                'mochitest-gpu-e10s': {
+                    'config_files': ["unittests/win_unittest.py"],
+                },
                 'cppunit': {
                     'config_files': ["unittests/win_unittest.py"],
                 },
                 'gtest': {
                     'config_files': ["unittests/win_unittest.py"],
                 },
                 'jittest': {
                     'config_files': ["unittests/win_unittest.py"],
@@ -1820,16 +1869,22 @@ PLATFORM_UNITTEST_VARS = {
         },
         'win7_vm': {
             'opt_unittest_suites': UNITTEST_SUITES['opt_unittest_suites'] + JITTEST + MARIONETTE + \
                                    REFTEST_NOACCEL + REFTEST_ONE_CHUNK + WEB_PLATFORM_REFTESTS + \
                                    WEB_PLATFORM_TESTS_CHUNKED,
             'debug_unittest_suites': UNITTEST_SUITES['debug_unittest_suites'] + JITTEST + \
                                      REFTEST_ONE_CHUNK,
             'suite_config': {
+                'mochitest-gpu': {
+                    'config_files': ["unittests/win_unittest.py"],
+                },
+                'mochitest-gpu-e10s': {
+                    'config_files': ["unittests/win_unittest.py"],
+                },
                 'cppunit': {
                     'config_files': ["unittests/win_unittest.py"],
                 },
                 'gtest': {
                     'config_files': ["unittests/win_unittest.py"],
                 },
                 'jittest': {
                     'config_files': ["unittests/win_unittest.py"],
@@ -1940,16 +1995,22 @@ PLATFORM_UNITTEST_VARS = {
         },
         'win7_vm_gfx': {
             'opt_unittest_suites': UNITTEST_SUITES['opt_unittest_suites'] + JITTEST + MARIONETTE + \
                                    REFTEST_NOACCEL + REFTEST_ONE_CHUNK + WEB_PLATFORM_REFTESTS + \
                                    WEB_PLATFORM_TESTS_CHUNKED,
             'debug_unittest_suites': UNITTEST_SUITES['debug_unittest_suites'] + JITTEST + \
                                      REFTEST_ONE_CHUNK,
             'suite_config': {
+                'mochitest-gpu': {
+                    'config_files': ["unittests/win_unittest.py"],
+                },
+                'mochitest-gpu-e10s': {
+                    'config_files': ["unittests/win_unittest.py"],
+                },
                 'cppunit': {
                     'config_files': ["unittests/win_unittest.py"],
                 },
                 'gtest': {
                     'config_files': ["unittests/win_unittest.py"],
                 },
                 'jittest': {
                     'config_files': ["unittests/win_unittest.py"],
@@ -2071,16 +2132,22 @@ PLATFORM_UNITTEST_VARS = {
         'enable_debug_unittests': True,
         'win8_64': {
             'opt_unittest_suites': UNITTEST_SUITES['opt_unittest_suites'] + JITTEST + MARIONETTE + \
                                    REFTEST_NOACCEL + REFTEST_ONE_CHUNK + WEB_PLATFORM_REFTESTS + \
                                    WEB_PLATFORM_TESTS_CHUNKED,
             'debug_unittest_suites': UNITTEST_SUITES['debug_unittest_suites'] + JITTEST + \
                                      REFTEST_ONE_CHUNK,
             'suite_config': {
+                'mochitest-gpu': {
+                    'config_files': ["unittests/win_unittest.py"],
+                },
+                'mochitest-gpu-e10s': {
+                    'config_files': ["unittests/win_unittest.py"],
+                },
                 'cppunit': {
                     'config_files': ["unittests/win_unittest.py"],
                 },
                 'gtest': {
                     'config_files': ["unittests/win_unittest.py"],
                 },
                 'jittest': {
                     'config_files': ["unittests/win_unittest.py"],
@@ -2191,16 +2258,22 @@ PLATFORM_UNITTEST_VARS = {
         },
         'win10_64': {
             'opt_unittest_suites': UNITTEST_SUITES['opt_unittest_suites'] + JITTEST + MARIONETTE + \
                                    REFTEST_NOACCEL + REFTEST_ONE_CHUNK + WEB_PLATFORM_REFTESTS + \
                                    WEB_PLATFORM_TESTS_CHUNKED,
             'debug_unittest_suites': UNITTEST_SUITES['debug_unittest_suites'] + JITTEST + \
                                      REFTEST_ONE_CHUNK,
             'suite_config': {
+                'mochitest-gpu': {
+                    'config_files': ["unittests/win_unittest.py"],
+                },
+                'mochitest-gpu-e10s': {
+                    'config_files': ["unittests/win_unittest.py"],
+                },
                 'cppunit': {
                     'config_files': ["unittests/win_unittest.py"],
                 },
                 'gtest': {
                     'config_files': ["unittests/win_unittest.py"],
                 },
                 'jittest': {
                     'config_files': ["unittests/win_unittest.py"],
@@ -2317,16 +2390,22 @@ PLATFORM_UNITTEST_VARS = {
         'builds_before_reboot': 1,
         'enable_opt_unittests': True,
         'enable_debug_unittests': True,
         'snowleopard': {
             'opt_unittest_suites': UNITTEST_SUITES['opt_unittest_suites'] + JITTEST + REFTEST_ONE_CHUNK,
             'debug_unittest_suites': UNITTEST_SUITES['debug_unittest_suites'] + JITTEST + \
                                      REFTEST_ONE_CHUNK,
             'suite_config': {
+                'mochitest-gpu': {
+                    'config_files': ["unittests/mac_unittest.py"],
+                },
+                'mochitest-gpu-e10s': {
+                    'config_files': ["unittests/mac_unittest.py"],
+                },
                 'cppunit': {
                     'config_files': ["unittests/mac_unittest.py"],
                 },
                 'gtest': {
                     'config_files': ["unittests/mac_unittest.py"],
                 },
                 'jittest': {
                     'config_files': ["unittests/mac_unittest.py"],
@@ -2434,16 +2513,22 @@ PLATFORM_UNITTEST_VARS = {
                     'config_files': ["unittests/mac_unittest.py"],
                 },
             },
         },
         'yosemite': {
             'opt_unittest_suites': UNITTEST_SUITES['opt_unittest_suites'] + REFTEST_ONE_CHUNK,
             'debug_unittest_suites': UNITTEST_SUITES['debug_unittest_suites'] + REFTEST_ONE_CHUNK,
             'suite_config': {
+                'mochitest-gpu': {
+                    'config_files': ["unittests/mac_unittest.py"],
+                },
+                'mochitest-gpu-e10s': {
+                    'config_files': ["unittests/mac_unittest.py"],
+                },
                 'cppunit': {
                     'config_files': ["unittests/mac_unittest.py"],
                 },
                 'gtest': {
                     'config_files': ["unittests/mac_unittest.py"],
                 },
                 'jittest': {
                     'config_files': ["unittests/mac_unittest.py"],
@@ -2548,16 +2633,22 @@ PLATFORM_UNITTEST_VARS = {
                     'config_files': ["unittests/mac_unittest.py"],
                 },
             },
         },
         'yosemite_r7': {
             'opt_unittest_suites': UNITTEST_SUITES['opt_unittest_suites'] + REFTEST_ONE_CHUNK,
             'debug_unittest_suites': UNITTEST_SUITES['debug_unittest_suites'] + REFTEST_ONE_CHUNK,
             'suite_config': {
+                'mochitest-gpu': {
+                    'config_files': ["unittests/mac_unittest.py"],
+                },
+                'mochitest-gpu-e10s': {
+                    'config_files': ["unittests/mac_unittest.py"],
+                },
                 'cppunit': {
                     'config_files': ["unittests/mac_unittest.py"],
                 },
                 'gtest': {
                     'config_files': ["unittests/mac_unittest.py"],
                 },
                 'jittest': {
                     'config_files': ["unittests/mac_unittest.py"],
@@ -3098,16 +3189,40 @@ for branch_name in ('try', 'mozilla-cent
         if platform == 'linux64-asan':
             continue
         for slave_platform in PLATFORMS[platform]['slave_platforms']:
             if slave_platform in ('ubuntu64_vm', 'ubuntu64-asan_vm'):
                 continue
             if slave_platform in branch['platforms'][platform]:
                 branch['platforms'][platform][slave_platform]['opt_unittest_suites'] += MOCHITEST_BC_SCREENSHOTS
 
+# Enable gpu jobs on try
+for branch_name in ('try',):
+    branch = BRANCHES[branch_name]
+    for platform in PLATFORMS.keys():
+        # We don't want these jobs for these platforms
+        if platform in ('linux64-asan', 'linux64-cc', 'linux64-tsan'):
+            continue
+
+        platform_info = PLATFORMS.get(platform)
+        for slave_platform in platform_info.get('slave_platforms'):
+            if slave_platform in branch['platforms'][platform]:
+                branch['platforms'][platform][slave_platform]['opt_unittest_suites'] += \
+                    MOCHITEST_GPU
+                branch['platforms'][platform][slave_platform]['opt_unittest_suites'] += \
+                    MOCHITEST_GPU_E10S
+
+                # Do not add Linux x64 debug since it is running on TaskCluster
+                if slave_platform == 'ubuntu64_vm':
+                    continue
+                branch['platforms'][platform][slave_platform]['debug_unittest_suites'] += \
+                    MOCHITEST_GPU
+                branch['platforms'][platform][slave_platform]['debug_unittest_suites'] += \
+                    MOCHITEST_GPU_E10S
+
 
 ### Test suites that only run on Cedar ###
 # Turn off most suites on cedar (bug 1198400)
 for platform in PLATFORMS.keys():
     if platform not in BRANCHES['cedar']['platforms']:
         continue
     for slave_platform in PLATFORMS[platform]['slave_platforms']:
         if slave_platform in BRANCHES['cedar']['platforms'][platform]:
--- a/mozilla-tests/mobile_config.py
+++ b/mozilla-tests/mobile_config.py
@@ -2684,16 +2684,32 @@ ANDROID_2_3_MOCHITEST_MEDIA = [
         ],
         'blob_upload': True,
         'timeout': 2400,
         'script_maxtime': 14400,
         },
     ),
 ]
 
+ANDROID_4_3_GL_CHROME = [
+    ('gl-chrome', {
+        'use_mozharness': True,
+        'script_path': 'scripts/android_emulator_unittest.py',
+        'extra_args': [
+            '--cfg', 'android/androidarm.py',
+            '--test-suite', 'mochitest-plain',
+            '--test-suite', 'mochitest-chrome',
+            '--subsuite=gpu',
+        ],
+        'blob_upload': True,
+        'timeout': 2400,
+        'script_maxtime': 14400,
+    }),
+]
+
 for suite in ANDROID_2_3_MOZHARNESS_DICT:
     if suite[0].startswith('mochitest-gl'):
         continue
     elif suite[0].startswith('plain-reftest'):
         ANDROID_2_3_ARMV6_C3_DICT['opt_unittest_suites'].append(suite)
     elif suite[0].startswith('crashtest'):
         ANDROID_2_3_ARMV6_C3_DICT['opt_unittest_suites'].append(suite)
     elif suite[0].startswith('jsreftest'):
@@ -3011,16 +3027,27 @@ for name, branch in items_at_least(BRANC
             'debug_unittest_suites': deepcopy(ANDROID_4_3_C3_TRUNK_DICT['debug_unittest_suites'] + ANDROID_4_3_MOZHARNESS_DEBUG_TRUNK),}
             BRANCHES[name]['platforms'][platform]['ubuntu64_vm_armv7_mobile'] = {
                 'opt_unittest_suites': deepcopy(ANDROID_4_3_AWS_DICT['opt_unittest_suites']),
                 'debug_unittest_suites': deepcopy(ANDROID_4_3_AWS_TRUNK_DICT['debug_unittest_suites']),
             }
             BRANCHES[name]['platforms'][platform]['ubuntu64_vm_armv7_large']['opt_unittest_suites'] += ANDROID_4_3_MOCHITEST_MEDIA
             BRANCHES[name]['platforms'][platform]['ubuntu64_vm_armv7_large']['debug_unittest_suites'] += ANDROID_4_3_MOCHITEST_MEDIA
 
+# Add gl-chrome on try for Android 4.3 API 15+
+for name, branch in items_at_least(BRANCHES, 'gecko_version', 49):
+    if name not in ('try' ):
+       continue
+    for platform in branch['platforms']:
+        if platform not in branch['platforms'] or platform not in ('android-api-15',):
+            continue
+        branch['platforms'][platform]['ubuntu64_vm_armv7_mobile']['opt_unittest_suites'] += ANDROID_4_3_GL_CHROME
+        branch['platforms'][platform]['ubuntu64_vm_armv7_mobile']['debug_unittest_suites'] += ANDROID_4_3_GL_CHROME
+
+
 # Bug 1250999 - releng - releng work for dropping api 9-10
 # disable api-9-10 mobile builds on >= 48 based branches
 for name, branch in items_at_least(BRANCHES, 'gecko_version', 48):
     if 'android-api-9' in branch['platforms']:
         del branch['platforms']['android-api-9']
 
 def remove_suite_from_slave_platform(BRANCHES, PLATFORMS, suite_to_remove, slave_platform, branches_to_keep=[]):
     """Remove suites named like |suite_to_remove| from all branches on slave platforms named like |slave_platform|.