diff --git a/WORKSPACE b/WORKSPACE index f8347f8ff55dc..a1767ae3c9e03 100644 --- a/WORKSPACE +++ b/WORKSPACE @@ -231,10 +231,17 @@ rules_closure_toolchains() http_archive( name = "rules_pkg", - sha256 = "451e08a4d78988c06fa3f9306ec813b836b1d076d0f055595444ba4ff22b867f", + patch_args = [ + "-p1", + ], + patches = [ + "//py:rules_pkg_tree.patch", + ], urls = [ - "https://github.com/bazelbuild/rules_pkg/releases/download/0.7.1/rules_pkg-0.7.1.tar.gz", + "https://mirror.bazel.build/github.com/bazelbuild/rules_pkg/releases/download/0.8.0/rules_pkg-0.8.0.tar.gz", + "https://github.com/bazelbuild/rules_pkg/releases/download/0.8.0/rules_pkg-0.8.0.tar.gz", ], + sha256 = "eea0f59c28a9241156a47d7a8e32db9122f3d50b505fae0f33de6ce4d9b61834", ) load("@rules_pkg//:deps.bzl", "rules_pkg_dependencies") diff --git a/py/rules_pkg_tree.patch b/py/rules_pkg_tree.patch new file mode 100644 index 0000000000000..5ba6fd32105a9 --- /dev/null +++ b/py/rules_pkg_tree.patch @@ -0,0 +1,16 @@ +diff --git a/pkg/private/tar/build_tar.py b/pkg/private/tar/build_tar.py +index ab16610d..b6b75bd7 100644 +--- a/pkg/private/tar/build_tar.py ++++ b/pkg/private/tar/build_tar.py +@@ -309,7 +309,10 @@ def add_manifest_entry(self, entry_list, file_attributes): + elif entry.entry_type == manifest.ENTRY_IS_EMPTY_FILE: + self.add_empty_file(entry.dest, **attrs) + else: +- self.add_file(entry.src, entry.dest, **attrs) ++ if os.path.isdir(entry.src): ++ self.add_tree(entry.src, entry.dest, **attrs) ++ else: ++ self.add_file(entry.src, entry.dest, **attrs) + + + def main():