diff options
Diffstat (limited to 'scripts/lib/wic/plugins/source')
-rw-r--r-- | scripts/lib/wic/plugins/source/rootfs.py | 22 |
1 files changed, 1 insertions, 21 deletions
diff --git a/scripts/lib/wic/plugins/source/rootfs.py b/scripts/lib/wic/plugins/source/rootfs.py index 089aaea477..40419a64b3 100644 --- a/scripts/lib/wic/plugins/source/rootfs.py +++ b/scripts/lib/wic/plugins/source/rootfs.py | |||
@@ -17,7 +17,6 @@ import shutil | |||
17 | import sys | 17 | import sys |
18 | 18 | ||
19 | from oe.path import copyhardlinktree, copytree | 19 | from oe.path import copyhardlinktree, copytree |
20 | from pathlib import Path | ||
21 | 20 | ||
22 | from wic import WicError | 21 | from wic import WicError |
23 | from wic.pluginbase import SourcePlugin | 22 | from wic.pluginbase import SourcePlugin |
@@ -81,7 +80,7 @@ class RootfsPlugin(SourcePlugin): | |||
81 | 80 | ||
82 | new_rootfs = None | 81 | new_rootfs = None |
83 | # Handle excluded paths. | 82 | # Handle excluded paths. |
84 | if part.exclude_path or part.include_path or part.embed_rootfs: | 83 | if part.exclude_path or part.include_path: |
85 | # We need a new rootfs directory we can delete files from. Copy to | 84 | # We need a new rootfs directory we can delete files from. Copy to |
86 | # workdir. | 85 | # workdir. |
87 | new_rootfs = os.path.realpath(os.path.join(cr_workdir, "rootfs%d" % part.lineno)) | 86 | new_rootfs = os.path.realpath(os.path.join(cr_workdir, "rootfs%d" % part.lineno)) |
@@ -101,25 +100,6 @@ class RootfsPlugin(SourcePlugin): | |||
101 | for path in part.include_path or []: | 100 | for path in part.include_path or []: |
102 | copyhardlinktree(path, new_rootfs) | 101 | copyhardlinktree(path, new_rootfs) |
103 | 102 | ||
104 | for embed in part.embed_rootfs or []: | ||
105 | [embed_rootfs, path] = embed | ||
106 | #we need to remove the initial / for os.path.join to work | ||
107 | if os.path.isabs(path): | ||
108 | path = path[1:] | ||
109 | if embed_rootfs in krootfs_dir: | ||
110 | embed_rootfs = krootfs_dir[embed_rootfs] | ||
111 | embed_rootfs = cls.__get_rootfs_dir(embed_rootfs) | ||
112 | tar_file = os.path.realpath(os.path.join(cr_workdir, "aux.tar")) | ||
113 | tar_cmd = "%s tar cpf %s -C %s ." % (cls.__get_pseudo(native_sysroot, | ||
114 | embed_rootfs), tar_file, embed_rootfs) | ||
115 | exec_native_cmd(tar_cmd, native_sysroot) | ||
116 | untar_cmd = "%s tar xf %s -C %s ." % (cls.__get_pseudo(native_sysroot, new_rootfs), | ||
117 | tar_file, os.path.join(new_rootfs, path)) | ||
118 | Path(os.path.join(new_rootfs, path)).mkdir(parents=True, exist_ok=True) | ||
119 | exec_native_cmd(untar_cmd, native_sysroot, | ||
120 | cls.__get_pseudo(native_sysroot, new_rootfs)) | ||
121 | os.remove(tar_file) | ||
122 | |||
123 | for orig_path in part.exclude_path or []: | 103 | for orig_path in part.exclude_path or []: |
124 | path = orig_path | 104 | path = orig_path |
125 | if os.path.isabs(path): | 105 | if os.path.isabs(path): |