| [ |
| { |
| "cmd": [ |
| "python", |
| "-u", |
| "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", |
| "--json-output", |
| "/path/to/tmp/json", |
| "copy", |
| "[START_DIR]/skia/infra/bots/assets/skp/VERSION", |
| "/path/to/tmp/" |
| ], |
| "infra_step": true, |
| "name": "Get downloaded SKP VERSION" |
| }, |
| { |
| "cmd": [ |
| "python", |
| "-u", |
| "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", |
| "--json-output", |
| "/path/to/tmp/json", |
| "copy", |
| "42", |
| "[START_DIR]/tmp/SKP_VERSION" |
| ], |
| "infra_step": true, |
| "name": "write SKP_VERSION" |
| }, |
| { |
| "cmd": [ |
| "python", |
| "-u", |
| "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", |
| "--json-output", |
| "/path/to/tmp/json", |
| "copy", |
| "[START_DIR]/skia/infra/bots/assets/skimage/VERSION", |
| "/path/to/tmp/" |
| ], |
| "infra_step": true, |
| "name": "Get downloaded skimage VERSION" |
| }, |
| { |
| "cmd": [ |
| "python", |
| "-u", |
| "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", |
| "--json-output", |
| "/path/to/tmp/json", |
| "copy", |
| "42", |
| "[START_DIR]/tmp/SK_IMAGE_VERSION" |
| ], |
| "infra_step": true, |
| "name": "write SK_IMAGE_VERSION" |
| }, |
| { |
| "cmd": [ |
| "python", |
| "-u", |
| "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", |
| "--json-output", |
| "/path/to/tmp/json", |
| "copy", |
| "[START_DIR]/skia/infra/bots/assets/svg/VERSION", |
| "/path/to/tmp/" |
| ], |
| "infra_step": true, |
| "name": "Get downloaded SVG VERSION" |
| }, |
| { |
| "cmd": [ |
| "python", |
| "-u", |
| "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", |
| "--json-output", |
| "/path/to/tmp/json", |
| "copy", |
| "42", |
| "[START_DIR]/tmp/SVG_VERSION" |
| ], |
| "infra_step": true, |
| "name": "write SVG_VERSION" |
| }, |
| { |
| "cmd": [ |
| "python", |
| "-u", |
| "RECIPE_MODULE[recipe_engine::file]/resources/fileutil.py", |
| "--json-output", |
| "/path/to/tmp/json", |
| "ensure-directory", |
| "--mode", |
| "0777", |
| "[START_DIR]/tmp" |
| ], |
| "infra_step": true, |
| "name": "makedirs tmp_dir" |
| }, |
| { |
| "cmd": [ |
| "python", |
| "-u", |
| "\nimport contextlib\nimport math\nimport socket\nimport sys\nimport time\nimport urllib2\n\nHASHES_URL = 'https://storage.googleapis.com/skia-infra-gm/hash_files/gold-prod-hashes.txt'\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[1], '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", |
| "[START_DIR]/tmp/uninteresting_hashes.txt" |
| ], |
| "env": { |
| "BUILDTYPE": "Release", |
| "CHROME_HEADLESS": "1", |
| "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]", |
| "SKIA_OUT": "[START_DIR]/out" |
| }, |
| "infra_step": true, |
| "name": "get uninteresting hashes", |
| "~followup_annotations": [ |
| "@@@STEP_LOG_LINE@python.inline@@@@", |
| "@@@STEP_LOG_LINE@python.inline@import contextlib@@@", |
| "@@@STEP_LOG_LINE@python.inline@import math@@@", |
| "@@@STEP_LOG_LINE@python.inline@import socket@@@", |
| "@@@STEP_LOG_LINE@python.inline@import sys@@@", |
| "@@@STEP_LOG_LINE@python.inline@import time@@@", |
| "@@@STEP_LOG_LINE@python.inline@import urllib2@@@", |
| "@@@STEP_LOG_LINE@python.inline@@@@", |
| "@@@STEP_LOG_LINE@python.inline@HASHES_URL = 'https://storage.googleapis.com/skia-infra-gm/hash_files/gold-prod-hashes.txt'@@@", |
| "@@@STEP_LOG_LINE@python.inline@RETRIES = 5@@@", |
| "@@@STEP_LOG_LINE@python.inline@TIMEOUT = 60@@@", |
| "@@@STEP_LOG_LINE@python.inline@WAIT_BASE = 15@@@", |
| "@@@STEP_LOG_LINE@python.inline@@@@", |
| "@@@STEP_LOG_LINE@python.inline@socket.setdefaulttimeout(TIMEOUT)@@@", |
| "@@@STEP_LOG_LINE@python.inline@for retry in range(RETRIES):@@@", |
| "@@@STEP_LOG_LINE@python.inline@ try:@@@", |
| "@@@STEP_LOG_LINE@python.inline@ with contextlib.closing(@@@", |
| "@@@STEP_LOG_LINE@python.inline@ urllib2.urlopen(HASHES_URL, timeout=TIMEOUT)) as w:@@@", |
| "@@@STEP_LOG_LINE@python.inline@ hashes = w.read()@@@", |
| "@@@STEP_LOG_LINE@python.inline@ with open(sys.argv[1], 'w') as f:@@@", |
| "@@@STEP_LOG_LINE@python.inline@ f.write(hashes)@@@", |
| "@@@STEP_LOG_LINE@python.inline@ break@@@", |
| "@@@STEP_LOG_LINE@python.inline@ except Exception as e:@@@", |
| "@@@STEP_LOG_LINE@python.inline@ print 'Failed to get uninteresting hashes from %s:' % HASHES_URL@@@", |
| "@@@STEP_LOG_LINE@python.inline@ print e@@@", |
| "@@@STEP_LOG_LINE@python.inline@ if retry == RETRIES:@@@", |
| "@@@STEP_LOG_LINE@python.inline@ raise@@@", |
| "@@@STEP_LOG_LINE@python.inline@ waittime = WAIT_BASE * math.pow(2, retry)@@@", |
| "@@@STEP_LOG_LINE@python.inline@ print 'Retry in %d seconds.' % waittime@@@", |
| "@@@STEP_LOG_LINE@python.inline@ time.sleep(waittime)@@@", |
| "@@@STEP_LOG_END@python.inline@@@" |
| ] |
| }, |
| { |
| "cmd": [ |
| "python", |
| "-u", |
| "import os\nprint os.environ.get('SWARMING_BOT_ID', '')\n" |
| ], |
| "name": "get swarming bot id", |
| "stdout": "/path/to/tmp/", |
| "~followup_annotations": [ |
| "@@@STEP_LOG_LINE@python.inline@import os@@@", |
| "@@@STEP_LOG_LINE@python.inline@print os.environ.get('SWARMING_BOT_ID', '')@@@", |
| "@@@STEP_LOG_END@python.inline@@@" |
| ] |
| }, |
| { |
| "cmd": [ |
| "python", |
| "-u", |
| "import os\nprint os.environ.get('SWARMING_TASK_ID', '')\n" |
| ], |
| "name": "get swarming task id", |
| "stdout": "/path/to/tmp/", |
| "~followup_annotations": [ |
| "@@@STEP_LOG_LINE@python.inline@import os@@@", |
| "@@@STEP_LOG_LINE@python.inline@print os.environ.get('SWARMING_TASK_ID', '')@@@", |
| "@@@STEP_LOG_END@python.inline@@@" |
| ] |
| }, |
| { |
| "cmd": [ |
| "python", |
| "-u", |
| "RECIPE_MODULE[skia::flavor]/resources/symbolize_stack_trace.py", |
| "[START_DIR]", |
| "catchsegv", |
| "[START_DIR]/out/Release/dm", |
| "--resourcePath", |
| "[START_DIR]/skia/resources", |
| "--skps", |
| "[START_DIR]/skp", |
| "--images", |
| "[START_DIR]/skimage/dm", |
| "--colorImages", |
| "[START_DIR]/skimage/colorspace", |
| "--nameByHash", |
| "--properties", |
| "gitHash", |
| "abc123", |
| "builder", |
| "Test-Debian9-Clang-GCE-CPU-AVX2-x86_64-Release-All-SK_FORCE_RASTER_PIPELINE_BLITTER", |
| "swarming_bot_id", |
| "skia-bot-123", |
| "swarming_task_id", |
| "123456", |
| "--svgs", |
| "[START_DIR]/svg", |
| "--key", |
| "arch", |
| "x86_64", |
| "compiler", |
| "Clang", |
| "configuration", |
| "Release", |
| "cpu_or_gpu", |
| "CPU", |
| "cpu_or_gpu_value", |
| "AVX2", |
| "extra_config", |
| "SK_FORCE_RASTER_PIPELINE_BLITTER", |
| "model", |
| "GCE", |
| "os", |
| "Debian9", |
| "--uninterestingHashesFile", |
| "[START_DIR]/tmp/uninteresting_hashes.txt", |
| "--writePath", |
| "[CUSTOM_[SWARM_OUT_DIR]]/dm", |
| "--dont_write", |
| "pdf", |
| "--randomProcessorTest", |
| "--nogpu", |
| "--config", |
| "8888", |
| "srgb", |
| "--src", |
| "gm", |
| "image", |
| "colorImage", |
| "--verbose" |
| ], |
| "cwd": "[START_DIR]/skia", |
| "env": { |
| "BUILDTYPE": "Release", |
| "CHROME_HEADLESS": "1", |
| "PATH": "<PATH>:RECIPE_PACKAGE_REPO[depot_tools]", |
| "SKIA_OUT": "[START_DIR]/out" |
| }, |
| "name": "symbolized dm" |
| }, |
| { |
| "name": "$result", |
| "recipe_result": null, |
| "status_code": 0 |
| } |
| ] |