[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

[Libguestfs] [PATCH] OCaml tools: use open_guestfs everywhere



Instead of creating Guestfs handles and manually apply common options
(e.g. debug and trace), use the open_guestfs in Common_utils.
This also applies the common options to handles which didn't set them
before, so we can inspect also their messages if needed.
---
 builder/builder.ml          |  8 ++------
 customize/customize_main.ml |  4 +---
 dib/dib.ml                  |  4 +---
 get-kernel/get_kernel.ml    |  4 +---
 resize/resize.ml            | 10 +++-------
 sparsify/cmdline.ml         |  2 +-
 sparsify/copying.ml         | 16 +++++-----------
 sparsify/in_place.ml        |  4 +---
 sysprep/main.ml             |  4 +---
 v2v/v2v.ml                  |  6 +++---
 10 files changed, 19 insertions(+), 43 deletions(-)

diff --git a/builder/builder.ml b/builder/builder.ml
index feb6e0d..2c51550 100644
--- a/builder/builder.ml
+++ b/builder/builder.ml
@@ -570,9 +570,7 @@ let main () =
         (human_size osize);
       let preallocation = if oformat = "qcow2" then Some "metadata" else None in
       let () =
-        let g = new G.guestfs () in
-        if trace () then g#set_trace true;
-        if verbose () then g#set_verbose true;
+        let g = open_guestfs () in
         g#disk_create ?preallocation ofile oformat osize in
       let cmd =
         sprintf "virt-resize%s%s%s --output-format %s%s%s --unknown-filesystems error %s %s"
@@ -626,9 +624,7 @@ let main () =
   (* Now mount the output disk so we can make changes. *)
   message (f_"Opening the new disk");
   let g =
-    let g = new G.guestfs () in
-    if trace () then g#set_trace true;
-    if verbose () then g#set_verbose true;
+    let g = open_guestfs () in
 
     (match memsize with None -> () | Some memsize -> g#set_memsize memsize);
     (match smp with None -> () | Some smp -> g#set_smp smp);
diff --git a/customize/customize_main.ml b/customize/customize_main.ml
index 49d510c..e161e82 100644
--- a/customize/customize_main.ml
+++ b/customize/customize_main.ml
@@ -165,9 +165,7 @@ read the man page virt-customize(1).
 
   (* Connect to libguestfs. *)
   let g =
-    let g = new G.guestfs () in
-    if trace () then g#set_trace true;
-    if verbose () then g#set_verbose true;
+    let g = open_guestfs () in
 
     (match memsize with None -> () | Some memsize -> g#set_memsize memsize);
     (match smp with None -> () | Some smp -> g#set_smp smp);
diff --git a/dib/dib.ml b/dib/dib.ml
index caf13f2..1ae8876 100644
--- a/dib/dib.ml
+++ b/dib/dib.ml
@@ -626,9 +626,7 @@ let main () =
   let is_ramdisk_build = is_ramdisk || StringSet.mem "ironic-agent" all_elements in
 
   let g, tmpdisk, tmpdiskfmt, drive_partition =
-    let g = new G.guestfs () in
-    if verbose () then g#set_verbose true;
-    if trace () then g#set_trace true;
+    let g = open_guestfs () in
 
     (match memsize with None -> () | Some memsize -> g#set_memsize memsize);
     (match smp with None -> () | Some smp -> g#set_smp smp);
diff --git a/get-kernel/get_kernel.ml b/get-kernel/get_kernel.ml
index 2bea559..59bd9d6 100644
--- a/get-kernel/get_kernel.ml
+++ b/get-kernel/get_kernel.ml
@@ -182,9 +182,7 @@ let main () =
   let add, output, unversioned, prefix = parse_cmdline () in
 
   (* Connect to libguestfs. *)
-  let g = new G.guestfs () in
-  if trace () then g#set_trace true;
-  if verbose () then g#set_verbose true;
+  let g = open_guestfs () in
   add g;
   g#launch ();
 
diff --git a/resize/resize.ml b/resize/resize.ml
index af7b37f..b2802c7 100644
--- a/resize/resize.ml
+++ b/resize/resize.ml
@@ -284,7 +284,7 @@ read the man page virt-resize(1).
       printf "alignment\n";
       printf "align-first\n";
       printf "infile-uri\n";
-      let g = new G.guestfs () in
+      let g = open_guestfs () in
       g#add_drive "/dev/null";
       g#launch ();
       if g#feature_available [| "ntfsprogs"; "ntfs3g" |] then
@@ -329,9 +329,7 @@ read the man page virt-resize(1).
 
   (* Add in and out disks to the handle and launch. *)
   let connect_both_disks () =
-    let g = new G.guestfs () in
-    if trace () then g#set_trace true;
-    if verbose () then g#set_verbose true;
+    let g = open_guestfs () in
     let _, { URI.path = path; protocol = protocol;
              server = server; username = username;
              password = password } = infile in
@@ -1295,9 +1293,7 @@ read the man page virt-resize(1).
       g#shutdown ();
       g#close ();
 
-      let g = new G.guestfs () in
-      if trace () then g#set_trace true;
-      if verbose () then g#set_verbose true;
+      let g = open_guestfs () in
       (* The output disk is being created, so use cache=unsafe here. *)
       g#add_drive ?format:output_format ~readonly:false ~cachemode:"unsafe"
         outfile;
diff --git a/sparsify/cmdline.ml b/sparsify/cmdline.ml
index 17b5542..868456f 100644
--- a/sparsify/cmdline.ml
+++ b/sparsify/cmdline.ml
@@ -107,7 +107,7 @@ read the man page virt-sparsify(1).
     printf "check-tmpdir\n";
     printf "in-place\n";
     printf "tmp-option\n";
-    let g = new Guestfs.guestfs () in
+    let g = open_guestfs () in
     g#add_drive "/dev/null";
     g#launch ();
     if g#feature_available [| "ntfsprogs"; "ntfs3g" |] then
diff --git a/sparsify/copying.ml b/sparsify/copying.ml
index ef196f6..bef0664 100644
--- a/sparsify/copying.ml
+++ b/sparsify/copying.ml
@@ -60,7 +60,7 @@ let run indisk outdisk check_tmpdir compress convert
       | Some fmt -> fmt    (* user specified input format, use that *)
       | None ->
         (* Don't know, so we must autodetect. *)
-        match (new G.guestfs ())#disk_format indisk  with
+        match (open_guestfs ())#disk_format indisk  with
         | "unknown" ->
           error (f_"cannot detect input disk format; use the --format parameter")
         | fmt -> fmt in
@@ -79,9 +79,7 @@ let run indisk outdisk check_tmpdir compress convert
       let file = String.sub file 9 (String.length file - 9) in
       if not (Sys.file_exists file) then
         error (f_"--tmp prebuilt:file: %s: file does not exist") file;
-      let g = new G.guestfs () in
-      if trace () then g#set_trace true;
-      if verbose () then g#set_verbose true;
+      let g = open_guestfs () in
       if g#disk_format file <> "qcow2" then
         error (f_"--tmp prebuilt:file: %s: file format is not qcow2") file;
       if not (g#disk_has_backing_file file) then
@@ -97,7 +95,7 @@ let run indisk outdisk check_tmpdir compress convert
   | Prebuilt_file _ -> ()
   | Directory tmpdir ->
     (* Get virtual size of the input disk. *)
-    let virtual_size = (new G.guestfs ())#disk_virtual_size indisk in
+    let virtual_size = (open_guestfs ())#disk_virtual_size indisk in
     if verbose () then
       printf "input disk virtual size is %Ld bytes (%s)\n%!"
              virtual_size (human_size virtual_size);
@@ -153,9 +151,7 @@ You can ignore this warning or change it to a hard failure using the
 
     (* Create 'tmp' with the indisk as the backing file. *)
     let create tmp =
-      let g = new G.guestfs () in
-      if trace () then g#set_trace true;
-      if verbose () then g#set_verbose true;
+      let g = open_guestfs () in
       g#disk_create
         ~backingfile:indisk ?backingformat:format ~compat:"1.1"
         tmp "qcow2" Int64.minus_one
@@ -180,9 +176,7 @@ You can ignore this warning or change it to a hard failure using the
 
   (* Connect to libguestfs. *)
   let g =
-    let g = new G.guestfs () in
-    if trace () then g#set_trace true;
-    if verbose () then g#set_verbose true;
+    let g = open_guestfs () in
 
     (* Note that the temporary overlay disk is always qcow2 format. *)
     g#add_drive ~format:"qcow2" ~readonly:false ~cachemode:"unsafe" overlaydisk;
diff --git a/sparsify/in_place.ml b/sparsify/in_place.ml
index 3a2b32c..6a42a11 100644
--- a/sparsify/in_place.ml
+++ b/sparsify/in_place.ml
@@ -31,9 +31,7 @@ module G = Guestfs
 
 let rec run disk format ignores machine_readable zeroes =
   (* Connect to libguestfs. *)
-  let g = new G.guestfs () in
-  if trace () then g#set_trace true;
-  if verbose () then g#set_verbose true;
+  let g = open_guestfs () in
 
   (* Capture ^C and clean up gracefully. *)
   let quit = ref false in
diff --git a/sysprep/main.ml b/sysprep/main.ml
index 411c595..12d4b02 100644
--- a/sysprep/main.ml
+++ b/sysprep/main.ml
@@ -211,9 +211,7 @@ read the man page virt-sysprep(1).
     message (f_"Examining the guest ...");
 
     (* Connect to libguestfs. *)
-    let g = new G.guestfs () in
-    if trace () then g#set_trace true;
-    if verbose () then g#set_verbose true;
+    let g = open_guestfs () in
     add g dryrun;
     g#launch ();
 
diff --git a/v2v/v2v.ml b/v2v/v2v.ml
index dabec7f..3610446 100644
--- a/v2v/v2v.ml
+++ b/v2v/v2v.ml
@@ -236,12 +236,12 @@ and create_overlays src_disks =
         error (f_"qemu-img command failed, see earlier errors");
 
       (* Sanity check created overlay (see below). *)
-      if not ((new G.guestfs ())#disk_has_backing_file overlay_file) then
+      if not ((open_guestfs ())#disk_has_backing_file overlay_file) then
         error (f_"internal error: qemu-img did not create overlay with backing file");
 
       let sd = "sd" ^ drive_name i in
 
-      let vsize = (new G.guestfs ())#disk_virtual_size overlay_file in
+      let vsize = (open_guestfs ())#disk_virtual_size overlay_file in
 
       { ov_overlay_file = overlay_file; ov_sd = sd;
         ov_virtual_size = vsize; ov_source = source }
@@ -780,7 +780,7 @@ and copy_targets targets input output output_alloc =
        * backing file.  Just sanity check this here.
        *)
       let overlay_file = t.target_overlay.ov_overlay_file in
-      if not ((new G.guestfs ())#disk_has_backing_file overlay_file) then
+      if not ((open_guestfs ())#disk_has_backing_file overlay_file) then
         error (f_"internal error: qemu corrupted the overlay file");
 
       (* Give the input module a chance to adjust the parameters
-- 
2.1.0


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]