1[ 2 { 3 "cmd": [ 4 "vpython", 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]/[SWARM_OUT_DIR]" 13 ], 14 "infra_step": true, 15 "name": "mkdirs out_dir" 16 }, 17 { 18 "cmd": [ 19 "vpython", 20 "-u", 21 "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 22 "--json-output", 23 "/path/to/tmp/json", 24 "rmtree", 25 "/tmp/lottie_files" 26 ], 27 "infra_step": true, 28 "name": "remove previous lottie files" 29 }, 30 { 31 "cmd": [ 32 "vpython", 33 "-u", 34 "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 35 "--json-output", 36 "/path/to/tmp/json", 37 "copytree", 38 "[START_DIR]/lottie-samples", 39 "/tmp/lottie_files" 40 ], 41 "infra_step": true, 42 "name": "copy lottie files" 43 }, 44 { 45 "cmd": [ 46 "python", 47 "-u", 48 "import os\nprint(os.environ.get('SWARMING_BOT_ID', ''))\n" 49 ], 50 "name": "get swarming bot id", 51 "~followup_annotations": [ 52 "@@@STEP_LOG_LINE@python.inline@import os@@@", 53 "@@@STEP_LOG_LINE@python.inline@print(os.environ.get('SWARMING_BOT_ID', ''))@@@", 54 "@@@STEP_LOG_END@python.inline@@@" 55 ] 56 }, 57 { 58 "cmd": [ 59 "python", 60 "-u", 61 "import os\nprint(os.environ.get('SWARMING_TASK_ID', ''))\n" 62 ], 63 "name": "get swarming task id", 64 "~followup_annotations": [ 65 "@@@STEP_LOG_LINE@python.inline@import os@@@", 66 "@@@STEP_LOG_LINE@python.inline@print(os.environ.get('SWARMING_TASK_ID', ''))@@@", 67 "@@@STEP_LOG_END@python.inline@@@" 68 ] 69 }, 70 { 71 "cmd": [], 72 "name": "Docker setup" 73 }, 74 { 75 "cmd": [ 76 "python", 77 "-u", 78 "import os\nprint('%d:%d' % (os.getuid(), os.getgid()))\n" 79 ], 80 "name": "Docker setup.Get uid and gid", 81 "~followup_annotations": [ 82 "@@@STEP_NEST_LEVEL@1@@@", 83 "@@@STEP_LOG_LINE@python.inline@import os@@@", 84 "@@@STEP_LOG_LINE@python.inline@print('%d:%d' % (os.getuid(), os.getgid()))@@@", 85 "@@@STEP_LOG_END@python.inline@@@" 86 ] 87 }, 88 { 89 "cmd": [ 90 "vpython", 91 "-u", 92 "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 93 "--json-output", 94 "/path/to/tmp/json", 95 "ensure-directory", 96 "--mode", 97 "0777", 98 "[START_DIR]/[SWARM_OUT_DIR]" 99 ], 100 "infra_step": true, 101 "name": "Docker setup.mkdirs out_dir", 102 "~followup_annotations": [ 103 "@@@STEP_NEST_LEVEL@1@@@" 104 ] 105 }, 106 { 107 "cmd": [ 108 "chmod", 109 "777", 110 "[START_DIR]/[SWARM_OUT_DIR]" 111 ], 112 "infra_step": true, 113 "name": "Docker setup.chmod 777 [START_DIR]/[SWARM_OUT_DIR]", 114 "~followup_annotations": [ 115 "@@@STEP_NEST_LEVEL@1@@@" 116 ] 117 }, 118 { 119 "cmd": [ 120 "chmod", 121 "755", 122 "[START_DIR]" 123 ], 124 "infra_step": true, 125 "name": "Docker setup.chmod 755 [START_DIR]", 126 "~followup_annotations": [ 127 "@@@STEP_NEST_LEVEL@1@@@" 128 ] 129 }, 130 { 131 "cmd": [ 132 "chmod", 133 "0755", 134 "[START_DIR]/skia/infra/lottiecap/docker/lottiecap_gold.sh" 135 ], 136 "infra_step": true, 137 "name": "Docker setup.chmod 0755 [START_DIR]/skia/infra/lottiecap/docker/lottiecap_gold.sh", 138 "~followup_annotations": [ 139 "@@@STEP_NEST_LEVEL@1@@@" 140 ] 141 }, 142 { 143 "cmd": [ 144 "chmod", 145 "-R", 146 "a+r", 147 "[START_DIR]/lottie/build/player" 148 ], 149 "infra_step": true, 150 "name": "Docker setup.chmod -R a+r [START_DIR]/lottie/build/player", 151 "~followup_annotations": [ 152 "@@@STEP_NEST_LEVEL@1@@@" 153 ] 154 }, 155 { 156 "cmd": [ 157 "chmod", 158 "-R", 159 "a+r", 160 "/tmp/lottie_files" 161 ], 162 "infra_step": true, 163 "name": "Docker setup.chmod -R a+r /tmp/lottie_files", 164 "~followup_annotations": [ 165 "@@@STEP_NEST_LEVEL@1@@@" 166 ] 167 }, 168 { 169 "cmd": [ 170 "docker", 171 "run", 172 "--shm-size=2gb", 173 "--rm", 174 "--user", 175 "13:17", 176 "--mount", 177 "type=bind,source=[START_DIR],target=/SRC", 178 "--mount", 179 "type=bind,source=[START_DIR]/[SWARM_OUT_DIR],target=/OUT", 180 "--mount", 181 "type=bind,source=[START_DIR]/lottie/build/player,target=/LOTTIE_BUILD", 182 "--mount", 183 "type=bind,source=/tmp/lottie_files,target=/LOTTIE_FILES", 184 "gcr.io/skia-public/gold-lottie-web-puppeteer:v2", 185 "/SRC/skia/infra/lottiecap/docker/lottiecap_gold.sh", 186 "--builder", 187 "Test-Debian10-none-GCE-CPU-AVX2-x86_64-Debug-All-LottieWeb", 188 "--git_hash", 189 "abc123", 190 "--buildbucket_build_id", 191 "", 192 "--bot_id", 193 "", 194 "--task_id", 195 "", 196 "--browser", 197 "Chrome", 198 "--config", 199 "Debug", 200 "--issue", 201 "1234", 202 "--patchset", 203 "7", 204 "--patch_storage", 205 "gerrit" 206 ], 207 "env": { 208 "CHROME_HEADLESS": "1", 209 "DOCKER_CONFIG": "/home/chrome-bot/.docker", 210 "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 211 }, 212 "name": "Generate LottieWeb Gold output with Docker" 213 }, 214 { 215 "cmd": [ 216 "vpython", 217 "-u", 218 "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 219 "--json-output", 220 "/path/to/tmp/json", 221 "glob", 222 "[START_DIR]/[SWARM_OUT_DIR]", 223 "*.png" 224 ], 225 "infra_step": true, 226 "name": "find .png images", 227 "~followup_annotations": [ 228 "@@@STEP_LOG_LINE@glob@[START_DIR]/[SWARM_OUT_DIR]/someimage.png@@@", 229 "@@@STEP_LOG_END@glob@@@" 230 ] 231 }, 232 { 233 "cmd": [ 234 "gsutil", 235 "-m", 236 "cp", 237 "[START_DIR]/[SWARM_OUT_DIR]/*.png", 238 "gs://skia-infra-gm/dm-images-v1" 239 ], 240 "name": "upload .png images" 241 }, 242 { 243 "cmd": [ 244 "gsutil", 245 "cp", 246 "-Z", 247 "[START_DIR]/[SWARM_OUT_DIR]/dm.json", 248 "gs://skia-infra-gm/trybot/dm-json-v1/2012/05/14/12/1234_7/Test-Debian10-none-GCE-CPU-AVX2-x86_64-Debug-All-LottieWeb/1337000001/dm.json" 249 ], 250 "name": "upload dm.json" 251 }, 252 { 253 "name": "$result" 254 } 255]