Run svc_tests on 4 shards.

The tests are sometimes hiting timeouts on msan runs:
https://chromium-swarm.appspot.com/task?id=5d02a893ec864210

Change-Id: I16f15f3ab5750bdcc37a1cd1e32846adb2fb7602
Bug: webrtc:11607
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/273343
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Jeremy Leconte <jleconte@google.com>
Cr-Commit-Position: refs/heads/main@{#37935}
diff --git a/infra/specs/PRESUBMIT.py b/infra/specs/PRESUBMIT.py
index df69665..306a3f1 100644
--- a/infra/specs/PRESUBMIT.py
+++ b/infra/specs/PRESUBMIT.py
@@ -1,3 +1,5 @@
+#!/usr/bin/env vpython3
+
 # Copyright (c) 2022 The WebRTC project authors. All Rights Reserved.
 #
 # Use of this source code is governed by a BSD-style license
@@ -8,6 +10,9 @@
 
 import os
 
+# Runs PRESUBMIT.py in py3 mode by git cl presubmit.
+USE_PYTHON3 = True
+
 
 def _HasLocalChanges(input_api):
   ret = input_api.subprocess.call(['git', 'diff', '--quiet'])
@@ -35,14 +40,14 @@
 
 def CheckSourceSideSpecs(input_api, output_api):
   d = os.path.dirname
-  angle_root = d(d(input_api.PresubmitLocalPath()))
-  gen_script = os.path.join(angle_root, 'testing', 'buildbot',
+  webrtc_root = d(d(input_api.PresubmitLocalPath()))
+  gen_script = os.path.join(webrtc_root, 'testing', 'buildbot',
                             'generate_buildbot_json.py')
 
   commands = [
       input_api.Command(name='generate_buildbot_json',
                         cmd=[
-                            input_api.python_executable, gen_script, '--check',
+                            input_api.python3_executable, gen_script, '--check',
                             '--verbose', '--pyl-files-dir',
                             input_api.PresubmitLocalPath()
                         ],
diff --git a/infra/specs/client.webrtc.json b/infra/specs/client.webrtc.json
index 3ebad4d..89af1f3ee 100644
--- a/infra/specs/client.webrtc.json
+++ b/infra/specs/client.webrtc.json
@@ -452,7 +452,8 @@
               "device_type": "bullhead",
               "os": "Android"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test": "svc_tests",
         "test_id_prefix": "ninja://pc:svc_tests/"
@@ -1113,7 +1114,8 @@
               "device_type": "bullhead",
               "os": "Android"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test": "svc_tests",
         "test_id_prefix": "ninja://pc:svc_tests/"
@@ -1812,7 +1814,8 @@
               "device_type": "bullhead",
               "os": "Android"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test": "svc_tests",
         "test_id_prefix": "ninja://pc:svc_tests/"
@@ -2473,7 +2476,8 @@
               "device_type": "bullhead",
               "os": "Android"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test": "svc_tests",
         "test_id_prefix": "ninja://pc:svc_tests/"
@@ -3010,7 +3014,8 @@
               "cpu": "x86-64",
               "os": "Ubuntu-18.04"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -3442,7 +3447,8 @@
               "cpu": "x86-64",
               "os": "Ubuntu-18.04"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -3874,7 +3880,8 @@
               "cpu": "x86-64",
               "os": "Ubuntu-18.04"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -4306,7 +4313,8 @@
               "cpu": "x86-64",
               "os": "Ubuntu-18.04"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -4738,7 +4746,8 @@
               "cpu": "x86-64",
               "os": "Ubuntu-18.04"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -5170,7 +5179,8 @@
               "cpu": "x86-64",
               "os": "Ubuntu-18.04"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -5603,7 +5613,8 @@
               "cpu": "x86-64",
               "os": "Ubuntu-18.04"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -6037,7 +6048,8 @@
               "cpu": "x86-64",
               "os": "Ubuntu-18.04"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -6470,7 +6482,8 @@
               "cpu": "x86-64",
               "os": "Ubuntu-18.04"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -6940,7 +6953,8 @@
               "cpu": "x86-64",
               "os": "Mac-12"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -7393,7 +7407,8 @@
               "cpu": "x86-64",
               "os": "Mac-12"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -7831,7 +7846,8 @@
               "cpu": "x86-64",
               "os": "Mac-12"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -8285,7 +8301,8 @@
               "cpu": "arm64-64-Apple_M1",
               "os": "Mac-12"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -8746,7 +8763,8 @@
               "cpu": "x86-64",
               "os": "Windows-10"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -9200,7 +9218,8 @@
               "cpu": "x86-64",
               "os": "Windows-10-19042"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -9985,7 +10004,8 @@
               "path": "Xcode.app"
             }
           ],
-          "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
+          "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -10962,7 +10982,8 @@
               "path": "Xcode.app"
             }
           ],
-          "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
+          "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -11939,7 +11960,8 @@
               "path": "Xcode.app"
             }
           ],
