1cb93a386Sopenharmony_ci[ 2cb93a386Sopenharmony_ci { 3cb93a386Sopenharmony_ci "cmd": [ 4cb93a386Sopenharmony_ci "vpython", 5cb93a386Sopenharmony_ci "-u", 6cb93a386Sopenharmony_ci "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 7cb93a386Sopenharmony_ci "--json-output", 8cb93a386Sopenharmony_ci "/path/to/tmp/json", 9cb93a386Sopenharmony_ci "ensure-directory", 10cb93a386Sopenharmony_ci "--mode", 11cb93a386Sopenharmony_ci "0777", 12cb93a386Sopenharmony_ci "[START_DIR]/tmp" 13cb93a386Sopenharmony_ci ], 14cb93a386Sopenharmony_ci "infra_step": true, 15cb93a386Sopenharmony_ci "name": "makedirs tmp_dir" 16cb93a386Sopenharmony_ci }, 17cb93a386Sopenharmony_ci { 18cb93a386Sopenharmony_ci "cmd": [ 19cb93a386Sopenharmony_ci "python", 20cb93a386Sopenharmony_ci "-u", 21cb93a386Sopenharmony_ci "import os\nprint(os.environ.get('SWARMING_BOT_ID', ''))\n" 22cb93a386Sopenharmony_ci ], 23cb93a386Sopenharmony_ci "name": "get swarming bot id", 24cb93a386Sopenharmony_ci "~followup_annotations": [ 25cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import os@@@", 26cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print(os.environ.get('SWARMING_BOT_ID', ''))@@@", 27cb93a386Sopenharmony_ci "@@@STEP_LOG_END@python.inline@@@" 28cb93a386Sopenharmony_ci ] 29cb93a386Sopenharmony_ci }, 30cb93a386Sopenharmony_ci { 31cb93a386Sopenharmony_ci "cmd": [ 32cb93a386Sopenharmony_ci "/usr/bin/adb.1.0.35", 33cb93a386Sopenharmony_ci "shell", 34cb93a386Sopenharmony_ci "mkdir", 35cb93a386Sopenharmony_ci "-p", 36cb93a386Sopenharmony_ci "/sdcard/revenge_of_the_skiabot/resources" 37cb93a386Sopenharmony_ci ], 38cb93a386Sopenharmony_ci "cwd": "[START_DIR]/skia", 39cb93a386Sopenharmony_ci "env": { 40cb93a386Sopenharmony_ci "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey", 41cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 42cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 43cb93a386Sopenharmony_ci }, 44cb93a386Sopenharmony_ci "infra_step": true, 45cb93a386Sopenharmony_ci "name": "mkdir /sdcard/revenge_of_the_skiabot/resources" 46cb93a386Sopenharmony_ci }, 47cb93a386Sopenharmony_ci { 48cb93a386Sopenharmony_ci "cmd": [ 49cb93a386Sopenharmony_ci "python", 50cb93a386Sopenharmony_ci "-u", 51cb93a386Sopenharmony_ci "\nimport os\nimport subprocess\nimport sys\nimport time\nADB = sys.argv[1]\ncpu = int(sys.argv[2])\nvalue = int(sys.argv[3])\n\nlog = subprocess.check_output([ADB, 'root'])\n# check for message like 'adbd cannot run as root in production builds'\nprint(log)\nif 'cannot' in log:\n raise Exception('adb root failed')\n\n# If we try to echo 1 to an already online cpu, adb returns exit code 1.\n# So, check the value before trying to write it.\nprior_status = subprocess.check_output([ADB, 'shell', 'cat '\n '/sys/devices/system/cpu/cpu%d/online' % cpu]).strip()\nif prior_status == str(value):\n print('CPU %d online already %d' % (cpu, value))\n sys.exit()\n\nsubprocess.check_output([ADB, 'shell', 'echo %s > '\n '/sys/devices/system/cpu/cpu%d/online' % (value, cpu)])\nactual_status = subprocess.check_output([ADB, 'shell', 'cat '\n '/sys/devices/system/cpu/cpu%d/online' % cpu]).strip()\nif actual_status != str(value):\n raise Exception('(actual, expected) (%s, %d)'\n % (actual_status, value))\n", 52cb93a386Sopenharmony_ci "/usr/bin/adb.1.0.35", 53cb93a386Sopenharmony_ci "0", 54cb93a386Sopenharmony_ci "1" 55cb93a386Sopenharmony_ci ], 56cb93a386Sopenharmony_ci "env": { 57cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 58cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 59cb93a386Sopenharmony_ci }, 60cb93a386Sopenharmony_ci "infra_step": true, 61cb93a386Sopenharmony_ci "name": "Enabling CPU 0", 62cb93a386Sopenharmony_ci "timeout": 30, 63cb93a386Sopenharmony_ci "~followup_annotations": [ 64cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 65cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import os@@@", 66cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import subprocess@@@", 67cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import sys@@@", 68cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import time@@@", 69cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ADB = sys.argv[1]@@@", 70cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@cpu = int(sys.argv[2])@@@", 71cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@value = int(sys.argv[3])@@@", 72cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 73cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@log = subprocess.check_output([ADB, 'root'])@@@", 74cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@# check for message like 'adbd cannot run as root in production builds'@@@", 75cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print(log)@@@", 76cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@if 'cannot' in log:@@@", 77cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ raise Exception('adb root failed')@@@", 78cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 79cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@# If we try to echo 1 to an already online cpu, adb returns exit code 1.@@@", 80cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@# So, check the value before trying to write it.@@@", 81cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@prior_status = subprocess.check_output([ADB, 'shell', 'cat '@@@", 82cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ '/sys/devices/system/cpu/cpu%d/online' % cpu]).strip()@@@", 83cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@if prior_status == str(value):@@@", 84cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ print('CPU %d online already %d' % (cpu, value))@@@", 85cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ sys.exit()@@@", 86cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 87cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@subprocess.check_output([ADB, 'shell', 'echo %s > '@@@", 88cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ '/sys/devices/system/cpu/cpu%d/online' % (value, cpu)])@@@", 89cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@actual_status = subprocess.check_output([ADB, 'shell', 'cat '@@@", 90cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ '/sys/devices/system/cpu/cpu%d/online' % cpu]).strip()@@@", 91cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@if actual_status != str(value):@@@", 92cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ raise Exception('(actual, expected) (%s, %d)'@@@", 93cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ % (actual_status, value))@@@", 94cb93a386Sopenharmony_ci "@@@STEP_LOG_END@python.inline@@@" 95cb93a386Sopenharmony_ci ] 96cb93a386Sopenharmony_ci }, 97cb93a386Sopenharmony_ci { 98cb93a386Sopenharmony_ci "cmd": [ 99cb93a386Sopenharmony_ci "python", 100cb93a386Sopenharmony_ci "-u", 101cb93a386Sopenharmony_ci "\nimport os\nimport subprocess\nimport sys\nimport time\nADB = sys.argv[1]\ncpu = int(sys.argv[2])\nvalue = int(sys.argv[3])\n\nlog = subprocess.check_output([ADB, 'root'])\n# check for message like 'adbd cannot run as root in production builds'\nprint(log)\nif 'cannot' in log:\n raise Exception('adb root failed')\n\n# If we try to echo 1 to an already online cpu, adb returns exit code 1.\n# So, check the value before trying to write it.\nprior_status = subprocess.check_output([ADB, 'shell', 'cat '\n '/sys/devices/system/cpu/cpu%d/online' % cpu]).strip()\nif prior_status == str(value):\n print('CPU %d online already %d' % (cpu, value))\n sys.exit()\n\nsubprocess.check_output([ADB, 'shell', 'echo %s > '\n '/sys/devices/system/cpu/cpu%d/online' % (value, cpu)])\nactual_status = subprocess.check_output([ADB, 'shell', 'cat '\n '/sys/devices/system/cpu/cpu%d/online' % cpu]).strip()\nif actual_status != str(value):\n raise Exception('(actual, expected) (%s, %d)'\n % (actual_status, value))\n", 102cb93a386Sopenharmony_ci "/usr/bin/adb.1.0.35", 103cb93a386Sopenharmony_ci "1", 104cb93a386Sopenharmony_ci "1" 105cb93a386Sopenharmony_ci ], 106cb93a386Sopenharmony_ci "env": { 107cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 108cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 109cb93a386Sopenharmony_ci }, 110cb93a386Sopenharmony_ci "infra_step": true, 111cb93a386Sopenharmony_ci "name": "Enabling CPU 1", 112cb93a386Sopenharmony_ci "timeout": 30, 113cb93a386Sopenharmony_ci "~followup_annotations": [ 114cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 115cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import os@@@", 116cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import subprocess@@@", 117cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import sys@@@", 118cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import time@@@", 119cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ADB = sys.argv[1]@@@", 120cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@cpu = int(sys.argv[2])@@@", 121cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@value = int(sys.argv[3])@@@", 122cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 123cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@log = subprocess.check_output([ADB, 'root'])@@@", 124cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@# check for message like 'adbd cannot run as root in production builds'@@@", 125cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print(log)@@@", 126cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@if 'cannot' in log:@@@", 127cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ raise Exception('adb root failed')@@@", 128cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 129cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@# If we try to echo 1 to an already online cpu, adb returns exit code 1.@@@", 130cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@# So, check the value before trying to write it.@@@", 131cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@prior_status = subprocess.check_output([ADB, 'shell', 'cat '@@@", 132cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ '/sys/devices/system/cpu/cpu%d/online' % cpu]).strip()@@@", 133cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@if prior_status == str(value):@@@", 134cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ print('CPU %d online already %d' % (cpu, value))@@@", 135cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ sys.exit()@@@", 136cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 137cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@subprocess.check_output([ADB, 'shell', 'echo %s > '@@@", 138cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ '/sys/devices/system/cpu/cpu%d/online' % (value, cpu)])@@@", 139cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@actual_status = subprocess.check_output([ADB, 'shell', 'cat '@@@", 140cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ '/sys/devices/system/cpu/cpu%d/online' % cpu]).strip()@@@", 141cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@if actual_status != str(value):@@@", 142cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ raise Exception('(actual, expected) (%s, %d)'@@@", 143cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ % (actual_status, value))@@@", 144cb93a386Sopenharmony_ci "@@@STEP_LOG_END@python.inline@@@" 145cb93a386Sopenharmony_ci ] 146cb93a386Sopenharmony_ci }, 147cb93a386Sopenharmony_ci { 148cb93a386Sopenharmony_ci "cmd": [ 149cb93a386Sopenharmony_ci "python", 150cb93a386Sopenharmony_ci "-u", 151cb93a386Sopenharmony_ci "\nimport os\nimport subprocess\nimport sys\nimport time\nADB = sys.argv[1]\ncpu = int(sys.argv[2])\nvalue = int(sys.argv[3])\n\nlog = subprocess.check_output([ADB, 'root'])\n# check for message like 'adbd cannot run as root in production builds'\nprint(log)\nif 'cannot' in log:\n raise Exception('adb root failed')\n\n# If we try to echo 1 to an already online cpu, adb returns exit code 1.\n# So, check the value before trying to write it.\nprior_status = subprocess.check_output([ADB, 'shell', 'cat '\n '/sys/devices/system/cpu/cpu%d/online' % cpu]).strip()\nif prior_status == str(value):\n print('CPU %d online already %d' % (cpu, value))\n sys.exit()\n\nsubprocess.check_output([ADB, 'shell', 'echo %s > '\n '/sys/devices/system/cpu/cpu%d/online' % (value, cpu)])\nactual_status = subprocess.check_output([ADB, 'shell', 'cat '\n '/sys/devices/system/cpu/cpu%d/online' % cpu]).strip()\nif actual_status != str(value):\n raise Exception('(actual, expected) (%s, %d)'\n % (actual_status, value))\n", 152cb93a386Sopenharmony_ci "/usr/bin/adb.1.0.35", 153cb93a386Sopenharmony_ci "2", 154cb93a386Sopenharmony_ci "1" 155cb93a386Sopenharmony_ci ], 156cb93a386Sopenharmony_ci "env": { 157cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 158cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 159cb93a386Sopenharmony_ci }, 160cb93a386Sopenharmony_ci "infra_step": true, 161cb93a386Sopenharmony_ci "name": "Enabling CPU 2", 162cb93a386Sopenharmony_ci "timeout": 30, 163cb93a386Sopenharmony_ci "~followup_annotations": [ 164cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 165cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import os@@@", 166cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import subprocess@@@", 167cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import sys@@@", 168cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import time@@@", 169cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ADB = sys.argv[1]@@@", 170cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@cpu = int(sys.argv[2])@@@", 171cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@value = int(sys.argv[3])@@@", 172cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 173cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@log = subprocess.check_output([ADB, 'root'])@@@", 174cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@# check for message like 'adbd cannot run as root in production builds'@@@", 175cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print(log)@@@", 176cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@if 'cannot' in log:@@@", 177cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ raise Exception('adb root failed')@@@", 178cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 179cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@# If we try to echo 1 to an already online cpu, adb returns exit code 1.@@@", 180cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@# So, check the value before trying to write it.@@@", 181cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@prior_status = subprocess.check_output([ADB, 'shell', 'cat '@@@", 182cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ '/sys/devices/system/cpu/cpu%d/online' % cpu]).strip()@@@", 183cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@if prior_status == str(value):@@@", 184cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ print('CPU %d online already %d' % (cpu, value))@@@", 185cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ sys.exit()@@@", 186cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 187cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@subprocess.check_output([ADB, 'shell', 'echo %s > '@@@", 188cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ '/sys/devices/system/cpu/cpu%d/online' % (value, cpu)])@@@", 189cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@actual_status = subprocess.check_output([ADB, 'shell', 'cat '@@@", 190cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ '/sys/devices/system/cpu/cpu%d/online' % cpu]).strip()@@@", 191cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@if actual_status != str(value):@@@", 192cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ raise Exception('(actual, expected) (%s, %d)'@@@", 193cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ % (actual_status, value))@@@", 194cb93a386Sopenharmony_ci "@@@STEP_LOG_END@python.inline@@@" 195cb93a386Sopenharmony_ci ] 196cb93a386Sopenharmony_ci }, 197cb93a386Sopenharmony_ci { 198cb93a386Sopenharmony_ci "cmd": [ 199cb93a386Sopenharmony_ci "python", 200cb93a386Sopenharmony_ci "-u", 201cb93a386Sopenharmony_ci "\nimport os\nimport subprocess\nimport sys\nimport time\nADB = sys.argv[1]\ncpu = int(sys.argv[2])\nvalue = int(sys.argv[3])\n\nlog = subprocess.check_output([ADB, 'root'])\n# check for message like 'adbd cannot run as root in production builds'\nprint(log)\nif 'cannot' in log:\n raise Exception('adb root failed')\n\n# If we try to echo 1 to an already online cpu, adb returns exit code 1.\n# So, check the value before trying to write it.\nprior_status = subprocess.check_output([ADB, 'shell', 'cat '\n '/sys/devices/system/cpu/cpu%d/online' % cpu]).strip()\nif prior_status == str(value):\n print('CPU %d online already %d' % (cpu, value))\n sys.exit()\n\nsubprocess.check_output([ADB, 'shell', 'echo %s > '\n '/sys/devices/system/cpu/cpu%d/online' % (value, cpu)])\nactual_status = subprocess.check_output([ADB, 'shell', 'cat '\n '/sys/devices/system/cpu/cpu%d/online' % cpu]).strip()\nif actual_status != str(value):\n raise Exception('(actual, expected) (%s, %d)'\n % (actual_status, value))\n", 202cb93a386Sopenharmony_ci "/usr/bin/adb.1.0.35", 203cb93a386Sopenharmony_ci "3", 204cb93a386Sopenharmony_ci "1" 205cb93a386Sopenharmony_ci ], 206cb93a386Sopenharmony_ci "env": { 207cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 208cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 209cb93a386Sopenharmony_ci }, 210cb93a386Sopenharmony_ci "infra_step": true, 211cb93a386Sopenharmony_ci "name": "Enabling CPU 3", 212cb93a386Sopenharmony_ci "timeout": 30, 213cb93a386Sopenharmony_ci "~followup_annotations": [ 214cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 215cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import os@@@", 216cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import subprocess@@@", 217cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import sys@@@", 218cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import time@@@", 219cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ADB = sys.argv[1]@@@", 220cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@cpu = int(sys.argv[2])@@@", 221cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@value = int(sys.argv[3])@@@", 222cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 223cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@log = subprocess.check_output([ADB, 'root'])@@@", 224cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@# check for message like 'adbd cannot run as root in production builds'@@@", 225cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print(log)@@@", 226cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@if 'cannot' in log:@@@", 227cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ raise Exception('adb root failed')@@@", 228cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 229cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@# If we try to echo 1 to an already online cpu, adb returns exit code 1.@@@", 230cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@# So, check the value before trying to write it.@@@", 231cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@prior_status = subprocess.check_output([ADB, 'shell', 'cat '@@@", 232cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ '/sys/devices/system/cpu/cpu%d/online' % cpu]).strip()@@@", 233cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@if prior_status == str(value):@@@", 234cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ print('CPU %d online already %d' % (cpu, value))@@@", 235cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ sys.exit()@@@", 236cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 237cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@subprocess.check_output([ADB, 'shell', 'echo %s > '@@@", 238cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ '/sys/devices/system/cpu/cpu%d/online' % (value, cpu)])@@@", 239cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@actual_status = subprocess.check_output([ADB, 'shell', 'cat '@@@", 240cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ '/sys/devices/system/cpu/cpu%d/online' % cpu]).strip()@@@", 241cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@if actual_status != str(value):@@@", 242cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ raise Exception('(actual, expected) (%s, %d)'@@@", 243cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ % (actual_status, value))@@@", 244cb93a386Sopenharmony_ci "@@@STEP_LOG_END@python.inline@@@" 245cb93a386Sopenharmony_ci ] 246cb93a386Sopenharmony_ci }, 247cb93a386Sopenharmony_ci { 248cb93a386Sopenharmony_ci "cmd": [ 249cb93a386Sopenharmony_ci "python", 250cb93a386Sopenharmony_ci "-u", 251cb93a386Sopenharmony_ci "\nimport os\nimport subprocess\nimport sys\nimport time\nADB = sys.argv[1]\ncpu = int(sys.argv[2])\ngov = sys.argv[3]\n\nlog = subprocess.check_output([ADB, 'root'])\n# check for message like 'adbd cannot run as root in production builds'\nprint(log)\nif 'cannot' in log:\n raise Exception('adb root failed')\n\nsubprocess.check_output([ADB, 'shell', 'echo \"%s\" > '\n '/sys/devices/system/cpu/cpu%d/cpufreq/scaling_governor' % (gov, cpu)])\nactual_gov = subprocess.check_output([ADB, 'shell', 'cat '\n '/sys/devices/system/cpu/cpu%d/cpufreq/scaling_governor' % cpu]).strip()\nif actual_gov != gov:\n raise Exception('(actual, expected) (%s, %s)'\n % (actual_gov, gov))\n", 252cb93a386Sopenharmony_ci "/usr/bin/adb.1.0.35", 253cb93a386Sopenharmony_ci "4", 254cb93a386Sopenharmony_ci "ondemand" 255cb93a386Sopenharmony_ci ], 256cb93a386Sopenharmony_ci "env": { 257cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 258cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 259cb93a386Sopenharmony_ci }, 260cb93a386Sopenharmony_ci "infra_step": true, 261cb93a386Sopenharmony_ci "name": "Set CPU 4's governor to ondemand", 262cb93a386Sopenharmony_ci "timeout": 30, 263cb93a386Sopenharmony_ci "~followup_annotations": [ 264cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 265cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import os@@@", 266cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import subprocess@@@", 267cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import sys@@@", 268cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import time@@@", 269cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ADB = sys.argv[1]@@@", 270cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@cpu = int(sys.argv[2])@@@", 271cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@gov = sys.argv[3]@@@", 272cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 273cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@log = subprocess.check_output([ADB, 'root'])@@@", 274cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@# check for message like 'adbd cannot run as root in production builds'@@@", 275cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print(log)@@@", 276cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@if 'cannot' in log:@@@", 277cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ raise Exception('adb root failed')@@@", 278cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 279cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@subprocess.check_output([ADB, 'shell', 'echo \"%s\" > '@@@", 280cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ '/sys/devices/system/cpu/cpu%d/cpufreq/scaling_governor' % (gov, cpu)])@@@", 281cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@actual_gov = subprocess.check_output([ADB, 'shell', 'cat '@@@", 282cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ '/sys/devices/system/cpu/cpu%d/cpufreq/scaling_governor' % cpu]).strip()@@@", 283cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@if actual_gov != gov:@@@", 284cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ raise Exception('(actual, expected) (%s, %s)'@@@", 285cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ % (actual_gov, gov))@@@", 286cb93a386Sopenharmony_ci "@@@STEP_LOG_END@python.inline@@@" 287cb93a386Sopenharmony_ci ] 288cb93a386Sopenharmony_ci }, 289cb93a386Sopenharmony_ci { 290cb93a386Sopenharmony_ci "cmd": [ 291cb93a386Sopenharmony_ci "python", 292cb93a386Sopenharmony_ci "-u", 293cb93a386Sopenharmony_ci "\nimport os\nimport subprocess\nimport sys\nimport time\nADB = sys.argv[1]\ncpu = int(sys.argv[2])\ngov = sys.argv[3]\n\nlog = subprocess.check_output([ADB, 'root'])\n# check for message like 'adbd cannot run as root in production builds'\nprint(log)\nif 'cannot' in log:\n raise Exception('adb root failed')\n\nsubprocess.check_output([ADB, 'shell', 'echo \"%s\" > '\n '/sys/devices/system/cpu/cpu%d/cpufreq/scaling_governor' % (gov, cpu)])\nactual_gov = subprocess.check_output([ADB, 'shell', 'cat '\n '/sys/devices/system/cpu/cpu%d/cpufreq/scaling_governor' % cpu]).strip()\nif actual_gov != gov:\n raise Exception('(actual, expected) (%s, %s)'\n % (actual_gov, gov))\n", 294cb93a386Sopenharmony_ci "/usr/bin/adb.1.0.35", 295cb93a386Sopenharmony_ci "0", 296cb93a386Sopenharmony_ci "ondemand" 297cb93a386Sopenharmony_ci ], 298cb93a386Sopenharmony_ci "env": { 299cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 300cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 301cb93a386Sopenharmony_ci }, 302cb93a386Sopenharmony_ci "infra_step": true, 303cb93a386Sopenharmony_ci "name": "Set CPU 0's governor to ondemand", 304cb93a386Sopenharmony_ci "timeout": 30, 305cb93a386Sopenharmony_ci "~followup_annotations": [ 306cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 307cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import os@@@", 308cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import subprocess@@@", 309cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import sys@@@", 310cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import time@@@", 311cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ADB = sys.argv[1]@@@", 312cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@cpu = int(sys.argv[2])@@@", 313cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@gov = sys.argv[3]@@@", 314cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 315cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@log = subprocess.check_output([ADB, 'root'])@@@", 316cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@# check for message like 'adbd cannot run as root in production builds'@@@", 317cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print(log)@@@", 318cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@if 'cannot' in log:@@@", 319cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ raise Exception('adb root failed')@@@", 320cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 321cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@subprocess.check_output([ADB, 'shell', 'echo \"%s\" > '@@@", 322cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ '/sys/devices/system/cpu/cpu%d/cpufreq/scaling_governor' % (gov, cpu)])@@@", 323cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@actual_gov = subprocess.check_output([ADB, 'shell', 'cat '@@@", 324cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ '/sys/devices/system/cpu/cpu%d/cpufreq/scaling_governor' % cpu]).strip()@@@", 325cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@if actual_gov != gov:@@@", 326cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ raise Exception('(actual, expected) (%s, %s)'@@@", 327cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ % (actual_gov, gov))@@@", 328cb93a386Sopenharmony_ci "@@@STEP_LOG_END@python.inline@@@" 329cb93a386Sopenharmony_ci ] 330cb93a386Sopenharmony_ci }, 331cb93a386Sopenharmony_ci { 332cb93a386Sopenharmony_ci "cmd": [ 333cb93a386Sopenharmony_ci "/usr/bin/adb.1.0.35", 334cb93a386Sopenharmony_ci "push", 335cb93a386Sopenharmony_ci "[START_DIR]/build/dm", 336cb93a386Sopenharmony_ci "/data/local/tmp/" 337cb93a386Sopenharmony_ci ], 338cb93a386Sopenharmony_ci "cwd": "[START_DIR]/skia", 339cb93a386Sopenharmony_ci "env": { 340cb93a386Sopenharmony_ci "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey", 341cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 342cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 343cb93a386Sopenharmony_ci }, 344cb93a386Sopenharmony_ci "infra_step": true, 345cb93a386Sopenharmony_ci "name": "push dm" 346cb93a386Sopenharmony_ci }, 347cb93a386Sopenharmony_ci { 348cb93a386Sopenharmony_ci "cmd": [ 349cb93a386Sopenharmony_ci "vpython", 350cb93a386Sopenharmony_ci "-u", 351cb93a386Sopenharmony_ci "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 352cb93a386Sopenharmony_ci "--json-output", 353cb93a386Sopenharmony_ci "/path/to/tmp/json", 354cb93a386Sopenharmony_ci "glob", 355cb93a386Sopenharmony_ci "[START_DIR]/skia/resources", 356cb93a386Sopenharmony_ci "*" 357cb93a386Sopenharmony_ci ], 358cb93a386Sopenharmony_ci "infra_step": true, 359cb93a386Sopenharmony_ci "name": "ls [START_DIR]/skia/resources/*", 360cb93a386Sopenharmony_ci "~followup_annotations": [ 361cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@glob@[START_DIR]/skia/resources/bar.jpg@@@", 362cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@glob@[START_DIR]/skia/resources/foo.png@@@", 363cb93a386Sopenharmony_ci "@@@STEP_LOG_END@glob@@@" 364cb93a386Sopenharmony_ci ] 365cb93a386Sopenharmony_ci }, 366cb93a386Sopenharmony_ci { 367cb93a386Sopenharmony_ci "cmd": [ 368cb93a386Sopenharmony_ci "/usr/bin/adb.1.0.35", 369cb93a386Sopenharmony_ci "push", 370cb93a386Sopenharmony_ci "[START_DIR]/skia/resources/bar.jpg", 371cb93a386Sopenharmony_ci "[START_DIR]/skia/resources/foo.png", 372cb93a386Sopenharmony_ci "/sdcard/revenge_of_the_skiabot/resources" 373cb93a386Sopenharmony_ci ], 374cb93a386Sopenharmony_ci "cwd": "[START_DIR]/skia", 375cb93a386Sopenharmony_ci "env": { 376cb93a386Sopenharmony_ci "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey", 377cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 378cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 379cb93a386Sopenharmony_ci }, 380cb93a386Sopenharmony_ci "infra_step": true, 381cb93a386Sopenharmony_ci "name": "push [START_DIR]/skia/resources/* /sdcard/revenge_of_the_skiabot/resources" 382cb93a386Sopenharmony_ci }, 383cb93a386Sopenharmony_ci { 384cb93a386Sopenharmony_ci "cmd": [ 385cb93a386Sopenharmony_ci "vpython", 386cb93a386Sopenharmony_ci "-u", 387cb93a386Sopenharmony_ci "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 388cb93a386Sopenharmony_ci "--json-output", 389cb93a386Sopenharmony_ci "/path/to/tmp/json", 390cb93a386Sopenharmony_ci "copy", 391cb93a386Sopenharmony_ci "[START_DIR]/skia/infra/bots/assets/skp/VERSION", 392cb93a386Sopenharmony_ci "/path/to/tmp/" 393cb93a386Sopenharmony_ci ], 394cb93a386Sopenharmony_ci "infra_step": true, 395cb93a386Sopenharmony_ci "name": "Get skp VERSION", 396cb93a386Sopenharmony_ci "~followup_annotations": [ 397cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@VERSION@42@@@", 398cb93a386Sopenharmony_ci "@@@STEP_LOG_END@VERSION@@@" 399cb93a386Sopenharmony_ci ] 400cb93a386Sopenharmony_ci }, 401cb93a386Sopenharmony_ci { 402cb93a386Sopenharmony_ci "cmd": [ 403cb93a386Sopenharmony_ci "vpython", 404cb93a386Sopenharmony_ci "-u", 405cb93a386Sopenharmony_ci "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 406cb93a386Sopenharmony_ci "--json-output", 407cb93a386Sopenharmony_ci "/path/to/tmp/json", 408cb93a386Sopenharmony_ci "copy", 409cb93a386Sopenharmony_ci "42", 410cb93a386Sopenharmony_ci "[START_DIR]/tmp/SKP_VERSION" 411cb93a386Sopenharmony_ci ], 412cb93a386Sopenharmony_ci "infra_step": true, 413cb93a386Sopenharmony_ci "name": "write SKP_VERSION", 414cb93a386Sopenharmony_ci "~followup_annotations": [ 415cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@SKP_VERSION@42@@@", 416cb93a386Sopenharmony_ci "@@@STEP_LOG_END@SKP_VERSION@@@" 417cb93a386Sopenharmony_ci ] 418cb93a386Sopenharmony_ci }, 419cb93a386Sopenharmony_ci { 420cb93a386Sopenharmony_ci "cmd": [ 421cb93a386Sopenharmony_ci "/usr/bin/adb.1.0.35", 422cb93a386Sopenharmony_ci "shell", 423cb93a386Sopenharmony_ci "cat", 424cb93a386Sopenharmony_ci "/sdcard/revenge_of_the_skiabot/SKP_VERSION" 425cb93a386Sopenharmony_ci ], 426cb93a386Sopenharmony_ci "cwd": "[START_DIR]/skia", 427cb93a386Sopenharmony_ci "env": { 428cb93a386Sopenharmony_ci "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey", 429cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 430cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 431cb93a386Sopenharmony_ci }, 432cb93a386Sopenharmony_ci "infra_step": true, 433cb93a386Sopenharmony_ci "name": "read /sdcard/revenge_of_the_skiabot/SKP_VERSION" 434cb93a386Sopenharmony_ci }, 435cb93a386Sopenharmony_ci { 436cb93a386Sopenharmony_ci "cmd": [ 437cb93a386Sopenharmony_ci "python", 438cb93a386Sopenharmony_ci "-u", 439cb93a386Sopenharmony_ci "\nimport subprocess\nimport sys\n\n# Remove the path.\nadb = sys.argv[1]\npath = sys.argv[2]\nprint('Removing %s' % path)\ncmd = [adb, 'shell', 'rm', '-rf', path]\nprint(' '.join(cmd))\nsubprocess.check_call(cmd)\n\n# Verify that the path was deleted.\nprint('Checking for existence of %s' % path)\ncmd = [adb, 'shell', 'ls', path]\nprint(' '.join(cmd))\ntry:\n output = subprocess.check_output(cmd, stderr=subprocess.STDOUT)\nexcept subprocess.CalledProcessError as e:\n output = e.output\nprint('Output was:')\nprint('======')\nprint(output)\nprint('======')\nif 'No such file or directory' not in output:\n raise Exception('%s exists despite being deleted' % path)\n", 440cb93a386Sopenharmony_ci "/usr/bin/adb.1.0.35", 441cb93a386Sopenharmony_ci "/sdcard/revenge_of_the_skiabot/SKP_VERSION" 442cb93a386Sopenharmony_ci ], 443cb93a386Sopenharmony_ci "env": { 444cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 445cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 446cb93a386Sopenharmony_ci }, 447cb93a386Sopenharmony_ci "infra_step": true, 448cb93a386Sopenharmony_ci "name": "rm /sdcard/revenge_of_the_skiabot/SKP_VERSION", 449cb93a386Sopenharmony_ci "~followup_annotations": [ 450cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 451cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import subprocess@@@", 452cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import sys@@@", 453cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 454cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@# Remove the path.@@@", 455cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@adb = sys.argv[1]@@@", 456cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@path = sys.argv[2]@@@", 457cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print('Removing %s' % path)@@@", 458cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@cmd = [adb, 'shell', 'rm', '-rf', path]@@@", 459cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print(' '.join(cmd))@@@", 460cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@subprocess.check_call(cmd)@@@", 461cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 462cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@# Verify that the path was deleted.@@@", 463cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print('Checking for existence of %s' % path)@@@", 464cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@cmd = [adb, 'shell', 'ls', path]@@@", 465cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print(' '.join(cmd))@@@", 466cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@try:@@@", 467cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ output = subprocess.check_output(cmd, stderr=subprocess.STDOUT)@@@", 468cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@except subprocess.CalledProcessError as e:@@@", 469cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ output = e.output@@@", 470cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print('Output was:')@@@", 471cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print('======')@@@", 472cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print(output)@@@", 473cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print('======')@@@", 474cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@if 'No such file or directory' not in output:@@@", 475cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ raise Exception('%s exists despite being deleted' % path)@@@", 476cb93a386Sopenharmony_ci "@@@STEP_LOG_END@python.inline@@@" 477cb93a386Sopenharmony_ci ] 478cb93a386Sopenharmony_ci }, 479cb93a386Sopenharmony_ci { 480cb93a386Sopenharmony_ci "cmd": [ 481cb93a386Sopenharmony_ci "python", 482cb93a386Sopenharmony_ci "-u", 483cb93a386Sopenharmony_ci "\nimport subprocess\nimport sys\n\n# Remove the path.\nadb = sys.argv[1]\npath = sys.argv[2]\nprint('Removing %s' % path)\ncmd = [adb, 'shell', 'rm', '-rf', path]\nprint(' '.join(cmd))\nsubprocess.check_call(cmd)\n\n# Verify that the path was deleted.\nprint('Checking for existence of %s' % path)\ncmd = [adb, 'shell', 'ls', path]\nprint(' '.join(cmd))\ntry:\n output = subprocess.check_output(cmd, stderr=subprocess.STDOUT)\nexcept subprocess.CalledProcessError as e:\n output = e.output\nprint('Output was:')\nprint('======')\nprint(output)\nprint('======')\nif 'No such file or directory' not in output:\n raise Exception('%s exists despite being deleted' % path)\n", 484cb93a386Sopenharmony_ci "/usr/bin/adb.1.0.35", 485cb93a386Sopenharmony_ci "/sdcard/revenge_of_the_skiabot/skps" 486cb93a386Sopenharmony_ci ], 487cb93a386Sopenharmony_ci "env": { 488cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 489cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 490cb93a386Sopenharmony_ci }, 491cb93a386Sopenharmony_ci "infra_step": true, 492cb93a386Sopenharmony_ci "name": "rm /sdcard/revenge_of_the_skiabot/skps", 493cb93a386Sopenharmony_ci "~followup_annotations": [ 494cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 495cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import subprocess@@@", 496cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import sys@@@", 497cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 498cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@# Remove the path.@@@", 499cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@adb = sys.argv[1]@@@", 500cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@path = sys.argv[2]@@@", 501cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print('Removing %s' % path)@@@", 502cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@cmd = [adb, 'shell', 'rm', '-rf', path]@@@", 503cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print(' '.join(cmd))@@@", 504cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@subprocess.check_call(cmd)@@@", 505cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 506cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@# Verify that the path was deleted.@@@", 507cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print('Checking for existence of %s' % path)@@@", 508cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@cmd = [adb, 'shell', 'ls', path]@@@", 509cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print(' '.join(cmd))@@@", 510cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@try:@@@", 511cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ output = subprocess.check_output(cmd, stderr=subprocess.STDOUT)@@@", 512cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@except subprocess.CalledProcessError as e:@@@", 513cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ output = e.output@@@", 514cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print('Output was:')@@@", 515cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print('======')@@@", 516cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print(output)@@@", 517cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print('======')@@@", 518cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@if 'No such file or directory' not in output:@@@", 519cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ raise Exception('%s exists despite being deleted' % path)@@@", 520cb93a386Sopenharmony_ci "@@@STEP_LOG_END@python.inline@@@" 521cb93a386Sopenharmony_ci ] 522cb93a386Sopenharmony_ci }, 523cb93a386Sopenharmony_ci { 524cb93a386Sopenharmony_ci "cmd": [ 525cb93a386Sopenharmony_ci "/usr/bin/adb.1.0.35", 526cb93a386Sopenharmony_ci "shell", 527cb93a386Sopenharmony_ci "mkdir", 528cb93a386Sopenharmony_ci "-p", 529cb93a386Sopenharmony_ci "/sdcard/revenge_of_the_skiabot/skps" 530cb93a386Sopenharmony_ci ], 531cb93a386Sopenharmony_ci "cwd": "[START_DIR]/skia", 532cb93a386Sopenharmony_ci "env": { 533cb93a386Sopenharmony_ci "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey", 534cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 535cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 536cb93a386Sopenharmony_ci }, 537cb93a386Sopenharmony_ci "infra_step": true, 538cb93a386Sopenharmony_ci "name": "mkdir /sdcard/revenge_of_the_skiabot/skps" 539cb93a386Sopenharmony_ci }, 540cb93a386Sopenharmony_ci { 541cb93a386Sopenharmony_ci "cmd": [ 542cb93a386Sopenharmony_ci "vpython", 543cb93a386Sopenharmony_ci "-u", 544cb93a386Sopenharmony_ci "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 545cb93a386Sopenharmony_ci "--json-output", 546cb93a386Sopenharmony_ci "/path/to/tmp/json", 547cb93a386Sopenharmony_ci "glob", 548cb93a386Sopenharmony_ci "[START_DIR]/skp", 549cb93a386Sopenharmony_ci "*" 550cb93a386Sopenharmony_ci ], 551cb93a386Sopenharmony_ci "infra_step": true, 552cb93a386Sopenharmony_ci "name": "ls [START_DIR]/skp/*", 553cb93a386Sopenharmony_ci "~followup_annotations": [ 554cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@glob@[START_DIR]/skp/bar.jpg@@@", 555cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@glob@[START_DIR]/skp/foo.png@@@", 556cb93a386Sopenharmony_ci "@@@STEP_LOG_END@glob@@@" 557cb93a386Sopenharmony_ci ] 558cb93a386Sopenharmony_ci }, 559cb93a386Sopenharmony_ci { 560cb93a386Sopenharmony_ci "cmd": [ 561cb93a386Sopenharmony_ci "/usr/bin/adb.1.0.35", 562cb93a386Sopenharmony_ci "push", 563cb93a386Sopenharmony_ci "[START_DIR]/skp/bar.jpg", 564cb93a386Sopenharmony_ci "[START_DIR]/skp/foo.png", 565cb93a386Sopenharmony_ci "/sdcard/revenge_of_the_skiabot/skps" 566cb93a386Sopenharmony_ci ], 567cb93a386Sopenharmony_ci "cwd": "[START_DIR]/skia", 568cb93a386Sopenharmony_ci "env": { 569cb93a386Sopenharmony_ci "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey", 570cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 571cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 572cb93a386Sopenharmony_ci }, 573cb93a386Sopenharmony_ci "infra_step": true, 574cb93a386Sopenharmony_ci "name": "push [START_DIR]/skp/* /sdcard/revenge_of_the_skiabot/skps" 575cb93a386Sopenharmony_ci }, 576cb93a386Sopenharmony_ci { 577cb93a386Sopenharmony_ci "cmd": [ 578cb93a386Sopenharmony_ci "/usr/bin/adb.1.0.35", 579cb93a386Sopenharmony_ci "push", 580cb93a386Sopenharmony_ci "[START_DIR]/tmp/SKP_VERSION", 581cb93a386Sopenharmony_ci "/sdcard/revenge_of_the_skiabot/SKP_VERSION" 582cb93a386Sopenharmony_ci ], 583cb93a386Sopenharmony_ci "cwd": "[START_DIR]/skia", 584cb93a386Sopenharmony_ci "env": { 585cb93a386Sopenharmony_ci "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey", 586cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 587cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 588cb93a386Sopenharmony_ci }, 589cb93a386Sopenharmony_ci "infra_step": true, 590cb93a386Sopenharmony_ci "name": "push [START_DIR]/tmp/SKP_VERSION /sdcard/revenge_of_the_skiabot/SKP_VERSION" 591cb93a386Sopenharmony_ci }, 592cb93a386Sopenharmony_ci { 593cb93a386Sopenharmony_ci "cmd": [ 594cb93a386Sopenharmony_ci "vpython", 595cb93a386Sopenharmony_ci "-u", 596cb93a386Sopenharmony_ci "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 597cb93a386Sopenharmony_ci "--json-output", 598cb93a386Sopenharmony_ci "/path/to/tmp/json", 599cb93a386Sopenharmony_ci "copy", 600cb93a386Sopenharmony_ci "[START_DIR]/skia/infra/bots/assets/skimage/VERSION", 601cb93a386Sopenharmony_ci "/path/to/tmp/" 602cb93a386Sopenharmony_ci ], 603cb93a386Sopenharmony_ci "infra_step": true, 604cb93a386Sopenharmony_ci "name": "Get skimage VERSION", 605cb93a386Sopenharmony_ci "~followup_annotations": [ 606cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@VERSION@42@@@", 607cb93a386Sopenharmony_ci "@@@STEP_LOG_END@VERSION@@@" 608cb93a386Sopenharmony_ci ] 609cb93a386Sopenharmony_ci }, 610cb93a386Sopenharmony_ci { 611cb93a386Sopenharmony_ci "cmd": [ 612cb93a386Sopenharmony_ci "vpython", 613cb93a386Sopenharmony_ci "-u", 614cb93a386Sopenharmony_ci "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 615cb93a386Sopenharmony_ci "--json-output", 616cb93a386Sopenharmony_ci "/path/to/tmp/json", 617cb93a386Sopenharmony_ci "copy", 618cb93a386Sopenharmony_ci "42", 619cb93a386Sopenharmony_ci "[START_DIR]/tmp/SK_IMAGE_VERSION" 620cb93a386Sopenharmony_ci ], 621cb93a386Sopenharmony_ci "infra_step": true, 622cb93a386Sopenharmony_ci "name": "write SK_IMAGE_VERSION", 623cb93a386Sopenharmony_ci "~followup_annotations": [ 624cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@SK_IMAGE_VERSION@42@@@", 625cb93a386Sopenharmony_ci "@@@STEP_LOG_END@SK_IMAGE_VERSION@@@" 626cb93a386Sopenharmony_ci ] 627cb93a386Sopenharmony_ci }, 628cb93a386Sopenharmony_ci { 629cb93a386Sopenharmony_ci "cmd": [ 630cb93a386Sopenharmony_ci "/usr/bin/adb.1.0.35", 631cb93a386Sopenharmony_ci "shell", 632cb93a386Sopenharmony_ci "cat", 633cb93a386Sopenharmony_ci "/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION" 634cb93a386Sopenharmony_ci ], 635cb93a386Sopenharmony_ci "cwd": "[START_DIR]/skia", 636cb93a386Sopenharmony_ci "env": { 637cb93a386Sopenharmony_ci "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey", 638cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 639cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 640cb93a386Sopenharmony_ci }, 641cb93a386Sopenharmony_ci "infra_step": true, 642cb93a386Sopenharmony_ci "name": "read /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION" 643cb93a386Sopenharmony_ci }, 644cb93a386Sopenharmony_ci { 645cb93a386Sopenharmony_ci "cmd": [ 646cb93a386Sopenharmony_ci "python", 647cb93a386Sopenharmony_ci "-u", 648cb93a386Sopenharmony_ci "\nimport subprocess\nimport sys\n\n# Remove the path.\nadb = sys.argv[1]\npath = sys.argv[2]\nprint('Removing %s' % path)\ncmd = [adb, 'shell', 'rm', '-rf', path]\nprint(' '.join(cmd))\nsubprocess.check_call(cmd)\n\n# Verify that the path was deleted.\nprint('Checking for existence of %s' % path)\ncmd = [adb, 'shell', 'ls', path]\nprint(' '.join(cmd))\ntry:\n output = subprocess.check_output(cmd, stderr=subprocess.STDOUT)\nexcept subprocess.CalledProcessError as e:\n output = e.output\nprint('Output was:')\nprint('======')\nprint(output)\nprint('======')\nif 'No such file or directory' not in output:\n raise Exception('%s exists despite being deleted' % path)\n", 649cb93a386Sopenharmony_ci "/usr/bin/adb.1.0.35", 650cb93a386Sopenharmony_ci "/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION" 651cb93a386Sopenharmony_ci ], 652cb93a386Sopenharmony_ci "env": { 653cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 654cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 655cb93a386Sopenharmony_ci }, 656cb93a386Sopenharmony_ci "infra_step": true, 657cb93a386Sopenharmony_ci "name": "rm /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION", 658cb93a386Sopenharmony_ci "~followup_annotations": [ 659cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 660cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import subprocess@@@", 661cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import sys@@@", 662cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 663cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@# Remove the path.@@@", 664cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@adb = sys.argv[1]@@@", 665cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@path = sys.argv[2]@@@", 666cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print('Removing %s' % path)@@@", 667cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@cmd = [adb, 'shell', 'rm', '-rf', path]@@@", 668cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print(' '.join(cmd))@@@", 669cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@subprocess.check_call(cmd)@@@", 670cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 671cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@# Verify that the path was deleted.@@@", 672cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print('Checking for existence of %s' % path)@@@", 673cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@cmd = [adb, 'shell', 'ls', path]@@@", 674cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print(' '.join(cmd))@@@", 675cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@try:@@@", 676cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ output = subprocess.check_output(cmd, stderr=subprocess.STDOUT)@@@", 677cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@except subprocess.CalledProcessError as e:@@@", 678cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ output = e.output@@@", 679cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print('Output was:')@@@", 680cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print('======')@@@", 681cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print(output)@@@", 682cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print('======')@@@", 683cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@if 'No such file or directory' not in output:@@@", 684cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ raise Exception('%s exists despite being deleted' % path)@@@", 685cb93a386Sopenharmony_ci "@@@STEP_LOG_END@python.inline@@@" 686cb93a386Sopenharmony_ci ] 687cb93a386Sopenharmony_ci }, 688cb93a386Sopenharmony_ci { 689cb93a386Sopenharmony_ci "cmd": [ 690cb93a386Sopenharmony_ci "python", 691cb93a386Sopenharmony_ci "-u", 692cb93a386Sopenharmony_ci "\nimport subprocess\nimport sys\n\n# Remove the path.\nadb = sys.argv[1]\npath = sys.argv[2]\nprint('Removing %s' % path)\ncmd = [adb, 'shell', 'rm', '-rf', path]\nprint(' '.join(cmd))\nsubprocess.check_call(cmd)\n\n# Verify that the path was deleted.\nprint('Checking for existence of %s' % path)\ncmd = [adb, 'shell', 'ls', path]\nprint(' '.join(cmd))\ntry:\n output = subprocess.check_output(cmd, stderr=subprocess.STDOUT)\nexcept subprocess.CalledProcessError as e:\n output = e.output\nprint('Output was:')\nprint('======')\nprint(output)\nprint('======')\nif 'No such file or directory' not in output:\n raise Exception('%s exists despite being deleted' % path)\n", 693cb93a386Sopenharmony_ci "/usr/bin/adb.1.0.35", 694cb93a386Sopenharmony_ci "/sdcard/revenge_of_the_skiabot/images" 695cb93a386Sopenharmony_ci ], 696cb93a386Sopenharmony_ci "env": { 697cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 698cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 699cb93a386Sopenharmony_ci }, 700cb93a386Sopenharmony_ci "infra_step": true, 701cb93a386Sopenharmony_ci "name": "rm /sdcard/revenge_of_the_skiabot/images", 702cb93a386Sopenharmony_ci "~followup_annotations": [ 703cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 704cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import subprocess@@@", 705cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import sys@@@", 706cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 707cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@# Remove the path.@@@", 708cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@adb = sys.argv[1]@@@", 709cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@path = sys.argv[2]@@@", 710cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print('Removing %s' % path)@@@", 711cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@cmd = [adb, 'shell', 'rm', '-rf', path]@@@", 712cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print(' '.join(cmd))@@@", 713cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@subprocess.check_call(cmd)@@@", 714cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 715cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@# Verify that the path was deleted.@@@", 716cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print('Checking for existence of %s' % path)@@@", 717cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@cmd = [adb, 'shell', 'ls', path]@@@", 718cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print(' '.join(cmd))@@@", 719cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@try:@@@", 720cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ output = subprocess.check_output(cmd, stderr=subprocess.STDOUT)@@@", 721cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@except subprocess.CalledProcessError as e:@@@", 722cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ output = e.output@@@", 723cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print('Output was:')@@@", 724cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print('======')@@@", 725cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print(output)@@@", 726cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print('======')@@@", 727cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@if 'No such file or directory' not in output:@@@", 728cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ raise Exception('%s exists despite being deleted' % path)@@@", 729cb93a386Sopenharmony_ci "@@@STEP_LOG_END@python.inline@@@" 730cb93a386Sopenharmony_ci ] 731cb93a386Sopenharmony_ci }, 732cb93a386Sopenharmony_ci { 733cb93a386Sopenharmony_ci "cmd": [ 734cb93a386Sopenharmony_ci "/usr/bin/adb.1.0.35", 735cb93a386Sopenharmony_ci "shell", 736cb93a386Sopenharmony_ci "mkdir", 737cb93a386Sopenharmony_ci "-p", 738cb93a386Sopenharmony_ci "/sdcard/revenge_of_the_skiabot/images" 739cb93a386Sopenharmony_ci ], 740cb93a386Sopenharmony_ci "cwd": "[START_DIR]/skia", 741cb93a386Sopenharmony_ci "env": { 742cb93a386Sopenharmony_ci "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey", 743cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 744cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 745cb93a386Sopenharmony_ci }, 746cb93a386Sopenharmony_ci "infra_step": true, 747cb93a386Sopenharmony_ci "name": "mkdir /sdcard/revenge_of_the_skiabot/images" 748cb93a386Sopenharmony_ci }, 749cb93a386Sopenharmony_ci { 750cb93a386Sopenharmony_ci "cmd": [ 751cb93a386Sopenharmony_ci "vpython", 752cb93a386Sopenharmony_ci "-u", 753cb93a386Sopenharmony_ci "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 754cb93a386Sopenharmony_ci "--json-output", 755cb93a386Sopenharmony_ci "/path/to/tmp/json", 756cb93a386Sopenharmony_ci "glob", 757cb93a386Sopenharmony_ci "[START_DIR]/skimage", 758cb93a386Sopenharmony_ci "*" 759cb93a386Sopenharmony_ci ], 760cb93a386Sopenharmony_ci "infra_step": true, 761cb93a386Sopenharmony_ci "name": "ls [START_DIR]/skimage/*", 762cb93a386Sopenharmony_ci "~followup_annotations": [ 763cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@glob@[START_DIR]/skimage/bar.jpg@@@", 764cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@glob@[START_DIR]/skimage/foo.png@@@", 765cb93a386Sopenharmony_ci "@@@STEP_LOG_END@glob@@@" 766cb93a386Sopenharmony_ci ] 767cb93a386Sopenharmony_ci }, 768cb93a386Sopenharmony_ci { 769cb93a386Sopenharmony_ci "cmd": [ 770cb93a386Sopenharmony_ci "/usr/bin/adb.1.0.35", 771cb93a386Sopenharmony_ci "push", 772cb93a386Sopenharmony_ci "[START_DIR]/skimage/bar.jpg", 773cb93a386Sopenharmony_ci "[START_DIR]/skimage/foo.png", 774cb93a386Sopenharmony_ci "/sdcard/revenge_of_the_skiabot/images" 775cb93a386Sopenharmony_ci ], 776cb93a386Sopenharmony_ci "cwd": "[START_DIR]/skia", 777cb93a386Sopenharmony_ci "env": { 778cb93a386Sopenharmony_ci "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey", 779cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 780cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 781cb93a386Sopenharmony_ci }, 782cb93a386Sopenharmony_ci "infra_step": true, 783cb93a386Sopenharmony_ci "name": "push [START_DIR]/skimage/* /sdcard/revenge_of_the_skiabot/images" 784cb93a386Sopenharmony_ci }, 785cb93a386Sopenharmony_ci { 786cb93a386Sopenharmony_ci "cmd": [ 787cb93a386Sopenharmony_ci "/usr/bin/adb.1.0.35", 788cb93a386Sopenharmony_ci "push", 789cb93a386Sopenharmony_ci "[START_DIR]/tmp/SK_IMAGE_VERSION", 790cb93a386Sopenharmony_ci "/sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION" 791cb93a386Sopenharmony_ci ], 792cb93a386Sopenharmony_ci "cwd": "[START_DIR]/skia", 793cb93a386Sopenharmony_ci "env": { 794cb93a386Sopenharmony_ci "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey", 795cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 796cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 797cb93a386Sopenharmony_ci }, 798cb93a386Sopenharmony_ci "infra_step": true, 799cb93a386Sopenharmony_ci "name": "push [START_DIR]/tmp/SK_IMAGE_VERSION /sdcard/revenge_of_the_skiabot/SK_IMAGE_VERSION" 800cb93a386Sopenharmony_ci }, 801cb93a386Sopenharmony_ci { 802cb93a386Sopenharmony_ci "cmd": [ 803cb93a386Sopenharmony_ci "vpython", 804cb93a386Sopenharmony_ci "-u", 805cb93a386Sopenharmony_ci "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 806cb93a386Sopenharmony_ci "--json-output", 807cb93a386Sopenharmony_ci "/path/to/tmp/json", 808cb93a386Sopenharmony_ci "copy", 809cb93a386Sopenharmony_ci "[START_DIR]/skia/infra/bots/assets/svg/VERSION", 810cb93a386Sopenharmony_ci "/path/to/tmp/" 811cb93a386Sopenharmony_ci ], 812cb93a386Sopenharmony_ci "infra_step": true, 813cb93a386Sopenharmony_ci "name": "Get svg VERSION", 814cb93a386Sopenharmony_ci "~followup_annotations": [ 815cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@VERSION@42@@@", 816cb93a386Sopenharmony_ci "@@@STEP_LOG_END@VERSION@@@" 817cb93a386Sopenharmony_ci ] 818cb93a386Sopenharmony_ci }, 819cb93a386Sopenharmony_ci { 820cb93a386Sopenharmony_ci "cmd": [ 821cb93a386Sopenharmony_ci "vpython", 822cb93a386Sopenharmony_ci "-u", 823cb93a386Sopenharmony_ci "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 824cb93a386Sopenharmony_ci "--json-output", 825cb93a386Sopenharmony_ci "/path/to/tmp/json", 826cb93a386Sopenharmony_ci "copy", 827cb93a386Sopenharmony_ci "42", 828cb93a386Sopenharmony_ci "[START_DIR]/tmp/SVG_VERSION" 829cb93a386Sopenharmony_ci ], 830cb93a386Sopenharmony_ci "infra_step": true, 831cb93a386Sopenharmony_ci "name": "write SVG_VERSION", 832cb93a386Sopenharmony_ci "~followup_annotations": [ 833cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@SVG_VERSION@42@@@", 834cb93a386Sopenharmony_ci "@@@STEP_LOG_END@SVG_VERSION@@@" 835cb93a386Sopenharmony_ci ] 836cb93a386Sopenharmony_ci }, 837cb93a386Sopenharmony_ci { 838cb93a386Sopenharmony_ci "cmd": [ 839cb93a386Sopenharmony_ci "/usr/bin/adb.1.0.35", 840cb93a386Sopenharmony_ci "shell", 841cb93a386Sopenharmony_ci "cat", 842cb93a386Sopenharmony_ci "/sdcard/revenge_of_the_skiabot/SVG_VERSION" 843cb93a386Sopenharmony_ci ], 844cb93a386Sopenharmony_ci "cwd": "[START_DIR]/skia", 845cb93a386Sopenharmony_ci "env": { 846cb93a386Sopenharmony_ci "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey", 847cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 848cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 849cb93a386Sopenharmony_ci }, 850cb93a386Sopenharmony_ci "infra_step": true, 851cb93a386Sopenharmony_ci "name": "read /sdcard/revenge_of_the_skiabot/SVG_VERSION" 852cb93a386Sopenharmony_ci }, 853cb93a386Sopenharmony_ci { 854cb93a386Sopenharmony_ci "cmd": [ 855cb93a386Sopenharmony_ci "python", 856cb93a386Sopenharmony_ci "-u", 857cb93a386Sopenharmony_ci "\nimport subprocess\nimport sys\n\n# Remove the path.\nadb = sys.argv[1]\npath = sys.argv[2]\nprint('Removing %s' % path)\ncmd = [adb, 'shell', 'rm', '-rf', path]\nprint(' '.join(cmd))\nsubprocess.check_call(cmd)\n\n# Verify that the path was deleted.\nprint('Checking for existence of %s' % path)\ncmd = [adb, 'shell', 'ls', path]\nprint(' '.join(cmd))\ntry:\n output = subprocess.check_output(cmd, stderr=subprocess.STDOUT)\nexcept subprocess.CalledProcessError as e:\n output = e.output\nprint('Output was:')\nprint('======')\nprint(output)\nprint('======')\nif 'No such file or directory' not in output:\n raise Exception('%s exists despite being deleted' % path)\n", 858cb93a386Sopenharmony_ci "/usr/bin/adb.1.0.35", 859cb93a386Sopenharmony_ci "/sdcard/revenge_of_the_skiabot/SVG_VERSION" 860cb93a386Sopenharmony_ci ], 861cb93a386Sopenharmony_ci "env": { 862cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 863cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 864cb93a386Sopenharmony_ci }, 865cb93a386Sopenharmony_ci "infra_step": true, 866cb93a386Sopenharmony_ci "name": "rm /sdcard/revenge_of_the_skiabot/SVG_VERSION", 867cb93a386Sopenharmony_ci "~followup_annotations": [ 868cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 869cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import subprocess@@@", 870cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import sys@@@", 871cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 872cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@# Remove the path.@@@", 873cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@adb = sys.argv[1]@@@", 874cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@path = sys.argv[2]@@@", 875cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print('Removing %s' % path)@@@", 876cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@cmd = [adb, 'shell', 'rm', '-rf', path]@@@", 877cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print(' '.join(cmd))@@@", 878cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@subprocess.check_call(cmd)@@@", 879cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 880cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@# Verify that the path was deleted.@@@", 881cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print('Checking for existence of %s' % path)@@@", 882cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@cmd = [adb, 'shell', 'ls', path]@@@", 883cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print(' '.join(cmd))@@@", 884cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@try:@@@", 885cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ output = subprocess.check_output(cmd, stderr=subprocess.STDOUT)@@@", 886cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@except subprocess.CalledProcessError as e:@@@", 887cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ output = e.output@@@", 888cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print('Output was:')@@@", 889cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print('======')@@@", 890cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print(output)@@@", 891cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print('======')@@@", 892cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@if 'No such file or directory' not in output:@@@", 893cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ raise Exception('%s exists despite being deleted' % path)@@@", 894cb93a386Sopenharmony_ci "@@@STEP_LOG_END@python.inline@@@" 895cb93a386Sopenharmony_ci ] 896cb93a386Sopenharmony_ci }, 897cb93a386Sopenharmony_ci { 898cb93a386Sopenharmony_ci "cmd": [ 899cb93a386Sopenharmony_ci "python", 900cb93a386Sopenharmony_ci "-u", 901cb93a386Sopenharmony_ci "\nimport subprocess\nimport sys\n\n# Remove the path.\nadb = sys.argv[1]\npath = sys.argv[2]\nprint('Removing %s' % path)\ncmd = [adb, 'shell', 'rm', '-rf', path]\nprint(' '.join(cmd))\nsubprocess.check_call(cmd)\n\n# Verify that the path was deleted.\nprint('Checking for existence of %s' % path)\ncmd = [adb, 'shell', 'ls', path]\nprint(' '.join(cmd))\ntry:\n output = subprocess.check_output(cmd, stderr=subprocess.STDOUT)\nexcept subprocess.CalledProcessError as e:\n output = e.output\nprint('Output was:')\nprint('======')\nprint(output)\nprint('======')\nif 'No such file or directory' not in output:\n raise Exception('%s exists despite being deleted' % path)\n", 902cb93a386Sopenharmony_ci "/usr/bin/adb.1.0.35", 903cb93a386Sopenharmony_ci "/sdcard/revenge_of_the_skiabot/svgs" 904cb93a386Sopenharmony_ci ], 905cb93a386Sopenharmony_ci "env": { 906cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 907cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 908cb93a386Sopenharmony_ci }, 909cb93a386Sopenharmony_ci "infra_step": true, 910cb93a386Sopenharmony_ci "name": "rm /sdcard/revenge_of_the_skiabot/svgs", 911cb93a386Sopenharmony_ci "~followup_annotations": [ 912cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 913cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import subprocess@@@", 914cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import sys@@@", 915cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 916cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@# Remove the path.@@@", 917cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@adb = sys.argv[1]@@@", 918cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@path = sys.argv[2]@@@", 919cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print('Removing %s' % path)@@@", 920cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@cmd = [adb, 'shell', 'rm', '-rf', path]@@@", 921cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print(' '.join(cmd))@@@", 922cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@subprocess.check_call(cmd)@@@", 923cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 924cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@# Verify that the path was deleted.@@@", 925cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print('Checking for existence of %s' % path)@@@", 926cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@cmd = [adb, 'shell', 'ls', path]@@@", 927cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print(' '.join(cmd))@@@", 928cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@try:@@@", 929cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ output = subprocess.check_output(cmd, stderr=subprocess.STDOUT)@@@", 930cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@except subprocess.CalledProcessError as e:@@@", 931cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ output = e.output@@@", 932cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print('Output was:')@@@", 933cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print('======')@@@", 934cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print(output)@@@", 935cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print('======')@@@", 936cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@if 'No such file or directory' not in output:@@@", 937cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ raise Exception('%s exists despite being deleted' % path)@@@", 938cb93a386Sopenharmony_ci "@@@STEP_LOG_END@python.inline@@@" 939cb93a386Sopenharmony_ci ] 940cb93a386Sopenharmony_ci }, 941cb93a386Sopenharmony_ci { 942cb93a386Sopenharmony_ci "cmd": [ 943cb93a386Sopenharmony_ci "/usr/bin/adb.1.0.35", 944cb93a386Sopenharmony_ci "shell", 945cb93a386Sopenharmony_ci "mkdir", 946cb93a386Sopenharmony_ci "-p", 947cb93a386Sopenharmony_ci "/sdcard/revenge_of_the_skiabot/svgs" 948cb93a386Sopenharmony_ci ], 949cb93a386Sopenharmony_ci "cwd": "[START_DIR]/skia", 950cb93a386Sopenharmony_ci "env": { 951cb93a386Sopenharmony_ci "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey", 952cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 953cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 954cb93a386Sopenharmony_ci }, 955cb93a386Sopenharmony_ci "infra_step": true, 956cb93a386Sopenharmony_ci "name": "mkdir /sdcard/revenge_of_the_skiabot/svgs" 957cb93a386Sopenharmony_ci }, 958cb93a386Sopenharmony_ci { 959cb93a386Sopenharmony_ci "cmd": [ 960cb93a386Sopenharmony_ci "vpython", 961cb93a386Sopenharmony_ci "-u", 962cb93a386Sopenharmony_ci "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 963cb93a386Sopenharmony_ci "--json-output", 964cb93a386Sopenharmony_ci "/path/to/tmp/json", 965cb93a386Sopenharmony_ci "glob", 966cb93a386Sopenharmony_ci "[START_DIR]/svg", 967cb93a386Sopenharmony_ci "*" 968cb93a386Sopenharmony_ci ], 969cb93a386Sopenharmony_ci "infra_step": true, 970cb93a386Sopenharmony_ci "name": "ls [START_DIR]/svg/*", 971cb93a386Sopenharmony_ci "~followup_annotations": [ 972cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@glob@[START_DIR]/svg/bar.jpg@@@", 973cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@glob@[START_DIR]/svg/foo.png@@@", 974cb93a386Sopenharmony_ci "@@@STEP_LOG_END@glob@@@" 975cb93a386Sopenharmony_ci ] 976cb93a386Sopenharmony_ci }, 977cb93a386Sopenharmony_ci { 978cb93a386Sopenharmony_ci "cmd": [ 979cb93a386Sopenharmony_ci "/usr/bin/adb.1.0.35", 980cb93a386Sopenharmony_ci "push", 981cb93a386Sopenharmony_ci "[START_DIR]/svg/bar.jpg", 982cb93a386Sopenharmony_ci "[START_DIR]/svg/foo.png", 983cb93a386Sopenharmony_ci "/sdcard/revenge_of_the_skiabot/svgs" 984cb93a386Sopenharmony_ci ], 985cb93a386Sopenharmony_ci "cwd": "[START_DIR]/skia", 986cb93a386Sopenharmony_ci "env": { 987cb93a386Sopenharmony_ci "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey", 988cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 989cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 990cb93a386Sopenharmony_ci }, 991cb93a386Sopenharmony_ci "infra_step": true, 992cb93a386Sopenharmony_ci "name": "push [START_DIR]/svg/* /sdcard/revenge_of_the_skiabot/svgs" 993cb93a386Sopenharmony_ci }, 994cb93a386Sopenharmony_ci { 995cb93a386Sopenharmony_ci "cmd": [ 996cb93a386Sopenharmony_ci "/usr/bin/adb.1.0.35", 997cb93a386Sopenharmony_ci "push", 998cb93a386Sopenharmony_ci "[START_DIR]/tmp/SVG_VERSION", 999cb93a386Sopenharmony_ci "/sdcard/revenge_of_the_skiabot/SVG_VERSION" 1000cb93a386Sopenharmony_ci ], 1001cb93a386Sopenharmony_ci "cwd": "[START_DIR]/skia", 1002cb93a386Sopenharmony_ci "env": { 1003cb93a386Sopenharmony_ci "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey", 1004cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 1005cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 1006cb93a386Sopenharmony_ci }, 1007cb93a386Sopenharmony_ci "infra_step": true, 1008cb93a386Sopenharmony_ci "name": "push [START_DIR]/tmp/SVG_VERSION /sdcard/revenge_of_the_skiabot/SVG_VERSION" 1009cb93a386Sopenharmony_ci }, 1010cb93a386Sopenharmony_ci { 1011cb93a386Sopenharmony_ci "cmd": [ 1012cb93a386Sopenharmony_ci "vpython", 1013cb93a386Sopenharmony_ci "-u", 1014cb93a386Sopenharmony_ci "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 1015cb93a386Sopenharmony_ci "--json-output", 1016cb93a386Sopenharmony_ci "/path/to/tmp/json", 1017cb93a386Sopenharmony_ci "rmtree", 1018cb93a386Sopenharmony_ci "[START_DIR]/test" 1019cb93a386Sopenharmony_ci ], 1020cb93a386Sopenharmony_ci "infra_step": true, 1021cb93a386Sopenharmony_ci "name": "rmtree test" 1022cb93a386Sopenharmony_ci }, 1023cb93a386Sopenharmony_ci { 1024cb93a386Sopenharmony_ci "cmd": [ 1025cb93a386Sopenharmony_ci "vpython", 1026cb93a386Sopenharmony_ci "-u", 1027cb93a386Sopenharmony_ci "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 1028cb93a386Sopenharmony_ci "--json-output", 1029cb93a386Sopenharmony_ci "/path/to/tmp/json", 1030cb93a386Sopenharmony_ci "ensure-directory", 1031cb93a386Sopenharmony_ci "--mode", 1032cb93a386Sopenharmony_ci "0777", 1033cb93a386Sopenharmony_ci "[START_DIR]/test" 1034cb93a386Sopenharmony_ci ], 1035cb93a386Sopenharmony_ci "infra_step": true, 1036cb93a386Sopenharmony_ci "name": "makedirs test" 1037cb93a386Sopenharmony_ci }, 1038cb93a386Sopenharmony_ci { 1039cb93a386Sopenharmony_ci "cmd": [ 1040cb93a386Sopenharmony_ci "python", 1041cb93a386Sopenharmony_ci "-u", 1042cb93a386Sopenharmony_ci "\nimport subprocess\nimport sys\n\n# Remove the path.\nadb = sys.argv[1]\npath = sys.argv[2]\nprint('Removing %s' % path)\ncmd = [adb, 'shell', 'rm', '-rf', path]\nprint(' '.join(cmd))\nsubprocess.check_call(cmd)\n\n# Verify that the path was deleted.\nprint('Checking for existence of %s' % path)\ncmd = [adb, 'shell', 'ls', path]\nprint(' '.join(cmd))\ntry:\n output = subprocess.check_output(cmd, stderr=subprocess.STDOUT)\nexcept subprocess.CalledProcessError as e:\n output = e.output\nprint('Output was:')\nprint('======')\nprint(output)\nprint('======')\nif 'No such file or directory' not in output:\n raise Exception('%s exists despite being deleted' % path)\n", 1043cb93a386Sopenharmony_ci "/usr/bin/adb.1.0.35", 1044cb93a386Sopenharmony_ci "/sdcard/revenge_of_the_skiabot/dm_out" 1045cb93a386Sopenharmony_ci ], 1046cb93a386Sopenharmony_ci "env": { 1047cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 1048cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 1049cb93a386Sopenharmony_ci }, 1050cb93a386Sopenharmony_ci "infra_step": true, 1051cb93a386Sopenharmony_ci "name": "rm /sdcard/revenge_of_the_skiabot/dm_out", 1052cb93a386Sopenharmony_ci "~followup_annotations": [ 1053cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 1054cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import subprocess@@@", 1055cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import sys@@@", 1056cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 1057cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@# Remove the path.@@@", 1058cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@adb = sys.argv[1]@@@", 1059cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@path = sys.argv[2]@@@", 1060cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print('Removing %s' % path)@@@", 1061cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@cmd = [adb, 'shell', 'rm', '-rf', path]@@@", 1062cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print(' '.join(cmd))@@@", 1063cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@subprocess.check_call(cmd)@@@", 1064cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 1065cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@# Verify that the path was deleted.@@@", 1066cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print('Checking for existence of %s' % path)@@@", 1067cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@cmd = [adb, 'shell', 'ls', path]@@@", 1068cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print(' '.join(cmd))@@@", 1069cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@try:@@@", 1070cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ output = subprocess.check_output(cmd, stderr=subprocess.STDOUT)@@@", 1071cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@except subprocess.CalledProcessError as e:@@@", 1072cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ output = e.output@@@", 1073cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print('Output was:')@@@", 1074cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print('======')@@@", 1075cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print(output)@@@", 1076cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print('======')@@@", 1077cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@if 'No such file or directory' not in output:@@@", 1078cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ raise Exception('%s exists despite being deleted' % path)@@@", 1079cb93a386Sopenharmony_ci "@@@STEP_LOG_END@python.inline@@@" 1080cb93a386Sopenharmony_ci ] 1081cb93a386Sopenharmony_ci }, 1082cb93a386Sopenharmony_ci { 1083cb93a386Sopenharmony_ci "cmd": [ 1084cb93a386Sopenharmony_ci "/usr/bin/adb.1.0.35", 1085cb93a386Sopenharmony_ci "shell", 1086cb93a386Sopenharmony_ci "mkdir", 1087cb93a386Sopenharmony_ci "-p", 1088cb93a386Sopenharmony_ci "/sdcard/revenge_of_the_skiabot/dm_out" 1089cb93a386Sopenharmony_ci ], 1090cb93a386Sopenharmony_ci "cwd": "[START_DIR]/skia", 1091cb93a386Sopenharmony_ci "env": { 1092cb93a386Sopenharmony_ci "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey", 1093cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 1094cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 1095cb93a386Sopenharmony_ci }, 1096cb93a386Sopenharmony_ci "infra_step": true, 1097cb93a386Sopenharmony_ci "name": "mkdir /sdcard/revenge_of_the_skiabot/dm_out" 1098cb93a386Sopenharmony_ci }, 1099cb93a386Sopenharmony_ci { 1100cb93a386Sopenharmony_ci "cmd": [ 1101cb93a386Sopenharmony_ci "python", 1102cb93a386Sopenharmony_ci "-u", 1103cb93a386Sopenharmony_ci "\nimport contextlib\nimport math\nimport socket\nimport sys\nimport time\nimport urllib2\n\nHASHES_URL = sys.argv[1]\nRETRIES = 5\nTIMEOUT = 60\nWAIT_BASE = 15\n\nsocket.setdefaulttimeout(TIMEOUT)\nfor retry in range(RETRIES):\n try:\n with contextlib.closing(\n urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:\n hashes = w.read()\n with open(sys.argv[2], 'w') as f:\n f.write(hashes)\n break\n except Exception as e:\n print('Failed to get uninteresting hashes from %s:' % HASHES_URL)\n print(e)\n if retry == RETRIES:\n raise\n waittime = WAIT_BASE * math.pow(2, retry)\n print('Retry in %d seconds.' % waittime)\n time.sleep(waittime)\n", 1104cb93a386Sopenharmony_ci "https://example.com/hashes.txt", 1105cb93a386Sopenharmony_ci "[START_DIR]/tmp/uninteresting_hashes.txt" 1106cb93a386Sopenharmony_ci ], 1107cb93a386Sopenharmony_ci "env": { 1108cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 1109cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 1110cb93a386Sopenharmony_ci }, 1111cb93a386Sopenharmony_ci "infra_step": true, 1112cb93a386Sopenharmony_ci "name": "get uninteresting hashes", 1113cb93a386Sopenharmony_ci "~followup_annotations": [ 1114cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 1115cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import contextlib@@@", 1116cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import math@@@", 1117cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import socket@@@", 1118cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import sys@@@", 1119cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import time@@@", 1120cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import urllib2@@@", 1121cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 1122cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@HASHES_URL = sys.argv[1]@@@", 1123cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@RETRIES = 5@@@", 1124cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@TIMEOUT = 60@@@", 1125cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@WAIT_BASE = 15@@@", 1126cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 1127cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@socket.setdefaulttimeout(TIMEOUT)@@@", 1128cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@for retry in range(RETRIES):@@@", 1129cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ try:@@@", 1130cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ with contextlib.closing(@@@", 1131cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:@@@", 1132cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ hashes = w.read()@@@", 1133cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ with open(sys.argv[2], 'w') as f:@@@", 1134cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ f.write(hashes)@@@", 1135cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ break@@@", 1136cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ except Exception as e:@@@", 1137cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ print('Failed to get uninteresting hashes from %s:' % HASHES_URL)@@@", 1138cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ print(e)@@@", 1139cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ if retry == RETRIES:@@@", 1140cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ raise@@@", 1141cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ waittime = WAIT_BASE * math.pow(2, retry)@@@", 1142cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ print('Retry in %d seconds.' % waittime)@@@", 1143cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ time.sleep(waittime)@@@", 1144cb93a386Sopenharmony_ci "@@@STEP_LOG_END@python.inline@@@" 1145cb93a386Sopenharmony_ci ] 1146cb93a386Sopenharmony_ci }, 1147cb93a386Sopenharmony_ci { 1148cb93a386Sopenharmony_ci "cmd": [ 1149cb93a386Sopenharmony_ci "/usr/bin/adb.1.0.35", 1150cb93a386Sopenharmony_ci "push", 1151cb93a386Sopenharmony_ci "[START_DIR]/tmp/uninteresting_hashes.txt", 1152cb93a386Sopenharmony_ci "/sdcard/revenge_of_the_skiabot/uninteresting_hashes.txt" 1153cb93a386Sopenharmony_ci ], 1154cb93a386Sopenharmony_ci "cwd": "[START_DIR]/skia", 1155cb93a386Sopenharmony_ci "env": { 1156cb93a386Sopenharmony_ci "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey", 1157cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 1158cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 1159cb93a386Sopenharmony_ci }, 1160cb93a386Sopenharmony_ci "infra_step": true, 1161cb93a386Sopenharmony_ci "name": "push [START_DIR]/tmp/uninteresting_hashes.txt /sdcard/revenge_of_the_skiabot/uninteresting_hashes.txt" 1162cb93a386Sopenharmony_ci }, 1163cb93a386Sopenharmony_ci { 1164cb93a386Sopenharmony_ci "cmd": [ 1165cb93a386Sopenharmony_ci "python", 1166cb93a386Sopenharmony_ci "-u", 1167cb93a386Sopenharmony_ci "import os\nprint(os.environ.get('SWARMING_TASK_ID', ''))\n" 1168cb93a386Sopenharmony_ci ], 1169cb93a386Sopenharmony_ci "name": "get swarming task id", 1170cb93a386Sopenharmony_ci "~followup_annotations": [ 1171cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import os@@@", 1172cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@print(os.environ.get('SWARMING_TASK_ID', ''))@@@", 1173cb93a386Sopenharmony_ci "@@@STEP_LOG_END@python.inline@@@" 1174cb93a386Sopenharmony_ci ] 1175cb93a386Sopenharmony_ci }, 1176cb93a386Sopenharmony_ci { 1177cb93a386Sopenharmony_ci "cmd": [ 1178cb93a386Sopenharmony_ci "vpython", 1179cb93a386Sopenharmony_ci "-u", 1180cb93a386Sopenharmony_ci "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 1181cb93a386Sopenharmony_ci "--json-output", 1182cb93a386Sopenharmony_ci "/path/to/tmp/json", 1183cb93a386Sopenharmony_ci "copy", 1184cb93a386Sopenharmony_ci "set -x; LD_LIBRARY_PATH=/data/local/tmp/ /data/local/tmp/dm --example --flags --properties bot skia-bot-123 key1 value1 task 123456 --resourcePath /sdcard/revenge_of_the_skiabot/resources --skps /sdcard/revenge_of_the_skiabot/skps --images /sdcard/revenge_of_the_skiabot/images/dm --colorImages /sdcard/revenge_of_the_skiabot/images/colorspace --svgs /sdcard/revenge_of_the_skiabot/svgs/svg --uninterestingHashesFile /sdcard/revenge_of_the_skiabot/uninteresting_hashes.txt --writePath /sdcard/revenge_of_the_skiabot/dm_out; echo $? >/data/local/tmp/rc", 1185cb93a386Sopenharmony_ci "[START_DIR]/tmp/dm.sh" 1186cb93a386Sopenharmony_ci ], 1187cb93a386Sopenharmony_ci "env": { 1188cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 1189cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 1190cb93a386Sopenharmony_ci }, 1191cb93a386Sopenharmony_ci "infra_step": true, 1192cb93a386Sopenharmony_ci "name": "write dm.sh", 1193cb93a386Sopenharmony_ci "~followup_annotations": [ 1194cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@dm.sh@set -x; LD_LIBRARY_PATH=/data/local/tmp/ /data/local/tmp/dm --example --flags --properties bot skia-bot-123 key1 value1 task 123456 --resourcePath /sdcard/revenge_of_the_skiabot/resources --skps /sdcard/revenge_of_the_skiabot/skps --images /sdcard/revenge_of_the_skiabot/images/dm --colorImages /sdcard/revenge_of_the_skiabot/images/colorspace --svgs /sdcard/revenge_of_the_skiabot/svgs/svg --uninterestingHashesFile /sdcard/revenge_of_the_skiabot/uninteresting_hashes.txt --writePath /sdcard/revenge_of_the_skiabot/dm_out; echo $? >/data/local/tmp/rc@@@", 1195cb93a386Sopenharmony_ci "@@@STEP_LOG_END@dm.sh@@@" 1196cb93a386Sopenharmony_ci ] 1197cb93a386Sopenharmony_ci }, 1198cb93a386Sopenharmony_ci { 1199cb93a386Sopenharmony_ci "cmd": [ 1200cb93a386Sopenharmony_ci "/usr/bin/adb.1.0.35", 1201cb93a386Sopenharmony_ci "push", 1202cb93a386Sopenharmony_ci "[START_DIR]/tmp/dm.sh", 1203cb93a386Sopenharmony_ci "/data/local/tmp/" 1204cb93a386Sopenharmony_ci ], 1205cb93a386Sopenharmony_ci "cwd": "[START_DIR]/skia", 1206cb93a386Sopenharmony_ci "env": { 1207cb93a386Sopenharmony_ci "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey", 1208cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 1209cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 1210cb93a386Sopenharmony_ci }, 1211cb93a386Sopenharmony_ci "infra_step": true, 1212cb93a386Sopenharmony_ci "name": "push dm.sh" 1213cb93a386Sopenharmony_ci }, 1214cb93a386Sopenharmony_ci { 1215cb93a386Sopenharmony_ci "cmd": [ 1216cb93a386Sopenharmony_ci "/usr/bin/adb.1.0.35", 1217cb93a386Sopenharmony_ci "logcat", 1218cb93a386Sopenharmony_ci "-c" 1219cb93a386Sopenharmony_ci ], 1220cb93a386Sopenharmony_ci "cwd": "[START_DIR]/skia", 1221cb93a386Sopenharmony_ci "env": { 1222cb93a386Sopenharmony_ci "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey", 1223cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 1224cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 1225cb93a386Sopenharmony_ci }, 1226cb93a386Sopenharmony_ci "infra_step": true, 1227cb93a386Sopenharmony_ci "name": "clear log" 1228cb93a386Sopenharmony_ci }, 1229cb93a386Sopenharmony_ci { 1230cb93a386Sopenharmony_ci "cmd": [ 1231cb93a386Sopenharmony_ci "python", 1232cb93a386Sopenharmony_ci "-u", 1233cb93a386Sopenharmony_ci "\nimport subprocess\nimport sys\nbin_dir = sys.argv[1]\nsh = sys.argv[2]\nsubprocess.check_call(['/usr/bin/adb.1.0.35', 'shell', 'sh', bin_dir + sh])\ntry:\n sys.exit(int(subprocess.check_output(['/usr/bin/adb.1.0.35', 'shell', 'cat',\n bin_dir + 'rc'])))\nexcept ValueError:\n print(\"Couldn't read the return code. Probably killed for OOM.\")\n sys.exit(1)\n", 1234cb93a386Sopenharmony_ci "/data/local/tmp/", 1235cb93a386Sopenharmony_ci "dm.sh" 1236cb93a386Sopenharmony_ci ], 1237cb93a386Sopenharmony_ci "env": { 1238cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 1239cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 1240cb93a386Sopenharmony_ci }, 1241cb93a386Sopenharmony_ci "name": "dm", 1242cb93a386Sopenharmony_ci "~followup_annotations": [ 1243cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 1244cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import subprocess@@@", 1245cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import sys@@@", 1246cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@bin_dir = sys.argv[1]@@@", 1247cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@sh = sys.argv[2]@@@", 1248cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@subprocess.check_call(['/usr/bin/adb.1.0.35', 'shell', 'sh', bin_dir + sh])@@@", 1249cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@try:@@@", 1250cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ sys.exit(int(subprocess.check_output(['/usr/bin/adb.1.0.35', 'shell', 'cat',@@@", 1251cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ bin_dir + 'rc'])))@@@", 1252cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@except ValueError:@@@", 1253cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ print(\"Couldn't read the return code. Probably killed for OOM.\")@@@", 1254cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@", 1255cb93a386Sopenharmony_ci "@@@STEP_LOG_END@python.inline@@@" 1256cb93a386Sopenharmony_ci ] 1257cb93a386Sopenharmony_ci }, 1258cb93a386Sopenharmony_ci { 1259cb93a386Sopenharmony_ci "cmd": [], 1260cb93a386Sopenharmony_ci "name": "adb pull" 1261cb93a386Sopenharmony_ci }, 1262cb93a386Sopenharmony_ci { 1263cb93a386Sopenharmony_ci "cmd": [ 1264cb93a386Sopenharmony_ci "/usr/bin/adb.1.0.35", 1265cb93a386Sopenharmony_ci "pull", 1266cb93a386Sopenharmony_ci "/sdcard/revenge_of_the_skiabot/dm_out", 1267cb93a386Sopenharmony_ci "[CLEANUP]/adb_pull_tmp_1" 1268cb93a386Sopenharmony_ci ], 1269cb93a386Sopenharmony_ci "cwd": "[START_DIR]/skia", 1270cb93a386Sopenharmony_ci "env": { 1271cb93a386Sopenharmony_ci "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey", 1272cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 1273cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 1274cb93a386Sopenharmony_ci }, 1275cb93a386Sopenharmony_ci "infra_step": true, 1276cb93a386Sopenharmony_ci "name": "adb pull.pull /sdcard/revenge_of_the_skiabot/dm_out", 1277cb93a386Sopenharmony_ci "~followup_annotations": [ 1278cb93a386Sopenharmony_ci "@@@STEP_NEST_LEVEL@1@@@" 1279cb93a386Sopenharmony_ci ] 1280cb93a386Sopenharmony_ci }, 1281cb93a386Sopenharmony_ci { 1282cb93a386Sopenharmony_ci "cmd": [ 1283cb93a386Sopenharmony_ci "vpython", 1284cb93a386Sopenharmony_ci "-u", 1285cb93a386Sopenharmony_ci "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 1286cb93a386Sopenharmony_ci "--json-output", 1287cb93a386Sopenharmony_ci "/path/to/tmp/json", 1288cb93a386Sopenharmony_ci "glob", 1289cb93a386Sopenharmony_ci "[CLEANUP]/adb_pull_tmp_1", 1290cb93a386Sopenharmony_ci "dm_out/*" 1291cb93a386Sopenharmony_ci ], 1292cb93a386Sopenharmony_ci "infra_step": true, 1293cb93a386Sopenharmony_ci "name": "adb pull.list pulled files", 1294cb93a386Sopenharmony_ci "~followup_annotations": [ 1295cb93a386Sopenharmony_ci "@@@STEP_NEST_LEVEL@1@@@", 1296cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@glob@[CLEANUP]/adb_pull_tmp_1/1.png@@@", 1297cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@glob@[CLEANUP]/adb_pull_tmp_1/2.png@@@", 1298cb93a386Sopenharmony_ci "@@@STEP_LOG_END@glob@@@" 1299cb93a386Sopenharmony_ci ] 1300cb93a386Sopenharmony_ci }, 1301cb93a386Sopenharmony_ci { 1302cb93a386Sopenharmony_ci "cmd": [ 1303cb93a386Sopenharmony_ci "vpython", 1304cb93a386Sopenharmony_ci "-u", 1305cb93a386Sopenharmony_ci "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 1306cb93a386Sopenharmony_ci "--json-output", 1307cb93a386Sopenharmony_ci "/path/to/tmp/json", 1308cb93a386Sopenharmony_ci "copy", 1309cb93a386Sopenharmony_ci "[CLEANUP]/adb_pull_tmp_1/1.png", 1310cb93a386Sopenharmony_ci "[START_DIR]/[SWARM_OUT_DIR]" 1311cb93a386Sopenharmony_ci ], 1312cb93a386Sopenharmony_ci "infra_step": true, 1313cb93a386Sopenharmony_ci "name": "adb pull.copy 1.png", 1314cb93a386Sopenharmony_ci "~followup_annotations": [ 1315cb93a386Sopenharmony_ci "@@@STEP_NEST_LEVEL@1@@@" 1316cb93a386Sopenharmony_ci ] 1317cb93a386Sopenharmony_ci }, 1318cb93a386Sopenharmony_ci { 1319cb93a386Sopenharmony_ci "cmd": [ 1320cb93a386Sopenharmony_ci "vpython", 1321cb93a386Sopenharmony_ci "-u", 1322cb93a386Sopenharmony_ci "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 1323cb93a386Sopenharmony_ci "--json-output", 1324cb93a386Sopenharmony_ci "/path/to/tmp/json", 1325cb93a386Sopenharmony_ci "copy", 1326cb93a386Sopenharmony_ci "[CLEANUP]/adb_pull_tmp_1/2.png", 1327cb93a386Sopenharmony_ci "[START_DIR]/[SWARM_OUT_DIR]" 1328cb93a386Sopenharmony_ci ], 1329cb93a386Sopenharmony_ci "infra_step": true, 1330cb93a386Sopenharmony_ci "name": "adb pull.copy 2.png", 1331cb93a386Sopenharmony_ci "~followup_annotations": [ 1332cb93a386Sopenharmony_ci "@@@STEP_NEST_LEVEL@1@@@" 1333cb93a386Sopenharmony_ci ] 1334cb93a386Sopenharmony_ci }, 1335cb93a386Sopenharmony_ci { 1336cb93a386Sopenharmony_ci "cmd": [ 1337cb93a386Sopenharmony_ci "vpython", 1338cb93a386Sopenharmony_ci "-u", 1339cb93a386Sopenharmony_ci "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", 1340cb93a386Sopenharmony_ci "--json-output", 1341cb93a386Sopenharmony_ci "/path/to/tmp/json", 1342cb93a386Sopenharmony_ci "glob", 1343cb93a386Sopenharmony_ci "[START_DIR]/[SWARM_OUT_DIR]", 1344cb93a386Sopenharmony_ci "*.png" 1345cb93a386Sopenharmony_ci ], 1346cb93a386Sopenharmony_ci "infra_step": true, 1347cb93a386Sopenharmony_ci "name": "find .png images", 1348cb93a386Sopenharmony_ci "~followup_annotations": [ 1349cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@glob@[START_DIR]/[SWARM_OUT_DIR]/someimage.png@@@", 1350cb93a386Sopenharmony_ci "@@@STEP_LOG_END@glob@@@" 1351cb93a386Sopenharmony_ci ] 1352cb93a386Sopenharmony_ci }, 1353cb93a386Sopenharmony_ci { 1354cb93a386Sopenharmony_ci "cmd": [ 1355cb93a386Sopenharmony_ci "gsutil", 1356cb93a386Sopenharmony_ci "-m", 1357cb93a386Sopenharmony_ci "cp", 1358cb93a386Sopenharmony_ci "[START_DIR]/[SWARM_OUT_DIR]/*.png", 1359cb93a386Sopenharmony_ci "gs://skia-infra-gm/dm-images-v1" 1360cb93a386Sopenharmony_ci ], 1361cb93a386Sopenharmony_ci "name": "upload .png images" 1362cb93a386Sopenharmony_ci }, 1363cb93a386Sopenharmony_ci { 1364cb93a386Sopenharmony_ci "cmd": [ 1365cb93a386Sopenharmony_ci "gsutil", 1366cb93a386Sopenharmony_ci "cp", 1367cb93a386Sopenharmony_ci "-Z", 1368cb93a386Sopenharmony_ci "[START_DIR]/[SWARM_OUT_DIR]/dm.json", 1369cb93a386Sopenharmony_ci "gs://skia-infra-gm/trybot/dm-json-v1/2012/05/14/12/1234_7/Test-Android-Clang-Pixel2XL-GPU-Adreno540-arm64-Debug-All-Android/1337000001/dm.json" 1370cb93a386Sopenharmony_ci ], 1371cb93a386Sopenharmony_ci "name": "upload dm.json" 1372cb93a386Sopenharmony_ci }, 1373cb93a386Sopenharmony_ci { 1374cb93a386Sopenharmony_ci "cmd": [ 1375cb93a386Sopenharmony_ci "python", 1376cb93a386Sopenharmony_ci "-u", 1377cb93a386Sopenharmony_ci "\nimport os\nimport subprocess\nimport sys\nout = sys.argv[1]\nlog = subprocess.check_output(['/usr/bin/adb.1.0.35', 'logcat', '-d'])\nfor line in log.split('\\n'):\n tokens = line.split()\n if len(tokens) == 11 and tokens[-7] == 'F' and tokens[-3] == 'pc':\n addr, path = tokens[-2:]\n local = os.path.join(out, os.path.basename(path))\n if os.path.exists(local):\n try:\n sym = subprocess.check_output(['addr2line', '-Cfpe', local, addr])\n line = line.replace(addr, addr + ' ' + sym.strip())\n except subprocess.CalledProcessError:\n pass\n print(line)\n", 1378cb93a386Sopenharmony_ci "[START_DIR]/build" 1379cb93a386Sopenharmony_ci ], 1380cb93a386Sopenharmony_ci "env": { 1381cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 1382cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 1383cb93a386Sopenharmony_ci }, 1384cb93a386Sopenharmony_ci "infra_step": true, 1385cb93a386Sopenharmony_ci "name": "dump log", 1386cb93a386Sopenharmony_ci "timeout": 300, 1387cb93a386Sopenharmony_ci "~followup_annotations": [ 1388cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@@@@", 1389cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import os@@@", 1390cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import subprocess@@@", 1391cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@import sys@@@", 1392cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@out = sys.argv[1]@@@", 1393cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@log = subprocess.check_output(['/usr/bin/adb.1.0.35', 'logcat', '-d'])@@@", 1394cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@for line in log.split('\\n'):@@@", 1395cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ tokens = line.split()@@@", 1396cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ if len(tokens) == 11 and tokens[-7] == 'F' and tokens[-3] == 'pc':@@@", 1397cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ addr, path = tokens[-2:]@@@", 1398cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ local = os.path.join(out, os.path.basename(path))@@@", 1399cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ if os.path.exists(local):@@@", 1400cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ try:@@@", 1401cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ sym = subprocess.check_output(['addr2line', '-Cfpe', local, addr])@@@", 1402cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ line = line.replace(addr, addr + ' ' + sym.strip())@@@", 1403cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ except subprocess.CalledProcessError:@@@", 1404cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ pass@@@", 1405cb93a386Sopenharmony_ci "@@@STEP_LOG_LINE@python.inline@ print(line)@@@", 1406cb93a386Sopenharmony_ci "@@@STEP_LOG_END@python.inline@@@" 1407cb93a386Sopenharmony_ci ] 1408cb93a386Sopenharmony_ci }, 1409cb93a386Sopenharmony_ci { 1410cb93a386Sopenharmony_ci "cmd": [ 1411cb93a386Sopenharmony_ci "/usr/bin/adb.1.0.35", 1412cb93a386Sopenharmony_ci "kill-server" 1413cb93a386Sopenharmony_ci ], 1414cb93a386Sopenharmony_ci "cwd": "[START_DIR]/skia", 1415cb93a386Sopenharmony_ci "env": { 1416cb93a386Sopenharmony_ci "ADB_VENDOR_KEYS": "/home/chrome-bot/.android/adbkey", 1417cb93a386Sopenharmony_ci "CHROME_HEADLESS": "1", 1418cb93a386Sopenharmony_ci "PATH": "<PATH>:RECIPE_REPO[depot_tools]" 1419cb93a386Sopenharmony_ci }, 1420cb93a386Sopenharmony_ci "infra_step": true, 1421cb93a386Sopenharmony_ci "name": "kill adb server" 1422cb93a386Sopenharmony_ci }, 1423cb93a386Sopenharmony_ci { 1424cb93a386Sopenharmony_ci "name": "$result" 1425cb93a386Sopenharmony_ci } 1426cb93a386Sopenharmony_ci]