diff options
Diffstat (limited to 'scripts/lib')
| -rw-r--r-- | scripts/lib/wic/help.py | 3 | ||||
| -rw-r--r-- | scripts/lib/wic/ksparser.py | 1 | ||||
| -rw-r--r-- | scripts/lib/wic/partition.py | 5 | ||||
| -rw-r--r-- | scripts/lib/wic/plugins/source/rootfs.py | 2 |
4 files changed, 8 insertions, 3 deletions
diff --git a/scripts/lib/wic/help.py b/scripts/lib/wic/help.py index 41451d1cb0..991907d3f5 100644 --- a/scripts/lib/wic/help.py +++ b/scripts/lib/wic/help.py | |||
| @@ -991,6 +991,9 @@ DESCRIPTION | |||
| 991 | multiple partitions and we want to keep the right | 991 | multiple partitions and we want to keep the right |
| 992 | permissions and usernames in all the partitions. | 992 | permissions and usernames in all the partitions. |
| 993 | 993 | ||
| 994 | --no-fstab-update: This option is specific to wic. It does not update the | ||
| 995 | '/etc/fstab' stock file for the given partition. | ||
| 996 | |||
| 994 | --extra-space: This option is specific to wic. It adds extra | 997 | --extra-space: This option is specific to wic. It adds extra |
| 995 | space after the space filled by the content | 998 | space after the space filled by the content |
| 996 | of the partition. The final size can go | 999 | of the partition. The final size can go |
diff --git a/scripts/lib/wic/ksparser.py b/scripts/lib/wic/ksparser.py index 7a4cc83af5..0df9eb0d05 100644 --- a/scripts/lib/wic/ksparser.py +++ b/scripts/lib/wic/ksparser.py | |||
| @@ -185,6 +185,7 @@ class KickStart(): | |||
| 185 | part.add_argument('--use-uuid', action='store_true') | 185 | part.add_argument('--use-uuid', action='store_true') |
| 186 | part.add_argument('--uuid') | 186 | part.add_argument('--uuid') |
| 187 | part.add_argument('--fsuuid') | 187 | part.add_argument('--fsuuid') |
| 188 | part.add_argument('--no-fstab-update', action='store_true') | ||
| 188 | 189 | ||
| 189 | bootloader = subparsers.add_parser('bootloader') | 190 | bootloader = subparsers.add_parser('bootloader') |
| 190 | bootloader.add_argument('--append') | 191 | bootloader.add_argument('--append') |
diff --git a/scripts/lib/wic/partition.py b/scripts/lib/wic/partition.py index e0b2c5bdf2..ab304f1b2a 100644 --- a/scripts/lib/wic/partition.py +++ b/scripts/lib/wic/partition.py | |||
| @@ -54,6 +54,7 @@ class Partition(): | |||
| 54 | self.uuid = args.uuid | 54 | self.uuid = args.uuid |
| 55 | self.fsuuid = args.fsuuid | 55 | self.fsuuid = args.fsuuid |
| 56 | self.type = args.type | 56 | self.type = args.type |
| 57 | self.no_fstab_update = args.no_fstab_update | ||
| 57 | self.updated_fstab_path = None | 58 | self.updated_fstab_path = None |
| 58 | self.has_fstab = False | 59 | self.has_fstab = False |
| 59 | self.update_fstab_in_rootfs = False | 60 | self.update_fstab_in_rootfs = False |
| @@ -286,7 +287,7 @@ class Partition(): | |||
| 286 | (self.fstype, extraopts, rootfs, label_str, self.fsuuid, rootfs_dir) | 287 | (self.fstype, extraopts, rootfs, label_str, self.fsuuid, rootfs_dir) |
| 287 | exec_native_cmd(mkfs_cmd, native_sysroot, pseudo=pseudo) | 288 | exec_native_cmd(mkfs_cmd, native_sysroot, pseudo=pseudo) |
| 288 | 289 | ||
| 289 | if self.updated_fstab_path and self.has_fstab: | 290 | if self.updated_fstab_path and self.has_fstab and not self.no_fstab_update: |
| 290 | debugfs_script_path = os.path.join(cr_workdir, "debugfs_script") | 291 | debugfs_script_path = os.path.join(cr_workdir, "debugfs_script") |
| 291 | with open(debugfs_script_path, "w") as f: | 292 | with open(debugfs_script_path, "w") as f: |
| 292 | f.write("cd etc\n") | 293 | f.write("cd etc\n") |
| @@ -350,7 +351,7 @@ class Partition(): | |||
| 350 | mcopy_cmd = "mcopy -i %s -s %s/* ::/" % (rootfs, rootfs_dir) | 351 | mcopy_cmd = "mcopy -i %s -s %s/* ::/" % (rootfs, rootfs_dir) |
| 351 | exec_native_cmd(mcopy_cmd, native_sysroot) | 352 | exec_native_cmd(mcopy_cmd, native_sysroot) |
| 352 | 353 | ||
| 353 | if self.updated_fstab_path and self.has_fstab: | 354 | if self.updated_fstab_path and self.has_fstab and not self.no_fstab_update: |
| 354 | mcopy_cmd = "mcopy -i %s %s ::/etc/fstab" % (rootfs, self.updated_fstab_path) | 355 | mcopy_cmd = "mcopy -i %s %s ::/etc/fstab" % (rootfs, self.updated_fstab_path) |
| 355 | exec_native_cmd(mcopy_cmd, native_sysroot) | 356 | exec_native_cmd(mcopy_cmd, native_sysroot) |
| 356 | 357 | ||
diff --git a/scripts/lib/wic/plugins/source/rootfs.py b/scripts/lib/wic/plugins/source/rootfs.py index 96d940a91d..2e34e715ca 100644 --- a/scripts/lib/wic/plugins/source/rootfs.py +++ b/scripts/lib/wic/plugins/source/rootfs.py | |||
| @@ -218,7 +218,7 @@ class RootfsPlugin(SourcePlugin): | |||
| 218 | # Update part.has_fstab here as fstab may have been added or | 218 | # Update part.has_fstab here as fstab may have been added or |
| 219 | # removed by the above modifications. | 219 | # removed by the above modifications. |
| 220 | part.has_fstab = os.path.exists(os.path.join(new_rootfs, "etc/fstab")) | 220 | part.has_fstab = os.path.exists(os.path.join(new_rootfs, "etc/fstab")) |
| 221 | if part.update_fstab_in_rootfs and part.has_fstab: | 221 | if part.update_fstab_in_rootfs and part.has_fstab and not part.no_fstab_update: |
| 222 | fstab_path = os.path.join(new_rootfs, "etc/fstab") | 222 | fstab_path = os.path.join(new_rootfs, "etc/fstab") |
| 223 | # Assume that fstab should always be owned by root with fixed permissions | 223 | # Assume that fstab should always be owned by root with fixed permissions |
| 224 | install_cmd = "install -m 0644 %s %s" % (part.updated_fstab_path, fstab_path) | 224 | install_cmd = "install -m 0644 %s %s" % (part.updated_fstab_path, fstab_path) |
