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

Side by Side Diff: tools/release/common_includes.py

Issue 1465413002: [release] Add monitoring state to auto-roller json output. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Review 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 | « tools/release/auto_roll.py ('k') | tools/release/test_scripts.py » ('j') | 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 2013 the V8 project authors. All rights reserved. 2 # Copyright 2013 the V8 project authors. All rights reserved.
3 # Redistribution and use in source and binary forms, with or without 3 # Redistribution and use in source and binary forms, with or without
4 # modification, are permitted provided that the following conditions are 4 # modification, are permitted provided that the following conditions are
5 # met: 5 # met:
6 # 6 #
7 # * Redistributions of source code must retain the above copyright 7 # * Redistributions of source code must retain the above copyright
8 # notice, this list of conditions and the following disclaimer. 8 # notice, this list of conditions and the following disclaimer.
9 # * Redistributions in binary form must reproduce the above 9 # * Redistributions in binary form must reproduce the above
10 # copyright notice, this list of conditions and the following 10 # copyright notice, this list of conditions and the following
(...skipping 720 matching lines...) Expand 10 before | Expand all | Expand 10 after
731 elif line.startswith("#define V8_PATCH_LEVEL"): 731 elif line.startswith("#define V8_PATCH_LEVEL"):
732 line = re.sub("\d+$", self[prefix + "patch"], line) 732 line = re.sub("\d+$", self[prefix + "patch"], line)
733 elif (self[prefix + "candidate"] and 733 elif (self[prefix + "candidate"] and
734 line.startswith("#define V8_IS_CANDIDATE_VERSION")): 734 line.startswith("#define V8_IS_CANDIDATE_VERSION")):
735 line = re.sub("\d+$", self[prefix + "candidate"], line) 735 line = re.sub("\d+$", self[prefix + "candidate"], line)
736 output += "%s\n" % line 736 output += "%s\n" % line
737 TextToFile(output, version_file) 737 TextToFile(output, version_file)
738 738
739 739
740 class BootstrapStep(Step): 740 class BootstrapStep(Step):
741 MESSAGE = "Bootstrapping v8 checkout." 741 MESSAGE = "Bootstrapping checkout and state."
742 742
743 def RunStep(self): 743 def RunStep(self):
744 # Reserve state entry for json output.
745 self['json_output'] = {}
746
744 if os.path.realpath(self.default_cwd) == os.path.realpath(V8_BASE): 747 if os.path.realpath(self.default_cwd) == os.path.realpath(V8_BASE):
745 self.Die("Can't use v8 checkout with calling script as work checkout.") 748 self.Die("Can't use v8 checkout with calling script as work checkout.")
746 # Directory containing the working v8 checkout. 749 # Directory containing the working v8 checkout.
747 if not os.path.exists(self._options.work_dir): 750 if not os.path.exists(self._options.work_dir):
748 os.makedirs(self._options.work_dir) 751 os.makedirs(self._options.work_dir)
749 if not os.path.exists(self.default_cwd): 752 if not os.path.exists(self.default_cwd):
750 self.Command("fetch", "v8", cwd=self._options.work_dir) 753 self.Command("fetch", "v8", cwd=self._options.work_dir)
751 754
752 755
753 class UploadStep(Step): 756 class UploadStep(Step):
(...skipping 107 matching lines...) Expand 10 before | Expand all | Expand 10 after
861 return 1 864 return 1
862 865
863 state_file = "%s-state.json" % self._config["PERSISTFILE_BASENAME"] 866 state_file = "%s-state.json" % self._config["PERSISTFILE_BASENAME"]
864 if options.step == 0 and os.path.exists(state_file): 867 if options.step == 0 and os.path.exists(state_file):
865 os.remove(state_file) 868 os.remove(state_file)
866 869
867 steps = [] 870 steps = []
868 for (number, step_class) in enumerate([BootstrapStep] + step_classes): 871 for (number, step_class) in enumerate([BootstrapStep] + step_classes):
869 steps.append(MakeStep(step_class, number, self._state, self._config, 872 steps.append(MakeStep(step_class, number, self._state, self._config,
870 options, self._side_effect_handler)) 873 options, self._side_effect_handler))
871 step_summary = [] 874
872 try: 875 try:
873 for step in steps[options.step:]: 876 for step in steps[options.step:]:
874 terminate = step.Run() 877 if step.Run():
875 step_summary.append(step._text)
876 if terminate:
877 return 0 878 return 0
878 finally: 879 finally:
879 if options.json_output: 880 if options.json_output:
880 with open(options.json_output, "w") as f: 881 with open(options.json_output, "w") as f:
881 json.dump({"step_summary": step_summary}, f) 882 json.dump(self._state['json_output'], f)
882 883
883 return 0 884 return 0
884 885
885 def Run(self, args=None): 886 def Run(self, args=None):
886 return self.RunSteps(self._Steps(), args) 887 return self.RunSteps(self._Steps(), args)
OLDNEW
« no previous file with comments | « tools/release/auto_roll.py ('k') | tools/release/test_scripts.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698