mtklein | 2b3c2a3 | 2016-09-08 08:39:34 -0700 | [diff] [blame] | 1 | [ |
| 2 | { |
| 3 | "cmd": [ |
| 4 | "python", |
| 5 | "-u", |
| 6 | "\nimport sys, os\npath = sys.argv[1]\nmode = int(sys.argv[2])\nif not os.path.isdir(path):\n if os.path.exists(path):\n print \"%s exists but is not a dir\" % path\n sys.exit(1)\n os.makedirs(path, mode)\n", |
| 7 | "[CUSTOM_/_B_WORK]", |
| 8 | "511" |
| 9 | ], |
| 10 | "name": "makedirs checkout_path", |
| 11 | "~followup_annotations": [ |
| 12 | "@@@STEP_LOG_LINE@python.inline@@@@", |
| 13 | "@@@STEP_LOG_LINE@python.inline@import sys, os@@@", |
| 14 | "@@@STEP_LOG_LINE@python.inline@path = sys.argv[1]@@@", |
| 15 | "@@@STEP_LOG_LINE@python.inline@mode = int(sys.argv[2])@@@", |
| 16 | "@@@STEP_LOG_LINE@python.inline@if not os.path.isdir(path):@@@", |
| 17 | "@@@STEP_LOG_LINE@python.inline@ if os.path.exists(path):@@@", |
| 18 | "@@@STEP_LOG_LINE@python.inline@ print \"%s exists but is not a dir\" % path@@@", |
| 19 | "@@@STEP_LOG_LINE@python.inline@ sys.exit(1)@@@", |
| 20 | "@@@STEP_LOG_LINE@python.inline@ os.makedirs(path, mode)@@@", |
| 21 | "@@@STEP_LOG_END@python.inline@@@" |
| 22 | ] |
| 23 | }, |
| 24 | { |
| 25 | "cmd": [ |
| 26 | "python", |
| 27 | "-u", |
| 28 | "RECIPE_PACKAGE_REPO[depot_tools]/gclient.py", |
| 29 | "config", |
| 30 | "--spec", |
rmistry | 90d0bfa | 2016-09-15 04:52:20 -0700 | [diff] [blame] | 31 | "cache_dir = '[CUSTOM_/_B_CACHE]'\nsolutions = [{'deps_file': '.DEPS.git', 'managed': False, 'name': 'skia', 'url': 'https://skia.googlesource.com/skia.git'}]" |
mtklein | 2b3c2a3 | 2016-09-08 08:39:34 -0700 | [diff] [blame] | 32 | ], |
| 33 | "cwd": "[CUSTOM_/_B_WORK]", |
| 34 | "env": { |
| 35 | "BUILDTYPE": "Debug", |
| 36 | "CHROME_HEADLESS": "1", |
| 37 | "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]", |
| 38 | "SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-Clang-x86_64-Debug-ASAN" |
| 39 | }, |
| 40 | "name": "gclient setup" |
| 41 | }, |
| 42 | { |
| 43 | "cmd": [ |
| 44 | "python", |
| 45 | "-u", |
| 46 | "RECIPE_PACKAGE_REPO[depot_tools]/gclient.py", |
| 47 | "sync", |
mtklein | 2b3c2a3 | 2016-09-08 08:39:34 -0700 | [diff] [blame] | 48 | "--verbose", |
rmistry | 90d0bfa | 2016-09-15 04:52:20 -0700 | [diff] [blame] | 49 | "--with_branch_heads", |
| 50 | "--nohooks", |
| 51 | "-j8", |
| 52 | "--reset", |
| 53 | "--force", |
| 54 | "--upstream", |
| 55 | "--no-nag-max", |
mtklein | 2b3c2a3 | 2016-09-08 08:39:34 -0700 | [diff] [blame] | 56 | "--delete_unversioned_trees", |
| 57 | "--revision", |
| 58 | "skia@abc123", |
| 59 | "--output-json", |
| 60 | "/path/to/tmp/json" |
| 61 | ], |
| 62 | "cwd": "[CUSTOM_/_B_WORK]", |
| 63 | "env": { |
| 64 | "BUILDTYPE": "Debug", |
| 65 | "CHROME_HEADLESS": "1", |
| 66 | "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]", |
| 67 | "SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-Clang-x86_64-Debug-ASAN" |
| 68 | }, |
| 69 | "name": "gclient sync", |
| 70 | "~followup_annotations": [ |
| 71 | "@@@STEP_LOG_LINE@json.output@{@@@", |
| 72 | "@@@STEP_LOG_LINE@json.output@ \"solutions\": {@@@", |
| 73 | "@@@STEP_LOG_LINE@json.output@ \"skia/\": {@@@", |
rmistry | 90d0bfa | 2016-09-15 04:52:20 -0700 | [diff] [blame] | 74 | "@@@STEP_LOG_LINE@json.output@ \"revision\": \"9046e2e693bb92a76e972b694580e5d17ad10748\"@@@", |
mtklein | 2b3c2a3 | 2016-09-08 08:39:34 -0700 | [diff] [blame] | 75 | "@@@STEP_LOG_LINE@json.output@ }@@@", |
| 76 | "@@@STEP_LOG_LINE@json.output@ }@@@", |
| 77 | "@@@STEP_LOG_LINE@json.output@}@@@", |
| 78 | "@@@STEP_LOG_END@json.output@@@", |
rmistry | 90d0bfa | 2016-09-15 04:52:20 -0700 | [diff] [blame] | 79 | "@@@SET_BUILD_PROPERTY@got_revision@\"9046e2e693bb92a76e972b694580e5d17ad10748\"@@@" |
mtklein | 2b3c2a3 | 2016-09-08 08:39:34 -0700 | [diff] [blame] | 80 | ] |
| 81 | }, |
| 82 | { |
| 83 | "cmd": [ |
rmistry | 90d0bfa | 2016-09-15 04:52:20 -0700 | [diff] [blame] | 84 | "python", |
| 85 | "-u", |
| 86 | "RECIPE_PACKAGE_REPO[depot_tools]/gclient.py", |
| 87 | "recurse", |
| 88 | "git", |
| 89 | "config", |
| 90 | "user.name", |
| 91 | "local_bot" |
| 92 | ], |
| 93 | "cwd": "[CUSTOM_/_B_WORK]", |
| 94 | "env": { |
| 95 | "BUILDTYPE": "Debug", |
| 96 | "CHROME_HEADLESS": "1", |
| 97 | "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]", |
| 98 | "SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-Clang-x86_64-Debug-ASAN" |
| 99 | }, |
| 100 | "name": "gclient recurse (git config user.name)" |
| 101 | }, |
| 102 | { |
| 103 | "cmd": [ |
| 104 | "python", |
| 105 | "-u", |
| 106 | "RECIPE_PACKAGE_REPO[depot_tools]/gclient.py", |
| 107 | "recurse", |
| 108 | "git", |
| 109 | "config", |
| 110 | "user.email", |
| 111 | "local_bot@example.com" |
| 112 | ], |
| 113 | "cwd": "[CUSTOM_/_B_WORK]", |
| 114 | "env": { |
| 115 | "BUILDTYPE": "Debug", |
| 116 | "CHROME_HEADLESS": "1", |
| 117 | "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]", |
| 118 | "SKIA_OUT": "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-Clang-x86_64-Debug-ASAN" |
| 119 | }, |
| 120 | "name": "gclient recurse (git config user.email)" |
| 121 | }, |
| 122 | { |
| 123 | "cmd": [ |
Mike Klein | 71c5393 | 2016-10-12 14:32:09 -0400 | [diff] [blame] | 124 | "python", |
| 125 | "-u", |
mtklein | 2b3c2a3 | 2016-09-08 08:39:34 -0700 | [diff] [blame] | 126 | "[CUSTOM_/_B_WORK]/skia/bin/fetch-gn" |
| 127 | ], |
| 128 | "cwd": "[CUSTOM_/_B_WORK]/skia", |
| 129 | "env": { |
rmistry | 90d0bfa | 2016-09-15 04:52:20 -0700 | [diff] [blame] | 130 | "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]" |
mtklein | 2b3c2a3 | 2016-09-08 08:39:34 -0700 | [diff] [blame] | 131 | }, |
| 132 | "name": "fetch-gn" |
| 133 | }, |
| 134 | { |
| 135 | "cmd": [ |
| 136 | "gn", |
| 137 | "gen", |
| 138 | "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-Clang-x86_64-Debug-ASAN/Debug", |
Mike Klein | 121563e | 2016-10-04 17:09:13 -0400 | [diff] [blame] | 139 | "--args=cc=\"[SLAVE_BUILD]/clang_linux/bin/clang\" cxx=\"[SLAVE_BUILD]/clang_linux/bin/clang++\" extra_ldflags=[\"-fuse-ld=lld\"] sanitize=\"ASAN\"" |
mtklein | 2b3c2a3 | 2016-09-08 08:39:34 -0700 | [diff] [blame] | 140 | ], |
| 141 | "cwd": "[CUSTOM_/_B_WORK]/skia", |
| 142 | "env": { |
rmistry | 90d0bfa | 2016-09-15 04:52:20 -0700 | [diff] [blame] | 143 | "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]" |
mtklein | 2b3c2a3 | 2016-09-08 08:39:34 -0700 | [diff] [blame] | 144 | }, |
| 145 | "name": "gn gen" |
| 146 | }, |
| 147 | { |
| 148 | "cmd": [ |
| 149 | "ninja", |
| 150 | "-C", |
| 151 | "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-Clang-x86_64-Debug-ASAN/Debug" |
| 152 | ], |
| 153 | "cwd": "[CUSTOM_/_B_WORK]/skia", |
| 154 | "env": { |
Mike Klein | b35a41e | 2016-10-13 14:54:32 -0400 | [diff] [blame^] | 155 | "NINJA_STATUS": "%%e [%%f/%%t] ", |
rmistry | 90d0bfa | 2016-09-15 04:52:20 -0700 | [diff] [blame] | 156 | "PATH": "%(PATH)s:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]:RECIPE_PACKAGE_REPO[depot_tools]" |
mtklein | 2b3c2a3 | 2016-09-08 08:39:34 -0700 | [diff] [blame] | 157 | }, |
| 158 | "name": "ninja" |
| 159 | }, |
| 160 | { |
| 161 | "cmd": [ |
mtklein | 2b3c2a3 | 2016-09-08 08:39:34 -0700 | [diff] [blame] | 162 | "python", |
| 163 | "-u", |
| 164 | "import errno\nimport glob\nimport os\nimport shutil\nimport sys\n\nsrc = sys.argv[1]\ndst = sys.argv[2]\nbuild_products_whitelist = ['dm', 'dm.exe', 'get_images_from_skps', 'get_images_from_skps.exe', 'nanobench', 'nanobench.exe', '*.so', '*.dll', '*.dylib', 'skia_launcher', 'lib/*.so', 'iOSShell.app', 'iOSShell.ipa', 'visualbench', 'visualbench.exe', 'vulkan-1.dll']\n\ntry:\n os.makedirs(dst)\nexcept OSError as e:\n if e.errno != errno.EEXIST:\n raise\n\nfor pattern in build_products_whitelist:\n path = os.path.join(src, pattern)\n for f in glob.glob(path):\n dst_path = os.path.join(dst, os.path.relpath(f, src))\n if not os.path.isdir(os.path.dirname(dst_path)):\n os.makedirs(os.path.dirname(dst_path))\n print 'Copying build product %s to %s' % (f, dst_path)\n shutil.move(f, dst_path)\n", |
| 165 | "[CUSTOM_/_B_WORK]/skia/out/Build-Ubuntu-Clang-x86_64-Debug-ASAN/Debug", |
| 166 | "[CUSTOM_[SWARM_OUT_DIR]]/out/Debug" |
| 167 | ], |
| 168 | "name": "copy build products", |
| 169 | "~followup_annotations": [ |
| 170 | "@@@STEP_LOG_LINE@python.inline@import errno@@@", |
| 171 | "@@@STEP_LOG_LINE@python.inline@import glob@@@", |
| 172 | "@@@STEP_LOG_LINE@python.inline@import os@@@", |
| 173 | "@@@STEP_LOG_LINE@python.inline@import shutil@@@", |
| 174 | "@@@STEP_LOG_LINE@python.inline@import sys@@@", |
| 175 | "@@@STEP_LOG_LINE@python.inline@@@@", |
| 176 | "@@@STEP_LOG_LINE@python.inline@src = sys.argv[1]@@@", |
| 177 | "@@@STEP_LOG_LINE@python.inline@dst = sys.argv[2]@@@", |
| 178 | "@@@STEP_LOG_LINE@python.inline@build_products_whitelist = ['dm', 'dm.exe', 'get_images_from_skps', 'get_images_from_skps.exe', 'nanobench', 'nanobench.exe', '*.so', '*.dll', '*.dylib', 'skia_launcher', 'lib/*.so', 'iOSShell.app', 'iOSShell.ipa', 'visualbench', 'visualbench.exe', 'vulkan-1.dll']@@@", |
| 179 | "@@@STEP_LOG_LINE@python.inline@@@@", |
| 180 | "@@@STEP_LOG_LINE@python.inline@try:@@@", |
| 181 | "@@@STEP_LOG_LINE@python.inline@ os.makedirs(dst)@@@", |
| 182 | "@@@STEP_LOG_LINE@python.inline@except OSError as e:@@@", |
| 183 | "@@@STEP_LOG_LINE@python.inline@ if e.errno != errno.EEXIST:@@@", |
| 184 | "@@@STEP_LOG_LINE@python.inline@ raise@@@", |
| 185 | "@@@STEP_LOG_LINE@python.inline@@@@", |
| 186 | "@@@STEP_LOG_LINE@python.inline@for pattern in build_products_whitelist:@@@", |
| 187 | "@@@STEP_LOG_LINE@python.inline@ path = os.path.join(src, pattern)@@@", |
| 188 | "@@@STEP_LOG_LINE@python.inline@ for f in glob.glob(path):@@@", |
| 189 | "@@@STEP_LOG_LINE@python.inline@ dst_path = os.path.join(dst, os.path.relpath(f, src))@@@", |
| 190 | "@@@STEP_LOG_LINE@python.inline@ if not os.path.isdir(os.path.dirname(dst_path)):@@@", |
| 191 | "@@@STEP_LOG_LINE@python.inline@ os.makedirs(os.path.dirname(dst_path))@@@", |
| 192 | "@@@STEP_LOG_LINE@python.inline@ print 'Copying build product %s to %s' % (f, dst_path)@@@", |
| 193 | "@@@STEP_LOG_LINE@python.inline@ shutil.move(f, dst_path)@@@", |
| 194 | "@@@STEP_LOG_END@python.inline@@@" |
| 195 | ] |
| 196 | }, |
| 197 | { |
| 198 | "name": "$result", |
| 199 | "recipe_result": null, |
| 200 | "status_code": 0 |
| 201 | } |
| 202 | ] |