On Tue, Sep 22, 2015 at 10:19:03AM +0100, Daniel P. Berrange wrote:
On Mon, Sep 21, 2015 at 10:11:48PM +0200, Cedric Bosdonnat wrote:
> On Mon, 2015-09-21 at 15:45 +0100, Daniel P. Berrange wrote:
> > Currently the CLI syntax is somewhat docker specific requiring
> > inclusion of --registry arg to identify the docker download
> > server. Other app containers have a notion of download server,
> > but don't separate it from the template name.
> >
> > This patch removes that docker-ism by changing to use a URI
> > for identifying the template image. So instead of
> >
> > virt-sandbox-image download \
> > --source docker --registry index.docker.io
> > --username dan --password 123456 ubuntu:15.04
> >
> > You can use
> >
> > virt-sandbox-image download
docker://dan:123456@index.docker.io/ubuntu?tag=15.04
> >
> > The only mandatory part is the source prefix and image name, so
> > that can shorten to just
> >
> > virt-sandbox-image download docker:///ubuntu
> >
> > to pull down the latest ubuntu image, from the default registry
> > using no authentication.
> > ---
> >
> > Changed in v2:
> >
> > - Rebase against master, instead of (unpushed) docker volume patch
> >
> > libvirt-sandbox/image/cli.py | 71 +++++--------
> > libvirt-sandbox/image/sources/DockerSource.py | 142
++++++++++++++------------
> > libvirt-sandbox/image/sources/Source.py | 29 +++---
> > libvirt-sandbox/image/template.py | 110 ++++++++++++++++++++
>
> Missing change in libvirt-sandbox/image/Makefile.am to add template.py.
> As is that file isn't installed.
>
> I'm also just realizing that we didn't add Eren't commit for the
> virt-sandbox-image man page. Adding it later is fine, but we need to
> keep that on our radar.
Yep, that's in my tree to update & pyush.
> > @@ -151,7 +150,7 @@ def run(args):
> >
> > def requires_template(parser):
> > parser.add_argument("template",
> > - help=_("name of the template"))
> > + help=_("URI of the template"))
>
> Shouldn't we provide some examples here? As those URIs can't be invented
> we need to give the user some chances to discover them without having to
> read our code ;)
I wasn't sure this was the best place. We'll certainly put examples in
the man pages though.
I found out how to add an epilog to the help output, so we can get text
that looks like this:
$ virt-sandbox-image download --help
usage: virt-sandbox-image download [-h] [-t TEMPLATE_DIR] template
positional arguments:
template URI of the template
optional arguments:
-h, --help show this help message and exit
-t TEMPLATE_DIR, --template-dir TEMPLATE_DIR
Template directory for saving templates
Example supported URI formats:
docker:///ubuntu?tag=15.04
docker://username:password@index.docker.io/private/image
docker://registry.access.redhat.com/rhel6
> ACK, with the help improvement + Makefile.am fix.
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 :|