Skip to content

Commit

Permalink
bootstrap.py: Report build status
Browse files Browse the repository at this point in the history
Move some code from x.py to bootstrap.py
  • Loading branch information
petrochenkov committed Mar 4, 2017
1 parent 3b45466 commit 11adac3
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 14 deletions.
21 changes: 15 additions & 6 deletions src/bootstrap/bootstrap.py
Expand Up @@ -8,6 +8,7 @@
# option. This file may not be copied, modified, or distributed
# except according to those terms.

from __future__ import print_function
import argparse
import contextlib
import datetime
Expand Down Expand Up @@ -501,7 +502,7 @@ def build_triple(self):

return "{}-{}".format(cputype, ostype)

def main():
def bootstrap():
parser = argparse.ArgumentParser(description='Build rust')
parser.add_argument('--config')
parser.add_argument('--clean', action='store_true')
Expand Down Expand Up @@ -564,8 +565,6 @@ def main():
rb._rustc_channel, rb._rustc_date = data['rustc'].split('-', 1)
rb._cargo_rev = data['cargo']

start_time = time()

# Fetch/build the bootstrap
rb.build = rb.build_triple()
rb.download_stage0()
Expand All @@ -582,9 +581,19 @@ def main():
env["BOOTSTRAP_PARENT_ID"] = str(os.getpid())
rb.run(args, env)

end_time = time()

print("Build completed in %s" % format_build_time(end_time - start_time))
def main():
start_time = time()
try:
bootstrap()
print("Build completed successfully in %s" % format_build_time(time() - start_time))
except (SystemExit, KeyboardInterrupt) as e:
if hasattr(e, 'code') and isinstance(e.code, int):
exit_code = e.code
else:
exit_code = 1
print(e)
print("Build completed unsuccessfully in %s" % format_build_time(time() - start_time))
sys.exit(exit_code)

if __name__ == '__main__':
main()
14 changes: 6 additions & 8 deletions x.py
Expand Up @@ -9,14 +9,12 @@
# option. This file may not be copied, modified, or distributed
# except according to those terms.

import sys
# This file is only a "symlink" to boostrap.py, all logic should go there.

import os
dir = os.path.dirname(__file__)
sys.path.append(os.path.abspath(os.path.join(dir, "src", "bootstrap")))
import sys
rust_dir = os.path.dirname(os.path.abspath(__file__))
sys.path.append(os.path.join(rust_dir, "src", "bootstrap"))

import bootstrap

try:
bootstrap.main()
except KeyboardInterrupt:
sys.exit()
bootstrap.main()

0 comments on commit 11adac3

Please sign in to comment.