Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(4)

Side by Side Diff: build/build.py

Issue 1500123003: Fix 'cipd - build packages' step for internal waterfall. (Closed) Base URL: https://chromium.googlesource.com/infra/infra.git@master
Patch Set: Created 5 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 #!/usr/bin/env python 1 #!/usr/bin/env python
2 # Copyright 2015 The Chromium Authors. All rights reserved. 2 # Copyright 2015 The Chromium Authors. All rights reserved.
3 # Use of this source code is governed by a BSD-style license that can be 3 # Use of this source code is governed by a BSD-style license that can be
4 # found in the LICENSE file. 4 # found in the LICENSE file.
5 5
6 """This script rebuilds Python & Go universes of infra.git multiverse and 6 """This script rebuilds Python & Go universes of infra.git multiverse and
7 invokes CIPD client to package and upload chunks of it to the CIPD repository as 7 invokes CIPD client to package and upload chunks of it to the CIPD repository as
8 individual packages. 8 individual packages.
9 9
10 See build/packages/*.yaml for definition of packages. 10 See build/packages/*.yaml for definition of packages.
(...skipping 160 matching lines...) Expand 10 before | Expand all | Expand 10 after
171 """Returns content of YAML file as python dict.""" 171 """Returns content of YAML file as python dict."""
172 # YAML lib is in venv, not activated here. Go through hoops. 172 # YAML lib is in venv, not activated here. Go through hoops.
173 oneliner = ( 173 oneliner = (
174 'import json, sys, yaml; ' 174 'import json, sys, yaml; '
175 'json.dump(yaml.safe_load(sys.stdin), sys.stdout)') 175 'json.dump(yaml.safe_load(sys.stdin), sys.stdout)')
176 if sys.platform == 'win32': 176 if sys.platform == 'win32':
177 python_venv_path = ('Scripts', 'python.exe') 177 python_venv_path = ('Scripts', 'python.exe')
178 else: 178 else:
179 python_venv_path = ('bin', 'python') 179 python_venv_path = ('bin', 'python')
180 executable = os.path.join(py_venv, *python_venv_path) 180 executable = os.path.join(py_venv, *python_venv_path)
181 env = os.environ.copy()
182 env.pop('PYTHONPATH', None)
181 proc = subprocess.Popen( 183 proc = subprocess.Popen(
182 [executable, '-c', oneliner], 184 [executable, '-c', oneliner],
183 executable=executable, 185 executable=executable,
184 stdin=subprocess.PIPE, 186 stdin=subprocess.PIPE,
185 stdout=subprocess.PIPE) 187 stdout=subprocess.PIPE,
188 env=env)
186 with open(path, 'r') as f: 189 with open(path, 'r') as f:
187 out, _ = proc.communicate(f.read()) 190 out, _ = proc.communicate(f.read())
188 if proc.returncode: 191 if proc.returncode:
189 raise BuildException('Failed to parse YAML at %s' % path) 192 raise BuildException('Failed to parse YAML at %s' % path)
190 return json.loads(out) 193 return json.loads(out)
191 194
192 195
193 def should_process_on_builder(pkg_def_file, py_venv, builder): 196 def should_process_on_builder(pkg_def_file, py_venv, builder):
194 """Returns True if package should be processed by current CI builder.""" 197 """Returns True if package should be processed by current CI builder."""
195 if not builder: 198 if not builder:
(...skipping 311 matching lines...) Expand 10 before | Expand all | Expand 10 after
507 args.build, 510 args.build,
508 args.upload, 511 args.upload,
509 args.service_url, 512 args.service_url,
510 args.tags or [], 513 args.tags or [],
511 args.service_account_json, 514 args.service_account_json,
512 args.json_output) 515 args.json_output)
513 516
514 517
515 if __name__ == '__main__': 518 if __name__ == '__main__':
516 sys.exit(main(sys.argv[1:])) 519 sys.exit(main(sys.argv[1:]))
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698