]> code.ossystems Code Review - openembedded-core.git/commitdiff
lib/package_manager: Use shutil.copy instead of bb.utils.copyfile for intercepts
authorRichard Purdie <richard.purdie@linuxfoundation.org>
Mon, 6 Sep 2021 03:06:21 +0000 (11:06 +0800)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Wed, 8 Sep 2021 22:53:56 +0000 (23:53 +0100)
If the scripts/postinst-intercepts is owned by root/root then the copyfile() calls
will fail due to chown issues. We don't care about ownership of these files so
use shutil.copy() instead which won't perform any chown.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 1a03c70c282b3445b93a4c70ea6d40a1778750c5)
Signed-off-by: Anuj Mittal <anuj.mittal@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/lib/oe/package_manager/__init__.py

index 42225a3b2e3a11fcafd1bc45b12e71bd62373694..26f9f82aaa634f4ecede4b5303c63d070883dd42 100644 (file)
@@ -189,7 +189,7 @@ class PackageManager(object, metaclass=ABCMeta):
         bb.utils.remove(self.intercepts_dir, True)
         bb.utils.mkdirhier(self.intercepts_dir)
         for intercept in postinst_intercepts:
-            bb.utils.copyfile(intercept, os.path.join(self.intercepts_dir, os.path.basename(intercept)))
+            shutil.copy(intercept, os.path.join(self.intercepts_dir, os.path.basename(intercept)))
 
     @abstractmethod
     def _handle_intercept_failure(self, failed_script):