[libvirt] [sandbox PATCH v2 05/19] Image: Refactor create function
Daniel P. Berrange
berrange at redhat.com
Mon Aug 10 16:14:16 UTC 2015
On Tue, Aug 04, 2015 at 08:11:11PM +0000, Eren Yagdiran wrote:
> Move the docker-related code to the DockerSource and use
> the Source mechanism
> ---
> virt-sandbox-image/sources/DockerSource.py | 100 +++++++++++++++++++++++++++++
> virt-sandbox-image/sources/Source.py | 4 ++
> virt-sandbox-image/virt-sandbox-image.py | 70 ++++----------------
> 3 files changed, 118 insertions(+), 56 deletions(-)
>
> diff --git a/virt-sandbox-image/sources/DockerSource.py b/virt-sandbox-image/sources/DockerSource.py
> index cf81ffe..9cd0080 100644
> --- a/virt-sandbox-image/sources/DockerSource.py
> +++ b/virt-sandbox-image/sources/DockerSource.py
> @@ -223,5 +223,105 @@ class DockerSource(Source):
> + def _format_disk(self,disk,format,connect):
> + cmd = ['virt-sandbox']
> + if connect is not None:
> + cmd.append("-c")
> + cmd.append(connect)
> + params = ['--disk=file:disk_image=%s,format=%s' %(disk,format),
> + '/sbin/mkfs.ext3',
> + '/dev/disk/by-tag/disk_image']
> + cmd = cmd + params
> + subprocess.call(cmd)
We need to include the '-p' argument, because if running with qemu:///session
you'll be unprivileged by default, so need -p to become root in the sandbox.
> + def _extract_tarballs(self,directory,format,connect):
> + tempdir = "/mnt"
> + tarfile = directory + "tar.gz"
> + diskfile = directory + "qcow2"
> + cmd = ['virt-sandbox']
> + if connect is not None:
> + cmd.append("-c")
> + cmd.append(connect)
> + params = ['-m',
> + 'host-image:/mnt=%s,format=%s' %(diskfile,format),
> + '--',
> + '/bin/tar',
> + 'zxvf',
Could probably leave out the 'v' flag, since I don't think we need to
display a list of every file. Or make it conditional on some --debug
flag to virt-sandbox-image.
> + '%s' %tarfile,
> + '-C',
> + '/mnt']
> + cmd = cmd + params
> + subprocess.call(cmd)
Same here about -p flag needed
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