X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;f=mclu_boot.ml;fp=mclu_boot.ml;h=a253981803ec12e3ece82523c9788eb22dd404cd;hb=c0d86b007d1dccfe41c1480479191024217769d5;hp=adae6de8e41a68ffc0f3e229b347e6776775906a;hpb=4fd4ac6d05891812aa4f0aa6cf44c97dc83d8391;p=mclu.git diff --git a/mclu_boot.ml b/mclu_boot.ml index adae6de..a253981 100644 --- a/mclu_boot.ml +++ b/mclu_boot.ml @@ -33,6 +33,14 @@ let set_memory s = eprintf "mclu: don't understand --memory parameter '%s' Try something like --memory 1G\n" s; exit 1 +let size = ref 0L (* 0 = default *) +let set_size s = + try size := bytes_of_human_size s + with Not_found -> + eprintf "mclu: don't understand --size parameter '%s' +Try something like --size 20G\n" s; + exit 1 +let timezone = ref "" (* "" = no timezone set *) let vcpus = ref 0 (* 0 = choose for me *) let open_console = ref false @@ -43,6 +51,8 @@ let get_arg_speclist () = Arg.align [ "--cpus", Arg.Set_int vcpus, "n Number of virtual CPUs"; "--memory", Arg.String set_memory, "nnG Amount of RAM to give guest"; "--ram", Arg.String set_memory, "nnG Amount of RAM to give guest"; + "--size", Arg.String set_size, "nnG Size of disk to give guest"; + "--timezone", Arg.Set_string timezone, "TZ Set timezone of guest"; "--vcpus", Arg.Set_int vcpus, "n Number of virtual CPUs"; "--viewer", Arg.Set open_viewer, " Open the graphical console"; ] @@ -250,12 +260,20 @@ base_image=%s \ format=%s \ name=%s \ output=%s \ +%s \ +%s \ %s build" (quote hostname) (quote template_info.Template.base_image) (* base_image *) format (* format *) name (* name *) (quote remote_image) (* output *) + (match !size with + | 0L -> "" + | size -> sprintf "size=%Ldb" size) (* size *) + (match !timezone with + | "" -> "" + | tz -> quote "timezone=" ^ tz) (* timezone *) remote_filename in if verbose then printf "%s\n%!" cmd; if Sys.command cmd <> 0 then (