[project.py] Add bazel --batch option When communication between the bazel server and client are blocked by some (still under investigation [1]) security policy, the only option is to build with the --batch option. Generating the Eclipse project, though, was failing because there was no way to pass this option to the script. [1] https://github.com/bazelbuild/bazel/issues/3602 Change-Id: I4ae6fdb4df757cd5333e70c13cdded588ec8e194
diff --git a/tools/eclipse/project.py b/tools/eclipse/project.py index e63e739..448d940 100755 --- a/tools/eclipse/project.py +++ b/tools/eclipse/project.py
@@ -51,10 +51,22 @@ action='store_true') opts.add_option('--name', help='name of the generated project', action='store', default='gerrit', dest='project_name') +opts.add_option('-b', '--batch', action='store_true', + dest='batch', help='Bazel batch option') args, _ = opts.parse_args() +batch_option = '--batch' if args.batch else None + +def _build_bazel_cmd(*args): + cmd = ['bazel'] + if batch_option: + cmd.append('--batch') + for arg in args: + cmd.append(arg) + return cmd + def retrieve_ext_location(): - return check_output(['bazel', 'info', 'output_base']).strip() + return check_output(_build_bazel_cmd('info', 'output_base')).strip() def gen_bazel_path(): bazel = check_output(['which', 'bazel']).strip() @@ -66,7 +78,7 @@ deps = [] t = cp_targets[target] try: - check_call(['bazel', 'build', t]) + check_call(_build_bazel_cmd('build', t)) except CalledProcessError: exit(1) name = 'bazel-bin/tools/eclipse/' + t.split(':')[1] + '.runtime_classpath' @@ -277,7 +289,7 @@ makedirs(path.join(ROOT, gwt_working_dir)) try: - check_call(['bazel', 'build', MAIN, GWT, '//java/org/eclipse/jgit:libEdit-src.jar']) + check_call(_build_bazel_cmd('build', MAIN, GWT, '//java/org/eclipse/jgit:libEdit-src.jar')) except CalledProcessError: exit(1) except KeyboardInterrupt: