update the build_apps.py, now it can recognize build and preserve keys

This commit is contained in:
Fu Hanxi
2020-04-23 18:48:51 +08:00
parent ba12a549bb
commit 2d57fd7fca
4 changed files with 15 additions and 13 deletions

View File

@@ -5,9 +5,10 @@
#
import argparse
import shutil
import sys
import logging
from find_build_apps import BuildItem, BuildError, setup_logging, BUILD_SYSTEMS, safe_exit_if_file_is_empty
from find_build_apps import BuildItem, BuildError, setup_logging, BUILD_SYSTEMS
def main():
@@ -71,10 +72,11 @@ def main():
help="Name of the file to read the list of builds from. If not specified, read from stdin.",
)
args = parser.parse_args()
setup_logging(args)
safe_exit_if_file_is_empty(args.build_list.name)
build_items = [BuildItem.from_json(line) for line in args.build_list]
if not build_items:
logging.error("Empty build list!")
raise SystemExit(1)
@@ -106,6 +108,10 @@ def main():
failed_builds = []
for build_info in builds_for_current_job:
if not build_info.build:
logging.info('Skip build detected. Skipping...')
continue
logging.info("Running build {}: {}".format(build_info.index, repr(build_info)))
build_system_class = BUILD_SYSTEMS[build_info.build_system]
try:
@@ -116,6 +122,11 @@ def main():
failed_builds.append(build_info)
else:
raise SystemExit(1)
else:
if not build_info.preserve:
logging.info('NOT preserve artifacts detected. Deleting...')
shutil.rmtree(build_info.work_dir, ignore_errors=True)
shutil.rmtree(build_info.build_log_path, ignore_errors=True)
if failed_builds:
logging.error("The following build have failed:")