-          "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
+          "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
diff --git a/infra/specs/test_suites.pyl b/infra/specs/test_suites.pyl
index 7fdb937..d4b8cf9 100644
--- a/infra/specs/test_suites.pyl
+++ b/infra/specs/test_suites.pyl
@@ -50,7 +50,9 @@
         'mixins': ['shards-6'],
       },
       'slow_peer_connection_unittests': {},
-      'svc_tests': {},
+      'svc_tests': {
+        'mixins': ['shards-4'],
+      },
       'system_wrappers_unittests': {},
       'test_support_unittests': {},
       'tools_unittests': {},
@@ -102,7 +104,9 @@
         'mixins': ['shards-6'],
       },
       'slow_peer_connection_unittests': {},
-      'svc_tests': {},
+      'svc_tests': {
+        'mixins': ['shards-4'],
+      },
       'system_wrappers_unittests': {},
       'test_support_unittests': {},
       'tools_unittests': {},
@@ -166,7 +170,9 @@
       'sdk_unittests': {
         'mixins': ['xcode_parallelization']
       },
-      'svc_tests': {},
+      'svc_tests': {
+        'mixins': ['shards-4'],
+      },
       'system_wrappers_unittests': {},
       'test_support_unittests': {},
       'tools_unittests': {},
diff --git a/infra/specs/tryserver.webrtc.json b/infra/specs/tryserver.webrtc.json
index 775515a..c230ea0 100644
--- a/infra/specs/tryserver.webrtc.json
+++ b/infra/specs/tryserver.webrtc.json
@@ -452,7 +452,8 @@
               "device_type": "bullhead",
               "os": "Android"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test": "svc_tests",
         "test_id_prefix": "ninja://pc:svc_tests/"
@@ -1147,7 +1148,8 @@
               "device_type": "bullhead",
               "os": "Android"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test": "svc_tests",
         "test_id_prefix": "ninja://pc:svc_tests/"
@@ -1842,7 +1844,8 @@
               "device_type": "bullhead",
               "os": "Android"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test": "svc_tests",
         "test_id_prefix": "ninja://pc:svc_tests/"
@@ -2572,7 +2575,8 @@
               "device_type": "bullhead",
               "os": "Android"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test": "svc_tests",
         "test_id_prefix": "ninja://pc:svc_tests/"
@@ -3474,7 +3478,8 @@
               "path": "Xcode.app"
             }
           ],
-          "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
+          "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -4451,7 +4456,8 @@
               "path": "Xcode.app"
             }
           ],
-          "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
+          "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -5428,7 +5434,8 @@
               "path": "Xcode.app"
             }
           ],
-          "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com"
+          "service_account": "chromium-tester@chops-service-accounts.iam.gserviceaccount.com",
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -6056,7 +6063,8 @@
               "cpu": "x86-64",
               "os": "Ubuntu-18.04"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -6494,7 +6502,8 @@
               "cpu": "x86-64",
               "os": "Ubuntu-18.04"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -6927,7 +6936,8 @@
               "cpu": "x86-64",
               "os": "Ubuntu-18.04"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -7385,7 +7395,8 @@
               "cpu": "x86-64",
               "os": "Ubuntu-18.04"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -7817,7 +7828,8 @@
               "cpu": "x86-64",
               "os": "Ubuntu-18.04"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -8298,7 +8310,8 @@
               "cpu": "x86-64",
               "os": "Ubuntu-18.04"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -8730,7 +8743,8 @@
               "cpu": "x86-64",
               "os": "Ubuntu-18.04"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -9162,7 +9176,8 @@
               "cpu": "x86-64",
               "os": "Ubuntu-18.04"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -9594,7 +9609,8 @@
               "cpu": "x86-64",
               "os": "Ubuntu-18.04"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -10026,7 +10042,8 @@
               "cpu": "x86-64",
               "os": "Ubuntu-18.04"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -10472,7 +10489,8 @@
               "cpu": "x86-64",
               "os": "Mac-12"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -10926,7 +10944,8 @@
               "cpu": "x86-64",
               "os": "Mac-12"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -11364,7 +11383,8 @@
               "cpu": "arm64-64-Apple_M1",
               "os": "Mac-12"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -11796,7 +11816,8 @@
               "cpu": "x86-64",
               "os": "Mac-12"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -12277,7 +12298,8 @@
               "cpu": "arm64-64-Apple_M1",
               "os": "Mac-12"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -12709,7 +12731,8 @@
               "cpu": "x86-64",
               "os": "Windows-10-19042"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -13145,7 +13168,8 @@
               "cpu": "x86-64",
               "os": "Windows-10-19042"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -13577,7 +13601,8 @@
               "cpu": "x86-64",
               "os": "Windows-10-19042"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -14009,7 +14034,8 @@
               "cpu": "x86-64",
               "os": "Windows-10-19042"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -14441,7 +14467,8 @@
               "cpu": "x86-64",
               "os": "Windows-10-19042"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },
@@ -14873,7 +14900,8 @@
               "cpu": "x86-64",
               "os": "Windows-10-19042"
             }
-          ]
+          ],
+          "shards": 4
         },
         "test_id_prefix": "ninja://pc:svc_tests/"
       },