[PATCH 2/2 livemedia-creator atomic] Add --make-pxe-live-tar target.

Radek Vykydal rvykydal at redhat.com
Mon Dec 15 15:49:07 UTC 2014


Similar to --make-pxe-live target but rootfs is compressed tarball instead
of squashfs image
---
 src/sbin/livemedia-creator | 26 +++++++++++++++++++-------
 1 file changed, 19 insertions(+), 7 deletions(-)

diff --git a/src/sbin/livemedia-creator b/src/sbin/livemedia-creator
index e25291c..67b25e9 100755
--- a/src/sbin/livemedia-creator
+++ b/src/sbin/livemedia-creator
@@ -1025,12 +1025,22 @@ def make_live_images(opts, work_dir, root_dir, rootfs_image=None):
 
     log.info("Packing live rootfs image")
     add_pxe_args = []
-    live_image_name = "live-rootfs.squashfs.img"
-    mksquashfs(squashfs_root_dir,
-                joinpaths(work_dir, live_image_name),
-                opts.compression,
-                opts.compress_args)
-
+    if opts.make_pxe_live:
+        live_image_name = "live-rootfs.squashfs.img"
+        mksquashfs(squashfs_root_dir,
+                   joinpaths(work_dir, live_image_name),
+                   opts.compression,
+                   opts.compress_args)
+    elif opts.make_pxe_live_tar:
+        live_image_name = "live-rootfs.tar.xz"
+        compress_args = []
+        if opts.compression == "xz" and not opts.compress_args:
+            compress_args = ["-9"]
+        rc = mktar(liveos_dir,
+                   joinpaths(work_dir, live_image_name),
+                   opts.compression,
+                   compress_args)
+        add_pxe_args = ["rd.writable.fsimg"]
     remove(squashfs_root_dir)
 
     log.info("Rebuilding initramfs for live")
@@ -1095,6 +1105,8 @@ def main():
                         help="Build a tar of the root filesystem")
     action.add_argument("--make-pxe-live", action="store_true",
                         help="Build live in squashfs and initrd for pxe boot")
+    action.add_argument("--make-pxe-live-tar", action="store_true",
+                        help="Build live in tar.gz and initrd for pxe boot")
 
     parser.add_argument("--iso", type=os.path.abspath,
                         help="Anaconda installation .iso path to use for virt-install")
@@ -1371,7 +1383,7 @@ def main():
             make_appliance(opts.disk_image or disk_img, opts.app_name,
                            opts.app_template, opts.app_file, networks, opts.ram,
                            opts.vcpus, opts.arch, opts.title, opts.project, opts.releasever)
-        elif opts.make_pxe_live:
+        elif opts.make_pxe_live or opts.make_pxe_live_tar:
 
             work_dir = tempfile.mkdtemp()
             log.info("working dir is {0}".format(work_dir))
-- 
1.9.3



More information about the anaconda-patches mailing list