Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(365)

Side by Side Diff: infra/bots/recipe_modules/ct/api.py

Issue 2221413002: Move ct_skps recipe from tools repo to Skia repo (Closed) Base URL: https://skia.googlesource.com/skia@master
Patch Set: Address comments Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « infra/bots/recipe_modules/ct/__init__.py ('k') | infra/bots/recipe_modules/run/api.py » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 # Copyright 2015 The Chromium Authors. All rights reserved.
2 # Use of this source code is governed by a BSD-style license that can be
3 # found in the LICENSE file.
4
5
6 from recipe_engine import recipe_api
7
8 import re
9
10
11 class CTApi(recipe_api.RecipeApi):
12 """Provides steps to run CT tasks."""
13
14 CT_GS_BUCKET = 'cluster-telemetry'
15
16 def download_swarming_skps(self, page_type, slave_num, skps_chromium_build,
17 dest_dir, start_range, num_skps):
18 """Downloads SKPs corresponding to the specified page type, slave and build.
19
20 The SKPs are stored in Google Storage in the following dirs in CT_GS_BUCKET:
21 /swarming/skps/${page_type}/${skps_chromium_build}/{start_range..end_num}/
22 The SKPs are downloaded into subdirectories in the dest_dir.
23
24 Args:
25 api: RecipeApi instance.
26 page_type: str. The CT page type. Eg: 1k, 10k.
27 slave_num: int. The number of the swarming bot.
28 skps_chromium_build: str. The build the SKPs were captured from.
29 dest_dir: path obj. The directory to download SKPs into.
30 start_range: int. The subdirectory number to start from.
31 num_skps: int. The total number of SKPs to download starting with
32 start_range.
33 """
34 slave_dest_dir = dest_dir.join('slave%s' % slave_num )
35 remote_dir = 'gs://%s/swarming/skps/%s/%s' % (
36 self.CT_GS_BUCKET, page_type, skps_chromium_build)
37
38 # Delete and recreate the local dir.
39 self.m.run.rmtree(slave_dest_dir)
40 self.m.file.makedirs(self.m.path.basename(slave_dest_dir), slave_dest_dir)
41
42 # Populate the empty local dir.
43 gsutil_args = ['-m', 'cp']
44 for i in range(start_range, start_range+num_skps):
45 gsutil_args.append('%s/%s/*.skp' % (str(remote_dir), i))
46 gsutil_args.append(str(slave_dest_dir))
47 try:
48 self.m.gsutil(gsutil_args, use_retry_wrapper=False)
49 except self.m.step.StepFailure: # pragma: nocover
50 # Some subdirectories might have no SKPs in them.
51 pass
OLDNEW
« no previous file with comments | « infra/bots/recipe_modules/ct/__init__.py ('k') | infra/bots/recipe_modules/run/api.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698