| OLD | NEW |
| 1 #!/usr/bin/python | 1 #!/usr/bin/python |
| 2 | 2 |
| 3 # Copyright (c) 2010 The Chromium OS Authors. All rights reserved. | 3 # Copyright (c) 2010 The Chromium OS Authors. All rights reserved. |
| 4 # Use of this source code is governed by a BSD-style license that can be | 4 # Use of this source code is governed by a BSD-style license that can be |
| 5 # found in the LICENSE file. | 5 # found in the LICENSE file. |
| 6 | 6 |
| 7 """CBuildbot is wrapper around the build process used by the pre-flight queue""" | 7 """CBuildbot is wrapper around the build process used by the pre-flight queue""" |
| 8 | 8 |
| 9 import errno | 9 import errno |
| 10 import heapq | 10 import heapq |
| (...skipping 441 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 452 | 452 |
| 453 buildconfig = config[config_name] | 453 buildconfig = config[config_name] |
| 454 | 454 |
| 455 for key in default.iterkeys(): | 455 for key in default.iterkeys(): |
| 456 if not buildconfig.has_key(key): | 456 if not buildconfig.has_key(key): |
| 457 buildconfig[key] = default[key] | 457 buildconfig[key] = default[key] |
| 458 | 458 |
| 459 return buildconfig | 459 return buildconfig |
| 460 | 460 |
| 461 | 461 |
| 462 def ResolveOverlays(overlays): | 462 def ResolveOverlays(buildroot, overlays): |
| 463 """Return the list of overlays to use for a given buildbot. | 463 """Return the list of overlays to use for a given buildbot. |
| 464 | 464 |
| 465 Args: | 465 Args: |
| 466 overlays: A string describing which overlays you want. | 466 overlays: A string describing which overlays you want. |
| 467 'private': Just the private overlay. | 467 'private': Just the private overlay. |
| 468 'public': Just the public overlay. | 468 'public': Just the public overlay. |
| 469 'both': Both the public and private overlays. | 469 'both': Both the public and private overlays. |
| 470 """ | 470 """ |
| 471 public_overlay = '%s/src/third_party/chromiumos-overlay' % buildroot | 471 public_overlay = '%s/src/third_party/chromiumos-overlay' % buildroot |
| 472 private_overlay = '%s/src/private-overlays/chromeos-overlay' % buildroot | 472 private_overlay = '%s/src/private-overlays/chromeos-overlay' % buildroot |
| (...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 514 tracking_branch = options.tracking_branch | 514 tracking_branch = options.tracking_branch |
| 515 | 515 |
| 516 if len(args) >= 1: | 516 if len(args) >= 1: |
| 517 buildconfig = _GetConfig(args[-1]) | 517 buildconfig = _GetConfig(args[-1]) |
| 518 else: | 518 else: |
| 519 Warning('Missing configuration description') | 519 Warning('Missing configuration description') |
| 520 parser.print_usage() | 520 parser.print_usage() |
| 521 sys.exit(1) | 521 sys.exit(1) |
| 522 | 522 |
| 523 # Calculate list of overlay directories. | 523 # Calculate list of overlay directories. |
| 524 overlays = ResolveOverlays(buildconfig['overlays']) | 524 overlays = ResolveOverlays(buildroot, buildconfig['overlays']) |
| 525 | 525 |
| 526 try: | 526 try: |
| 527 _PreFlightRinse(buildroot, buildconfig['board'], tracking_branch, overlays) | 527 _PreFlightRinse(buildroot, buildconfig['board'], tracking_branch, overlays) |
| 528 if options.clobber or not os.path.isdir(buildroot): | 528 if options.clobber or not os.path.isdir(buildroot): |
| 529 _FullCheckout(buildroot, tracking_branch, url=options.url) | 529 _FullCheckout(buildroot, tracking_branch, url=options.url) |
| 530 else: | 530 else: |
| 531 _IncrementalCheckout(buildroot) | 531 _IncrementalCheckout(buildroot) |
| 532 | 532 |
| 533 chroot_path = os.path.join(buildroot, 'chroot') | 533 chroot_path = os.path.join(buildroot, 'chroot') |
| 534 if not os.path.isdir(chroot_path): | 534 if not os.path.isdir(chroot_path): |
| (...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 578 except: | 578 except: |
| 579 # Send failure to master bot. | 579 # Send failure to master bot. |
| 580 if not buildconfig['master'] and buildconfig['important']: | 580 if not buildconfig['master'] and buildconfig['important']: |
| 581 cbuildbot_comm.PublishStatus(cbuildbot_comm.STATUS_BUILD_FAILED) | 581 cbuildbot_comm.PublishStatus(cbuildbot_comm.STATUS_BUILD_FAILED) |
| 582 | 582 |
| 583 raise | 583 raise |
| 584 | 584 |
| 585 | 585 |
| 586 if __name__ == '__main__': | 586 if __name__ == '__main__': |
| 587 main() | 587 main() |
| OLD | NEW |