• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1[
2  {
3    "cmd": [
4      "python",
5      "-u",
6      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
7      "--json-output",
8      "/path/to/tmp/json",
9      "ensure-directory",
10      "--mode",
11      "0777",
12      "[START_DIR]/cache/work"
13    ],
14    "infra_step": true,
15    "name": "makedirs checkout_path"
16  },
17  {
18    "cmd": [
19      "python",
20      "-u",
21      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
22      "--json-output",
23      "/path/to/tmp/json",
24      "remove",
25      "[START_DIR]/cache/work/.gclient_entries"
26    ],
27    "infra_step": true,
28    "name": "remove [START_DIR]/cache/work/.gclient_entries"
29  },
30  {
31    "cmd": [
32      "python",
33      "-u",
34      "RECIPE_MODULE[depot_tools::bot_update]/resources/bot_update.py",
35      "--spec-path",
36      "cache_dir = '[START_DIR]/cache/git'\nsolutions = [{'deps_file': '.DEPS.git', 'managed': False, 'name': 'skia', 'url': 'https://skia.googlesource.com/skia.git'}]",
37      "--patch_root",
38      "skia",
39      "--revision_mapping_file",
40      "{\"got_revision\": \"skia\"}",
41      "--git-cache-dir",
42      "[START_DIR]/cache/git",
43      "--cleanup-dir",
44      "[CLEANUP]/bot_update",
45      "--output_json",
46      "/path/to/tmp/json",
47      "--revision",
48      "skia@abc123"
49    ],
50    "cwd": "[START_DIR]/cache/work",
51    "env_prefixes": {
52      "PATH": [
53        "RECIPE_PACKAGE_REPO[depot_tools]"
54      ]
55    },
56    "infra_step": true,
57    "name": "bot_update",
58    "~followup_annotations": [
59      "@@@STEP_TEXT@Some step text@@@",
60      "@@@STEP_LOG_LINE@json.output@{@@@",
61      "@@@STEP_LOG_LINE@json.output@  \"did_run\": true, @@@",
62      "@@@STEP_LOG_LINE@json.output@  \"fixed_revisions\": {@@@",
63      "@@@STEP_LOG_LINE@json.output@    \"skia\": \"abc123\"@@@",
64      "@@@STEP_LOG_LINE@json.output@  }, @@@",
65      "@@@STEP_LOG_LINE@json.output@  \"manifest\": {@@@",
66      "@@@STEP_LOG_LINE@json.output@    \"skia\": {@@@",
67      "@@@STEP_LOG_LINE@json.output@      \"repository\": \"https://fake.org/skia.git\", @@@",
68      "@@@STEP_LOG_LINE@json.output@      \"revision\": \"9046e2e693bb92a76e972b694580e5d17ad10748\"@@@",
69      "@@@STEP_LOG_LINE@json.output@    }@@@",
70      "@@@STEP_LOG_LINE@json.output@  }, @@@",
71      "@@@STEP_LOG_LINE@json.output@  \"patch_failure\": false, @@@",
72      "@@@STEP_LOG_LINE@json.output@  \"patch_root\": \"skia\", @@@",
73      "@@@STEP_LOG_LINE@json.output@  \"properties\": {@@@",
74      "@@@STEP_LOG_LINE@json.output@    \"got_revision\": \"9046e2e693bb92a76e972b694580e5d17ad10748\", @@@",
75      "@@@STEP_LOG_LINE@json.output@    \"got_revision_cp\": \"refs/heads/master@{#164710}\"@@@",
76      "@@@STEP_LOG_LINE@json.output@  }, @@@",
77      "@@@STEP_LOG_LINE@json.output@  \"root\": \"skia\", @@@",
78      "@@@STEP_LOG_LINE@json.output@  \"source_manifest\": {@@@",
79      "@@@STEP_LOG_LINE@json.output@    \"directories\": {@@@",
80      "@@@STEP_LOG_LINE@json.output@      \"skia\": {@@@",
81      "@@@STEP_LOG_LINE@json.output@        \"git_checkout\": {@@@",
82      "@@@STEP_LOG_LINE@json.output@          \"repo_url\": \"https://fake.org/skia.git\", @@@",
83      "@@@STEP_LOG_LINE@json.output@          \"revision\": \"9046e2e693bb92a76e972b694580e5d17ad10748\"@@@",
84      "@@@STEP_LOG_LINE@json.output@        }@@@",
85      "@@@STEP_LOG_LINE@json.output@      }@@@",
86      "@@@STEP_LOG_LINE@json.output@    }, @@@",
87      "@@@STEP_LOG_LINE@json.output@    \"version\": 0@@@",
88      "@@@STEP_LOG_LINE@json.output@  }, @@@",
89      "@@@STEP_LOG_LINE@json.output@  \"step_text\": \"Some step text\"@@@",
90      "@@@STEP_LOG_LINE@json.output@}@@@",
91      "@@@STEP_LOG_END@json.output@@@",
92      "@@@SET_BUILD_PROPERTY@got_revision@\"9046e2e693bb92a76e972b694580e5d17ad10748\"@@@",
93      "@@@SET_BUILD_PROPERTY@got_revision_cp@\"refs/heads/master@{#164710}\"@@@"
94    ]
95  },
96  {
97    "cmd": [
98      "python",
99      "-u",
100      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
101      "--json-output",
102      "/path/to/tmp/json",
103      "ensure-directory",
104      "--mode",
105      "0777",
106      "[START_DIR]/[SWARM_OUT_DIR]"
107    ],
108    "infra_step": true,
109    "name": "mkdirs out_dir"
110  },
111  {
112    "cmd": [
113      "python",
114      "-u",
115      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
116      "--json-output",
117      "/path/to/tmp/json",
118      "rmtree",
119      "/tmp/lottie_files"
120    ],
121    "infra_step": true,
122    "name": "remove previous lottie files"
123  },
124  {
125    "cmd": [
126      "python",
127      "-u",
128      "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py",
129      "--json-output",
130      "/path/to/tmp/json",
131      "copytree",
132      "[START_DIR]/lottie-samples",
133      "/tmp/lottie_files"
134    ],
135    "infra_step": true,
136    "name": "copy lottie files"
137  },
138  {
139    "cmd": [
140      "python",
141      "-u",
142      "\nimport os\nimport sys\n\nlottie_files_dir = sys.argv[1]\nout_dir = sys.argv[2]\nlottie_build = sys.argv[3]\n\n# Make sure all the lottie files are readable by everyone so we can see\n# them in the docker container.\nos.system('chmod 0644 %s/*' % lottie_files_dir)\nos.system('chmod 0644 %s/*' % lottie_build)\n\n# Prepare output folder, api.file.ensure_directory doesn't touch\n# the permissions of the out directory if it already exists.\n# This typically means that the non-privileged docker won't be able to write.\nos.chmod(out_dir, 0o777)\n",
143      "/tmp/lottie_files",
144      "[START_DIR]/[SWARM_OUT_DIR]",
145      "[START_DIR]/cache/work/lottie/build/player"
146    ],
147    "infra_step": true,
148    "name": "Set up for docker",
149    "~followup_annotations": [
150      "@@@STEP_LOG_LINE@python.inline@@@@",
151      "@@@STEP_LOG_LINE@python.inline@import os@@@",
152      "@@@STEP_LOG_LINE@python.inline@import sys@@@",
153      "@@@STEP_LOG_LINE@python.inline@@@@",
154      "@@@STEP_LOG_LINE@python.inline@lottie_files_dir = sys.argv[1]@@@",
155      "@@@STEP_LOG_LINE@python.inline@out_dir = sys.argv[2]@@@",
156      "@@@STEP_LOG_LINE@python.inline@lottie_build = sys.argv[3]@@@",
157      "@@@STEP_LOG_LINE@python.inline@@@@",
158      "@@@STEP_LOG_LINE@python.inline@# Make sure all the lottie files are readable by everyone so we can see@@@",
159      "@@@STEP_LOG_LINE@python.inline@# them in the docker container.@@@",
160      "@@@STEP_LOG_LINE@python.inline@os.system('chmod 0644 %s/*' % lottie_files_dir)@@@",
161      "@@@STEP_LOG_LINE@python.inline@os.system('chmod 0644 %s/*' % lottie_build)@@@",
162      "@@@STEP_LOG_LINE@python.inline@@@@",
163      "@@@STEP_LOG_LINE@python.inline@# Prepare output folder, api.file.ensure_directory doesn't touch@@@",
164      "@@@STEP_LOG_LINE@python.inline@# the permissions of the out directory if it already exists.@@@",
165      "@@@STEP_LOG_LINE@python.inline@# This typically means that the non-privileged docker won't be able to write.@@@",
166      "@@@STEP_LOG_LINE@python.inline@os.chmod(out_dir, 0o777)@@@",
167      "@@@STEP_LOG_END@python.inline@@@"
168    ]
169  },
170  {
171    "cmd": [
172      "python",
173      "-u",
174      "import os\nprint os.environ.get('SWARMING_BOT_ID', '')\n"
175    ],
176    "name": "get swarming bot id",
177    "stdout": "/path/to/tmp/",
178    "~followup_annotations": [
179      "@@@STEP_LOG_LINE@python.inline@import os@@@",
180      "@@@STEP_LOG_LINE@python.inline@print os.environ.get('SWARMING_BOT_ID', '')@@@",
181      "@@@STEP_LOG_END@python.inline@@@"
182    ]
183  },
184  {
185    "cmd": [
186      "python",
187      "-u",
188      "import os\nprint os.environ.get('SWARMING_TASK_ID', '')\n"
189    ],
190    "name": "get swarming task id",
191    "stdout": "/path/to/tmp/",
192    "~followup_annotations": [
193      "@@@STEP_LOG_LINE@python.inline@import os@@@",
194      "@@@STEP_LOG_LINE@python.inline@print os.environ.get('SWARMING_TASK_ID', '')@@@",
195      "@@@STEP_LOG_END@python.inline@@@"
196    ]
197  },
198  {
199    "cmd": [
200      "docker",
201      "run",
202      "--shm-size=2gb",
203      "--rm",
204      "-v",
205      "[START_DIR]/cache/work:/SRC",
206      "-v",
207      "[START_DIR]/[SWARM_OUT_DIR]:/OUT",
208      "-v",
209      "[START_DIR]/cache/work/lottie/build/player:/LOTTIE_BUILD",
210      "-v",
211      "/tmp/lottie_files:/LOTTIE_FILES",
212      "gcr.io/skia-public/gold-lottie-web-puppeteer:v2",
213      "/SRC/skia/infra/lottiecap/docker/lottiecap_gold.sh",
214      "--builder",
215      "Test-Debian9-none-GCE-CPU-AVX2-x86_64-Debug-All-LottieWeb",
216      "--git_hash",
217      "abc123",
218      "--buildbucket_build_id",
219      "",
220      "--bot_id",
221      "",
222      "--task_id",
223      "",
224      "--browser",
225      "Chrome",
226      "--config",
227      "Debug"
228    ],
229    "env": {
230      "CHROME_HEADLESS": "1",
231      "DOCKER_CONFIG": "/home/chrome-bot/.docker",
232      "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]"
233    },
234    "name": "Create lottie-web Gold output with Docker"
235  },
236  {
237    "jsonResult": null,
238    "name": "$result"
239  }
240]