X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=blobdiff_plain;f=ocaml%2Fexamples%2Flvs.ml;fp=ocaml%2Fexamples%2Flvs.ml;h=12c7c15a82267b970cdfaa66bb10e6bc5b685ea8;hp=0000000000000000000000000000000000000000;hb=bf26360e5e91148a4479f812c2b43acce4f5884e;hpb=13339826ea01f8dbd581b5d2544e7692171cf386 diff --git a/ocaml/examples/lvs.ml b/ocaml/examples/lvs.ml new file mode 100644 index 0000000..12c7c15 --- /dev/null +++ b/ocaml/examples/lvs.ml @@ -0,0 +1,26 @@ +(* An example using the OCaml bindings. *) + +open Printf + +let () = + if Array.length Sys.argv <= 1 || not (Sys.file_exists Sys.argv.(1)) then ( + eprintf "Usage: lvs guest.img\n"; + exit 1 + ); + + let h = Guestfs.create () in + Guestfs.add_drive h Sys.argv.(1); + Guestfs.launch h; + Guestfs.wait_ready h; + + let pvs = Guestfs.pvs h in + printf "PVs found: [ %s ]\n" (String.concat "; " (Array.to_list pvs)); + + let vgs = Guestfs.vgs h in + printf "VGs found: [ %s ]\n" (String.concat "; " (Array.to_list vgs)); + + let lvs = Guestfs.lvs h in + printf "LVs found: [ %s ]\n" (String.concat "; " (Array.to_list lvs)); + + (* Helps to find any allocation errors. *) + Gc.compact ()