3 from subprocess
import check_output
9 bazel_bin = check_output([
'bazel',
'info',
'bazel-bin']).
decode().strip()
11 go_protos = check_output([
14 'kind("go_proto_library", ...)',
17 check_output([
'bazel',
'build',
'-c',
'fastbuild'] + go_protos)
19 for rule
in go_protos:
20 rule_dir = rule.decode()[2:].rsplit(
':')[0]
21 input_dir = os.path.join(bazel_bin, rule_dir,
'pkg_go_proto_',
22 'github.com/cncf/xds/go', rule_dir)
23 input_files = glob.glob(os.path.join(input_dir,
'*.go'))
24 output_dir = os.path.join(output, rule_dir)
27 os.makedirs(output_dir, 0o755, exist_ok=
True)
28 for generated_file
in input_files:
29 output_file = shutil.copy(generated_file, output_dir)
30 os.chmod(output_file, 0o644)
33 if __name__ ==
"__main__":
34 workspace = check_output([
'bazel',
'info',
'workspace']).
decode().strip()
35 output = os.path.join(workspace,
'go')