aboutsummaryrefslogtreecommitdiff
path: root/cros_utils
diff options
context:
space:
mode:
Diffstat (limited to 'cros_utils')
-rw-r--r--cros_utils/buildbot_utils.py17
-rwxr-xr-xcros_utils/buildbot_utils_unittest.py11
2 files changed, 17 insertions, 11 deletions
diff --git a/cros_utils/buildbot_utils.py b/cros_utils/buildbot_utils.py
index b5d93398..dcc4b57e 100644
--- a/cros_utils/buildbot_utils.py
+++ b/cros_utils/buildbot_utils.py
@@ -41,9 +41,10 @@ def PeekTrybotImage(chromeos_root, buildbucket_id):
chromeos_root: root dir of chrome os checkout
Returns:
- (status, url) where status can be 'pass', 'fail', 'running'
+ (status, url) where status can be 'pass', 'fail', 'running',
+ and url looks like:
+ gs://chromeos-image-archive/trybot-elm-release-tryjob/R67-10468.0.0-b20789
"""
- TEST_IMAGE_FILENAME = 'chromiumos_test_image.tar.xz'
command = ('cros buildresult --report json --buildbucket-id %s' %
buildbucket_id)
rc, out, _ = RunCommandInPath(chromeos_root, command)
@@ -55,8 +56,7 @@ def PeekTrybotImage(chromeos_root, buildbucket_id):
results = json.loads(out)[buildbucket_id]
- return (results['status'],
- os.path.join(results['artifacts_url'], TEST_IMAGE_FILENAME))
+ return (results['status'], results['artifacts_url'].rstrip('/'))
def ParseTryjobBuildbucketId(msg):
@@ -149,7 +149,8 @@ def GetTrybotImage(
async: don't wait for artifacts; just return the buildbucket id
Returns:
- (buildbucket id, image url)
+ (buildbucket id, partial image url) e.g.
+ (8952271933586980528, trybot-elm-release-tryjob/R67-10480.0.0-b2373596)
"""
buildbucket_id = SubmitTryjob(chromeos_root, buildbot_name, patch_list,
build_tag, tryjob_flags, build_toolchain)
@@ -191,6 +192,12 @@ def GetTrybotImage(
logger.GetLogger().LogError('Trybot job %s (buildbucket id: %s) failed with'
'status %s; no trybot image generated. ' %
(build_tag, buildbucket_id, status))
+ else:
+ # Convert full gs path to what crosperf expects. For example, convert
+ # gs://chromeos-image-archive/trybot-elm-release-tryjob/R67-10468.0.0-b20789
+ # to
+ # trybot-elm-release-tryjob/R67-10468.0.0-b20789
+ image = '/'.join(image.split('/')[-2:])
logger.GetLogger().LogOutput("image is '%s'" % image)
logger.GetLogger().LogOutput('status is %s' % status)
diff --git a/cros_utils/buildbot_utils_unittest.py b/cros_utils/buildbot_utils_unittest.py
index 8efa07d7..5d3ae40d 100755
--- a/cros_utils/buildbot_utils_unittest.py
+++ b/cros_utils/buildbot_utils_unittest.py
@@ -51,7 +51,7 @@ class TrybotTest(unittest.TestCase):
return ('running', '')
return ('pass',
'gs://chromeos-image-archive/trybot-elm-release-tryjob/'
- 'R67-10468.0.0-b20789/chromiumos_test_image.tar.xz')
+ 'R67-10468.0.0-b20789')
mock_peek.side_effect = peek
mock_submit.return_value = self.buildbucket_id
@@ -59,9 +59,8 @@ class TrybotTest(unittest.TestCase):
buildbucket_id, image = buildbot_utils.GetTrybotImage(
'/tmp', 'falco-release-tryjob', [], 'description')
self.assertEqual(buildbucket_id, self.buildbucket_id)
- self.assertEqual('gs://chromeos-image-archive/'
- 'trybot-elm-release-tryjob/'
- 'R67-10468.0.0-b20789/chromiumos_test_image.tar.xz',
+ self.assertEqual('trybot-elm-release-tryjob/'
+ 'R67-10468.0.0-b20789',
image)
# async
@@ -86,7 +85,7 @@ class TrybotTest(unittest.TestCase):
status, image = buildbot_utils.PeekTrybotImage('/', self.buildbucket_id)
self.assertEqual('pass', status)
self.assertEqual('gs://chromeos-image-archive/trybot-elm-release-tryjob/'
- 'R67-10468.0.0-b20789/chromiumos_test_image.tar.xz',
+ 'R67-10468.0.0-b20789',
image)
# running
@@ -101,7 +100,7 @@ class TrybotTest(unittest.TestCase):
status, image = buildbot_utils.PeekTrybotImage('/', self.buildbucket_id)
self.assertEqual('fail', status)
self.assertEqual('gs://chromeos-image-archive/trybot-elm-release-tryjob/'
- 'R67-10468.0.0-b20789/chromiumos_test_image.tar.xz',
+ 'R67-10468.0.0-b20789',
image)
def testParseTryjobBuildbucketId(self):