Bug 1535011: vendor latest `robustcheckout` from version-control-tools r=Callek
authorConnor Sheehan <sheehan@mozilla.com>
Thu, 14 Mar 2019 19:56:17 +0000
changeset 464379 c1674c1e4e7c
parent 464378 fcb88149296d
child 464380 d90a1637fab6
push id35716
push useraciure@mozilla.com
push dateSun, 17 Mar 2019 09:42:17 +0000
treeherdermozilla-central@8ee97c045359 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersCallek
bugs1535011
milestone67.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 1535011: vendor latest `robustcheckout` from version-control-tools r=Callek This commit vendors `robustcheckout` from the version-control-tools repository, revision 8e3bb142dfa9. Differential Revision: https://phabricator.services.mozilla.com/D23566
testing/mozharness/external_tools/robustcheckout.py
--- a/testing/mozharness/external_tools/robustcheckout.py
+++ b/testing/mozharness/external_tools/robustcheckout.py
@@ -17,16 +17,17 @@ import functools
 import json
 import os
 import random
 import re
 import socket
 import ssl
 import time
 import urllib2
+import urlparse
 
 from mercurial.i18n import _
 from mercurial.node import hex, nullid
 from mercurial import (
     commands,
     error,
     exchange,
     extensions,
@@ -44,17 +45,17 @@ try:
     from mercurial import configitems
     configitems.dynamicdefault
 except ImportError:
     configitems = None
 
 # Causes worker to purge caches on process exit and for task to retry.
 EXIT_PURGE_CACHE = 72
 
-testedwith = '4.3 4.4 4.5 4.6 4.7 4.8'
+testedwith = '4.3 4.4 4.5 4.6 4.7 4.8 4.9'
 minimumhgversion = '4.3'
 
 cmdtable = {}
 
 # TRACKING hg43 Mercurial 4.3 introduced registrar.command as a replacement for
 # cmdutil.command.
 if util.safehasattr(registrar, 'command'):
     command = registrar.command(cmdtable)
@@ -330,29 +331,32 @@ def robustcheckout(ui, url, dest, upstre
             else:
                 record_op('overall_nopull_fullcheckout')
 
             if 'empty-wdir' in behaviors:
                 record_op('overall_nopull_emptywdir')
             else:
                 record_op('overall_nopull_populatedwdir')
 
+        server_url = urlparse.urlparse(url).netloc
+
         if 'TASKCLUSTER_INSTANCE_TYPE' in os.environ:
             perfherder = {
                 'framework': {
                     'name': 'vcs',
                 },
                 'suites': [],
             }
             for op, duration in optimes:
                 perfherder['suites'].append({
                     'name': op,
                     'value': duration,
                     'lowerIsBetter': True,
                     'shouldAlert': False,
+                    'serverUrl': server_url,
                     'extraOptions': [os.environ['TASKCLUSTER_INSTANCE_TYPE']],
                     'subtests': [],
                 })
 
             ui.write('PERFHERDER_DATA: %s\n' % json.dumps(perfherder,
                                                           sort_keys=True))
 
 def _docheckout(ui, url, dest, upstream, revision, branch, purge, sharebase,