[libvirt] [sandbox PATCH v4 14/21] Image: Add run function

Daniel P. Berrange berrange at redhat.com
Fri Sep 4 13:14:09 UTC 2015


On Fri, Aug 28, 2015 at 01:47:42PM +0000, Eren Yagdiran wrote:
> Run an already-built template
> If there is no execution command specified by user, source.get_command will
> find the command to invoke
> ---
>  virt-sandbox-image/virt-sandbox-image.py | 25 +++++++++++++++++++++++++
>  1 file changed, 25 insertions(+)
> 
> diff --git a/virt-sandbox-image/virt-sandbox-image.py b/virt-sandbox-image/virt-sandbox-image.py
> index a73619c..c182874 100755
> --- a/virt-sandbox-image/virt-sandbox-image.py
> +++ b/virt-sandbox-image/virt-sandbox-image.py
> @@ -130,6 +130,31 @@ def check_connect(connectstr):
>              raise ValueError("%s is not supported by Virt-sandbox" %connectstr)
>          return True
>  
> +def run(args):
> +    try:
> +        if args.connect is not None:
> +            check_connect(args.connect)
> +        source = dynamic_source_loader(args.source)
> +        diskfile,configfile = source.get_disk(name=args.name,templatedir=args.template_dir,id=args.id)
> +
> +        format = "qcow2"
> +        commandToRun = args.igniter
> +        if commandToRun is None:
> +            commandToRun = source.get_command(configfile)
> +        cmd = ['virt-sandbox']
> +        if args.connect is not None:
> +            cmd.append("-c")
> +            cmd.append(args.connect)

We must also pass '-n' to give the instance name, otherwise we'll
never be able to run more than one docker image at once

> +        params = ['-m','host-image:/=%s,format=%s' %(diskfile,format),
> +               '--',
> +               commandToRun]
> +        cmd = cmd + params
> +        subprocess.call(cmd)
> +        subprocess.call(["rm", "-rf", diskfile])

We should just use  os.unlink(diskfile) - no need to shell out to
the rm command to just delete a single file


Regards,
Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|




More information about the libvir-list mailing list