Update masters after the tryserver split.

Also replace deprecated linux_chromium_rel with linux_chromium_rel_swarming, while I'm at it.

[email protected], [email protected]
BUG=395196

Review URL: https://codereview.chromium.org/415323002

git-svn-id: svn://svn.chromium.org/chrome/trunk/src@285752 0039d316-1c4b-4281-b951-d872f2087c98
diff --git a/PRESUBMIT.py b/PRESUBMIT.py
index ecb3538..72aa2484 100644
--- a/PRESUBMIT.py
+++ b/PRESUBMIT.py
@@ -1418,13 +1418,29 @@
 def GetTryServerMasterForBot(bot):
   """Returns the Try Server master for the given bot.
 
-  Assumes that most Try Servers are on the tryserver.chromium master."""
-  non_default_master_map = {
+  It tries to guess the master from the bot name, but may still fail
+  and return None.  There is no longer a default master.
+  """
+  # Potentially ambiguous bot names are listed explicitly.
+  master_map = {
       'linux_gpu': 'tryserver.chromium.gpu',
       'mac_gpu': 'tryserver.chromium.gpu',
       'win_gpu': 'tryserver.chromium.gpu',
+      'chromium_presubmit': 'tryserver.chromium.linux',
+      'blink_presubmit': 'tryserver.chromium.linux',
+      'tools_build_presubmit': 'tryserver.chromium.linux',
   }
-  return non_default_master_map.get(bot, 'tryserver.chromium')
+  master = master_map.get(bot)
+  if not master:
+    if 'gpu' in bot:
+      master = 'tryserver.chromium.gpu'
+    elif 'linux' in bot or 'android' in bot or 'presubmit' in bot:
+      master = 'tryserver.chromium.linux'
+    elif 'win' in bot:
+      master = 'tryserver.chromium.win'
+    elif 'mac' in bot or 'ios' in bot:
+      master = 'tryserver.chromium.mac'
+  return master
 
 
 def GetDefaultTryConfigs(bots=None):
@@ -1495,7 +1511,7 @@
       'linux_chromium_chromeos_rel': ['defaulttests'],
       'linux_chromium_compile_dbg': ['defaulttests'],
       'linux_chromium_gn_rel': ['defaulttests'],
-      'linux_chromium_rel': ['defaulttests'],
+      'linux_chromium_rel_swarming': ['defaulttests'],
       'linux_chromium_clang_dbg': ['defaulttests'],
       'linux_gpu': ['defaulttests'],
       'linux_nacl_sdk_build': ['compile'],
@@ -1577,7 +1593,7 @@
       'linux_chromium_chromeos_rel',
       'linux_chromium_clang_dbg',
       'linux_chromium_gn_rel',
-      'linux_chromium_rel',
+      'linux_chromium_rel_swarming',
       'linux_gpu',
       'mac_chromium_compile_dbg',
       'mac_chromium_rel',
diff --git a/PRESUBMIT_test.py b/PRESUBMIT_test.py
index f81b316a..10d0690 100755
--- a/PRESUBMIT_test.py
+++ b/PRESUBMIT_test.py
@@ -648,5 +648,118 @@
                       "'%s' not found in '%s'" % (expected_error, actual_error))
 
 
+class TryServerMasterTest(unittest.TestCase):
+  def testTryServerMasters(self):
+    bots = {
+        'tryserver.chromium.gpu': [
+            'mac_gpu',
+            'mac_gpu_triggered_tests',
+            'linux_gpu',
+            'linux_gpu_triggered_tests',
+            'win_gpu',
+            'win_gpu_triggered_tests',
+        ],
+        'tryserver.chromium.mac': [
+            'ios_dbg_simulator',
+            'ios_rel_device',
+            'ios_rel_device_ninja',
+            'mac_asan',
+            'mac_asan_64',
+            'mac_chromium_compile_dbg',
+            'mac_chromium_compile_rel',
+            'mac_chromium_dbg',
+            'mac_chromium_rel',
+            'mac_chromium_rel_swarming',
+            'mac_nacl_sdk',
+            'mac_nacl_sdk_build',
+            'mac_rel_naclmore',
+            'mac_valgrind',
+            'mac_x64_rel',
+            'mac_xcodebuild',
+        ],
+        'tryserver.chromium.linux': [
+            'android_aosp',
+            'android_chromium_gn_compile_dbg',
+            'android_chromium_gn_compile_rel',
+            'android_clang_dbg',
+            'android_dbg',
+            'android_dbg_recipe',
+            'android_dbg_triggered_tests',
+            'android_dbg_triggered_tests_recipe',
+            'android_fyi_dbg',
+            'android_fyi_dbg_triggered_tests',
+            'android_rel',
+            'android_rel_triggered_tests',
+            'android_x86_dbg',
+            'blink_android_compile_dbg',
+            'blink_android_compile_rel',
+            'blink_presubmit',
+            'chromium_presubmit',
+            'linux_arm_cross_compile',
+            'linux_arm_tester',
+            'linux_asan',
+            'linux_browser_asan',
+            'linux_chromeos_asan',
+            'linux_chromeos_browser_asan',
+            'linux_chromeos_valgrind',
+            'linux_chromium_chromeos_clang_dbg',
+            'linux_chromium_chromeos_clang_rel',
+            'linux_chromium_chromeos_dbg',
+            'linux_chromium_chromeos_rel',
+            'linux_chromium_clang_dbg',
+            'linux_chromium_clang_rel',
+            'linux_chromium_compile_dbg',
+            'linux_chromium_compile_rel',
+            'linux_chromium_dbg',
+            'linux_chromium_gn_dbg',
+            'linux_chromium_gn_rel',
+            'linux_chromium_rel',
+            'linux_chromium_rel_swarming',
+            'linux_chromium_trusty32_dbg',
+            'linux_chromium_trusty32_rel',
+            'linux_chromium_trusty_dbg',
+            'linux_chromium_trusty_rel',
+            'linux_clang_tsan',
+            'linux_ecs_ozone',
+            'linux_layout',
+            'linux_layout_asan',
+            'linux_layout_rel',
+            'linux_layout_rel_32',
+            'linux_nacl_sdk',
+            'linux_nacl_sdk_bionic',
+            'linux_nacl_sdk_bionic_build',
+            'linux_nacl_sdk_build',
+            'linux_redux',
+            'linux_rel_naclmore',
+            'linux_rel_precise32',
+            'linux_valgrind',
+            'tools_build_presubmit',
+        ],
+        'tryserver.chromium.win': [
+            'win8_aura',
+            'win8_chromium_dbg',
+            'win8_chromium_rel',
+            'win_chromium_compile_dbg',
+            'win_chromium_compile_rel',
+            'win_chromium_dbg',
+            'win_chromium_rel',
+            'win_chromium_rel',
+            'win_chromium_rel_swarming',
+            'win_chromium_rel_swarming',
+            'win_chromium_x64_dbg',
+            'win_chromium_x64_rel',
+            'win_drmemory',
+            'win_nacl_sdk',
+            'win_nacl_sdk_build',
+            'win_rel_naclmore',
+         ],
+    }
+    for master, bots in bots.iteritems():
+      for bot in bots:
+        self.assertEqual(master, PRESUBMIT.GetTryServerMasterForBot(bot),
+                         'bot=%s: expected %s, computed %s' % (
+            bot, master, PRESUBMIT.GetTryServerMasterForBot(bot)))
+
+
 if __name__ == '__main__':
   unittest.main()
diff --git a/ash/PRESUBMIT.py b/ash/PRESUBMIT.py
index 8753f92..9132e99 100644
--- a/ash/PRESUBMIT.py
+++ b/ash/PRESUBMIT.py
@@ -10,7 +10,7 @@
 
 def GetPreferredTryMasters(project, change):
   return {
-    'tryserver.chromium': {
+    'tryserver.chromium.linux': {
       'linux_chromium_chromeos_clang_dbg': set(['defaulttests']),
     }
   }
diff --git a/base/PRESUBMIT.py b/base/PRESUBMIT.py
index 1a1cce7..931f94a 100644
--- a/base/PRESUBMIT.py
+++ b/base/PRESUBMIT.py
@@ -50,9 +50,13 @@
 
 def GetPreferredTryMasters(project, change):
   return {
-    'tryserver.chromium': {
-      'linux_chromium_rel': set(['defaulttests']),
+    'tryserver.chromium.linux': {
+      'linux_chromium_rel_swarming': set(['defaulttests']),
+    },
+    'tryserver.chromium.mac': {
       'mac_chromium_rel': set(['defaulttests']),
+    },
+    'tryserver.chromium.win': {
       'win_chromium_rel': set(['defaulttests']),
     }
   }
diff --git a/cc/PRESUBMIT.py b/cc/PRESUBMIT.py
index 3397313bd..f9a0acb 100644
--- a/cc/PRESUBMIT.py
+++ b/cc/PRESUBMIT.py
@@ -293,7 +293,7 @@
 
 def GetPreferredTryMasters(project, change):
   return {
-    'tryserver.chromium': {
+    'tryserver.blink': {
       'linux_blink_rel': set(['defaulttests']),
     },
     'tryserver.chromium.gpu': {
diff --git a/chrome/browser/policy/PRESUBMIT.py b/chrome/browser/policy/PRESUBMIT.py
index eb7515e..ea93f85 100644
--- a/chrome/browser/policy/PRESUBMIT.py
+++ b/chrome/browser/policy/PRESUBMIT.py
@@ -10,7 +10,7 @@
 
 def GetPreferredTryMasters(project, change):
   return {
-    'tryserver.chromium': {
+    'tryserver.chromium.linux': {
       'linux_chromium_chromeos_rel': set(['defaulttests']),
       'linux_chromium_chromeos_clang_dbg': set(['defaulttests']),
     }
diff --git a/chrome/browser/sync/PRESUBMIT.py b/chrome/browser/sync/PRESUBMIT.py
index a5b9f43..137ad33 100644
--- a/chrome/browser/sync/PRESUBMIT.py
+++ b/chrome/browser/sync/PRESUBMIT.py
@@ -10,9 +10,13 @@
 
 def GetPreferredTryMasters(project, change):
   return {
-    'tryserver.chromium': {
-      'linux_chromium_rel': set(['defaulttests']),
+    'tryserver.chromium.linux': {
+      'linux_chromium_rel_swarming': set(['defaulttests']),
+    },
+    'tryserver.chromium.mac': {
       'mac_chromium_rel': set(['defaulttests']),
+    },
+    'tryserver.chromium.win': {
       'win_chromium_rel': set(['defaulttests']),
     }
   }
diff --git a/chrome/browser/ui/libgtk2ui/PRESUBMIT.py b/chrome/browser/ui/libgtk2ui/PRESUBMIT.py
index 99a2232..9704b39 100755
--- a/chrome/browser/ui/libgtk2ui/PRESUBMIT.py
+++ b/chrome/browser/ui/libgtk2ui/PRESUBMIT.py
@@ -12,7 +12,7 @@
 
 def GetPreferredTryMasters(project, change):
   return {
-    'tryserver.chromium': {
-      'linux_chromium_rel': set(['defaulttests']),
+    'tryserver.chromium.linux': {
+      'linux_chromium_rel_swarming': set(['defaulttests']),
     }
   }
diff --git a/chrome/browser/ui/views/PRESUBMIT.py b/chrome/browser/ui/views/PRESUBMIT.py
index 4b4c964..49c28be 100644
--- a/chrome/browser/ui/views/PRESUBMIT.py
+++ b/chrome/browser/ui/views/PRESUBMIT.py
@@ -10,7 +10,7 @@
 
 def GetPreferredTryMasters(project, change):
   return {
-    'tryserver.chromium': {
+    'tryserver.chromium.linux': {
       'linux_chromium_chromeos_rel': set(['defaulttests']),
     }
   }
diff --git a/chrome/browser/ui/webui/PRESUBMIT.py b/chrome/browser/ui/webui/PRESUBMIT.py
index 3c61a3e0..ca67923 100644
--- a/chrome/browser/ui/webui/PRESUBMIT.py
+++ b/chrome/browser/ui/webui/PRESUBMIT.py
@@ -10,7 +10,7 @@
 
 def GetPreferredTryMasters(project, change):
   return {
-    'tryserver.chromium': {
+    'tryserver.chromium.linux': {
       'linux_chromium_chromeos_rel': set(['defaulttests']),
     }
   }
diff --git a/chrome/common/net/PRESUBMIT.py b/chrome/common/net/PRESUBMIT.py
index 61a8cf2..f5ec5c1 100644
--- a/chrome/common/net/PRESUBMIT.py
+++ b/chrome/common/net/PRESUBMIT.py
@@ -10,9 +10,13 @@
 
 def GetPreferredTryMasters(project, change):
   return {
-    'tryserver.chromium': {
-      'linux_chromium_rel': set(['defaulttests']),
+    'tryserver.chromium.linux': {
+      'linux_chromium_rel_swarming': set(['defaulttests']),
+    },
+    'tryserver.chromium.mac': {
       'mac_chromium_rel': set(['defaulttests']),
+    },
+    'tryserver.chromium.win': {
       'win_chromium_rel': set(['defaulttests']),
     }
   }
diff --git a/crypto/PRESUBMIT.py b/crypto/PRESUBMIT.py
index ce3988e50..a2a5af9 100644
--- a/crypto/PRESUBMIT.py
+++ b/crypto/PRESUBMIT.py
@@ -11,7 +11,7 @@
 def GetPreferredTryMasters(project, change):
   # Changes in crypto often need a corresponding OpenSSL edit.
   return {
-    'tryserver.chromium': {
+    'tryserver.chromium.linux': {
       'linux_redux': set(['defaulttests']),
     }
   }
diff --git a/extensions/browser/PRESUBMIT.py b/extensions/browser/PRESUBMIT.py
index 659c176..689b8ad37 100644
--- a/extensions/browser/PRESUBMIT.py
+++ b/extensions/browser/PRESUBMIT.py
@@ -12,7 +12,7 @@
 
 def GetPreferredTryMasters(project, change):
   return {
-    'tryserver.chromium': {
+    'tryserver.chromium.linux': {
       'linux_chromium_chromeos_rel': set(['defaulttests']),
     }
   }
diff --git a/jingle/PRESUBMIT.py b/jingle/PRESUBMIT.py
index 4ef2a1b3..efa2c48 100644
--- a/jingle/PRESUBMIT.py
+++ b/jingle/PRESUBMIT.py
@@ -10,9 +10,13 @@
 
 def GetPreferredTryMasters(project, change):
   return {
-    'tryserver.chromium': {
-      'linux_chromium_rel': set(['defaulttests']),
+    'tryserver.chromium.linux': {
+      'linux_chromium_rel_swarming': set(['defaulttests']),
+    },
+    'tryserver.chromium.mac': {
       'mac_chromium_rel': set(['defaulttests']),
+    },
+    'tryserver.chromium.win': {
       'win_chromium_rel': set(['defaulttests']),
     }
   }
diff --git a/native_client_sdk/PRESUBMIT.py b/native_client_sdk/PRESUBMIT.py
index ac9fd61..4fd79cc 100644
--- a/native_client_sdk/PRESUBMIT.py
+++ b/native_client_sdk/PRESUBMIT.py
@@ -40,11 +40,15 @@
 
 def GetPreferredTryMasters(project, change):
   return {
-    'tryserver.chromium': {
+    'tryserver.chromium.linux': {
       'linux_nacl_sdk': set(['defaulttests']),
       'linux_nacl_sdk_build': set(['defaulttests']),
+    },
+    'tryserver.chromium.win': {
       'win_nacl_sdk': set(['defaulttests']),
       'win_nacl_sdk_build': set(['defaulttests']),
+    },
+    'tryserver.chromium.mac': {
       'mac_nacl_sdk': set(['defaulttests']),
       'mac_nacl_sdk_build': set(['defaulttests']),
     }
diff --git a/net/PRESUBMIT.py b/net/PRESUBMIT.py
index ce5542f1..55fa983 100644
--- a/net/PRESUBMIT.py
+++ b/net/PRESUBMIT.py
@@ -10,15 +10,19 @@
 
 def GetPreferredTryMasters(project, change):
   masters = {
-    'tryserver.chromium': {
-      'linux_chromium_rel': set(['defaulttests']),
+    'tryserver.chromium.linux': {
+      'linux_chromium_rel_swarming': set(['defaulttests']),
+    },
+    'tryserver.chromium.mac': {
       'mac_chromium_rel': set(['defaulttests']),
+    },
+    'tryserver.chromium.win': {
       'win_chromium_rel': set(['defaulttests']),
     }
   }
   # Changes that touch NSS files will likely need a corresponding OpenSSL edit.
   # Conveniently, this one glob also matches _openssl.* changes too.
   if any('nss' in f.LocalPath() for f in change.AffectedFiles()):
-    masters['tryserver.chromium'].setdefault(
+    masters['tryserver.chromium.linux'].setdefault(
       'linux_redux', set()).add('defaulttests')
   return masters
diff --git a/sync/PRESUBMIT.py b/sync/PRESUBMIT.py
index f82e95a..53c8d45e 100644
--- a/sync/PRESUBMIT.py
+++ b/sync/PRESUBMIT.py
@@ -10,9 +10,13 @@
 
 def GetPreferredTryMasters(project, change):
   return {
-    'tryserver.chromium': {
-      'linux_chromium_rel': set(['defaulttests']),
+    'tryserver.chromium.linux': {
+      'linux_chromium_rel_swarming': set(['defaulttests']),
+    },
+    'tryserver.chromium.mac': {
       'mac_chromium_rel': set(['defaulttests']),
+    },
+    'tryserver.chromium.win': {
       'win_chromium_rel': set(['defaulttests']),
     }
   }
diff --git a/third_party/tcmalloc/PRESUBMIT.py b/third_party/tcmalloc/PRESUBMIT.py
index f9c2c5d..dccfde6 100755
--- a/third_party/tcmalloc/PRESUBMIT.py
+++ b/third_party/tcmalloc/PRESUBMIT.py
@@ -10,7 +10,7 @@
 
 def GetPreferredTryMasters(project, change):
   return {
-    'tryserver.chromium': {
+    'tryserver.chromium.linux': {
       'linux_valgrind': set(['defaulttests']),
     }
   }
diff --git a/tools/lsan/PRESUBMIT.py b/tools/lsan/PRESUBMIT.py
index 248cdaf4..e7891ff 100644
--- a/tools/lsan/PRESUBMIT.py
+++ b/tools/lsan/PRESUBMIT.py
@@ -34,8 +34,10 @@
 
 def GetPreferredTryMasters(project, change):
   return {
-    'tryserver.chromium': {
+    'tryserver.chromium.linux': {
       'linux_asan': set(['compile']),
+    },
+    'tryserver.chromium.mac': {
       'mac_asan': set(['compile']),
     }
   }
diff --git a/tools/valgrind/drmemory/PRESUBMIT.py b/tools/valgrind/drmemory/PRESUBMIT.py
index dfdfe78..0ff7618 100644
--- a/tools/valgrind/drmemory/PRESUBMIT.py
+++ b/tools/valgrind/drmemory/PRESUBMIT.py
@@ -33,7 +33,7 @@
 
 def GetPreferredTryMasters(project, change):
   return {
-    'tryserver.chromium': {
+    'tryserver.chromium.win': {
       'win_drmemory': set(['defaulttests']),
     }
   }
diff --git a/tools/valgrind/memcheck/PRESUBMIT.py b/tools/valgrind/memcheck/PRESUBMIT.py
index 0eb54d87..b556e63 100644
--- a/tools/valgrind/memcheck/PRESUBMIT.py
+++ b/tools/valgrind/memcheck/PRESUBMIT.py
@@ -79,8 +79,10 @@
 
 def GetPreferredTryMasters(project, change):
   return {
-    'tryserver.chromium': {
+    'tryserver.chromium.linux': {
       'linux_valgrind': set(['defaulttests']),
+    },
+    'tryserver.chromium.mac': {
       'mac_valgrind': set(['defaulttests']),
     }
   }
diff --git a/ui/compositor/PRESUBMIT.py b/ui/compositor/PRESUBMIT.py
index d99d85d..6bc103c 100644
--- a/ui/compositor/PRESUBMIT.py
+++ b/ui/compositor/PRESUBMIT.py
@@ -10,7 +10,7 @@
 
 def GetPreferredTryMasters(project, change):
   return {
-    'tryserver.chromium': {
+    'tryserver.chromium.linux': {
       'linux_chromium_chromeos_rel': set(['defaulttests']),
     }
   }
diff --git a/ui/events/PRESUBMIT.py b/ui/events/PRESUBMIT.py
index dcdf2d5f..b628462 100644
--- a/ui/events/PRESUBMIT.py
+++ b/ui/events/PRESUBMIT.py
@@ -16,10 +16,12 @@
                'views_unittests'])
 
   return {
-    'tryserver.chromium': {
-      'linux_chromium_rel': tests,
+    'tryserver.chromium.linux': {
+      'linux_chromium_rel_swarming': tests,
       'linux_chromium_chromeos_rel': tests,
       'linux_chromeos_asan': tests,
+    },
+    'tryserver.chromium.win': {
       'win_chromium_compile_dbg': tests,
       'win_chromium_rel': tests,
     }