Skip to content

Commit

Permalink
fix: Fix tar packaging in bazel rules for mac (#3255)
Browse files Browse the repository at this point in the history
  • Loading branch information
vam-google committed Jul 17, 2020
1 parent 358fdc1 commit 3da3bf1
Show file tree
Hide file tree
Showing 3 changed files with 22 additions and 13 deletions.
14 changes: 10 additions & 4 deletions gapic_pkg.bzl
Original file line number Diff line number Diff line change
Expand Up @@ -16,9 +16,13 @@ def construct_package_dir_paths(attr_package_dir, out_pkg, label_name):
if attr_package_dir:
package_dir = attr_package_dir
package_dir_expr = "../{}/".format(package_dir)
tar_cd_suffix = ".."
tar_prefix = attr_package_dir
else:
package_dir = label_name
package_dir_expr = "./"
tar_cd_suffix = "."
tar_prefix = "."

# We need to include label in the path to eliminate possible output files duplicates
# (labels are guaranteed to be unique by bazel itself)
Expand All @@ -29,6 +33,8 @@ def construct_package_dir_paths(attr_package_dir, out_pkg, label_name):
package_dir_path = package_dir_path,
package_dir_sibling_parent = out_pkg,
package_dir_sibling_basename = label_name,
tar_cd_suffix = tar_cd_suffix,
tar_prefix = tar_prefix
)

def put_dep_in_a_bucket(dep, dep_bucket, processed_deps):
Expand All @@ -54,8 +60,8 @@ def _pkg_tar_impl(ctx):
for dep in {deps}; do
tar -xzpf $dep -C {package_dir_path}
done
cd {package_dir_path}/{cd_suffix}
tar -zchpf {tar_prefix}/{package_dir}.tar.gz {package_dir}
cd {package_dir_path}/{tar_cd_suffix}
tar -zchpf {tar_prefix}/{package_dir}.tar.gz {tar_prefix}/*
cd -
mv {package_dir_path}/{package_dir}.tar.gz {pkg}
rm -rf {package_dir_path}
Expand All @@ -64,8 +70,8 @@ def _pkg_tar_impl(ctx):
package_dir_path = paths.package_dir_path,
package_dir = paths.package_dir,
pkg = ctx.outputs.pkg.path,
cd_suffix = "/.." if ctx.attr.package_dir else ".",
tar_prefix = paths.package_dir if ctx.attr.package_dir else ".",
tar_cd_suffix = paths.tar_cd_suffix,
tar_prefix = paths.tar_prefix,
)

ctx.actions.run_shell(
Expand Down
14 changes: 8 additions & 6 deletions java/java_gapic_pkg.bzl
Original file line number Diff line number Diff line change
Expand Up @@ -60,16 +60,17 @@ def _java_gapic_build_configs_pkg_impl(ctx):
cp $templ {package_dir_path}/
done
chmod 644 {package_dir_path}/*
cd {package_dir_path}
tar -zchpf {package_dir}.tar.gz {package_dir_expr}*
cd {package_dir_path}/{tar_cd_suffix}
tar -zchpf {tar_prefix}/{package_dir}.tar.gz {tar_prefix}/*
cd -
mv {package_dir_path}/{package_dir}.tar.gz {pkg}
""".format(
templates = " ".join(["'%s'" % f.path for f in expanded_templates]),
package_dir_path = paths.package_dir_path,
package_dir = paths.package_dir,
pkg = ctx.outputs.pkg.path,
package_dir_expr = paths.package_dir_expr,
tar_cd_suffix = paths.tar_cd_suffix,
tar_prefix = paths.tar_prefix,
)

ctx.actions.run_shell(
Expand Down Expand Up @@ -124,8 +125,8 @@ def _java_gapic_srcs_pkg_impl(ctx):
unzip -q -o $test_src -d {package_dir_path}/src/test/java
rm -r -f {package_dir_path}/src/test/java/META-INF
done
cd {package_dir_path}
tar -zchpf {package_dir}.tar.gz {package_dir_expr}*
cd {package_dir_path}/{tar_cd_suffix}
tar -zchpf {tar_prefix}/{package_dir}.tar.gz {tar_prefix}/*
cd -
mv {package_dir_path}/{package_dir}.tar.gz {pkg}
""".format(
Expand All @@ -135,7 +136,8 @@ def _java_gapic_srcs_pkg_impl(ctx):
package_dir_path = paths.package_dir_path,
package_dir = paths.package_dir,
pkg = ctx.outputs.pkg.path,
package_dir_expr = paths.package_dir_expr,
tar_cd_suffix = paths.tar_cd_suffix,
tar_prefix = paths.tar_prefix,
)

ctx.actions.run_shell(
Expand Down
7 changes: 4 additions & 3 deletions php/php_gapic_pkg.bzl
Original file line number Diff line number Diff line change
Expand Up @@ -36,8 +36,8 @@ def _php_gapic_src_pkg_impl(ctx):
mkdir -p {package_dir_path}/proto
unzip -q -o $gapic_src -d {package_dir_path}
done
cd {package_dir_path}
tar -zchpf {package_dir}.tar.gz {package_dir_expr}*
cd {package_dir_path}/{tar_cd_suffix}
tar -zchpf {tar_prefix}/{package_dir}.tar.gz {tar_prefix}/*
cd -
mv {package_dir_path}/{package_dir}.tar.gz {pkg}
rm -rf {package_dir_path}
Expand All @@ -47,7 +47,8 @@ def _php_gapic_src_pkg_impl(ctx):
package_dir_path = paths.package_dir_path,
package_dir = paths.package_dir,
pkg = ctx.outputs.pkg.path,
package_dir_expr = paths.package_dir_expr,
tar_cd_suffix = paths.tar_cd_suffix,
tar_prefix = paths.tar_prefix,
)

ctx.actions.run_shell(
Expand Down

0 comments on commit 3da3bf1

Please sign in to comment.