Added OCaml examples.
[libguestfs.git] / ocaml / examples / lvs.ml
1 (* An example using the OCaml bindings. *)
2
3 open Printf
4
5 let () =
6   if Array.length Sys.argv <= 1 || not (Sys.file_exists Sys.argv.(1)) then (
7     eprintf "Usage: lvs guest.img\n";
8     exit 1
9   );
10
11   let h = Guestfs.create () in
12   Guestfs.add_drive h Sys.argv.(1);
13   Guestfs.launch h;
14   Guestfs.wait_ready h;
15
16   let pvs = Guestfs.pvs h in
17   printf "PVs found: [ %s ]\n" (String.concat "; " (Array.to_list pvs));
18
19   let vgs = Guestfs.vgs h in
20   printf "VGs found: [ %s ]\n" (String.concat "; " (Array.to_list vgs));
21
22   let lvs = Guestfs.lvs h in
23   printf "LVs found: [ %s ]\n" (String.concat "; " (Array.to_list lvs));
24
25   (* Helps to find any allocation errors. *)
26   Gc.compact ()