
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 :|