From 0526bb662712ee1368e4453664f62350ed813861 Mon Sep 17 00:00:00 2001 From: Seblu <sebastien.luttringer@smartjog.com> Date: Wed, 13 Jul 2011 19:55:23 +0200 Subject: [PATCH] Payloads are now created like --numeric-owner with tar --- installsystems/image.py | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/installsystems/image.py b/installsystems/image.py index 38c2cee..502f24c 100644 --- a/installsystems/image.py +++ b/installsystems/image.py @@ -225,11 +225,21 @@ class SourceImage(Image): try: # Tarballing tarball = Tarball.open(tar_path, "w:gz", dereference=False) - tarball.add(data_path, arcname="/", recursive=True) + tarball.add(data_path, arcname="/", recursive=True, + filter=self._create_payload_tarball_filter) tarball.close() except Exception as e: raise Exception("Unable to create payload tarball %s: %s" % (tar_path, e)) + def _create_payload_tarball_filter(self, tarinfo): + ''' + Have the same behaviour as --numeric-owner on gnu tar + Remove string name and group to escape weird translation + ''' + tarinfo.uname = "" + tarinfo.gname = "" + return tarinfo + def _create_payload_file(self, dest, source): ''' Create a payload file -- GitLab