[lxc-devel] [PATCH 1/2] python2: Don't require a template name

Stéphane Graber stgraber at ubuntu.com
Tue Jun 10 20:21:43 UTC 2014


On Tue, Jun 10, 2014 at 12:08:20PM -0400, Chuck Short wrote:
> The template name isn't required, if it's not passed, then create will
> simply be asked to create a container without a rootfs.
> 
> Signed-off-by: Chuck Short <chuck.short at canonical.com>

Acked-by: Stéphane Graber <stgraber at ubuntu.com>

> From c629b7c1adcf64ad1da9f3bdc0b30434147e7100 Mon Sep 17 00:00:00 2001
> From: Chuck Short <chuck.short at canonical.com>
> Date: Tue, 10 Jun 2014 12:04:36 -0400
> Subject: [PATCH 1/2] python2: Don't require a template name
> 
> The template name isn't required, if it's not passed, then create will
> simply be asked to create a container without a rootfs.
> 
> Signed-off-by: Chuck Short <chuck.short at canonical.com>
> ---
>  lxc.c           |  2 +-
>  lxc/__init__.py | 13 +++++++++----
>  2 files changed, 10 insertions(+), 5 deletions(-)
> 
> diff --git a/lxc.c b/lxc.c
> index e53e792..6fb5f43 100644
> --- a/lxc.c
> +++ b/lxc.c
> @@ -729,7 +729,7 @@ Container_create(Container *self, PyObject *args, PyObject *kwds)
>      int i = 0;
>      static char *kwlist[] = {"template", "flags", "args", NULL};
>  
> -    if (! PyArg_ParseTupleAndKeywords(args, kwds, "s|iO", kwlist,
> +    if (! PyArg_ParseTupleAndKeywords(args, kwds, "|siO", kwlist,
>                                        &template_name, &flags, &vargs))
>          return NULL;
>  
> diff --git a/lxc/__init__.py b/lxc/__init__.py
> index 45d139d..47b25b8 100644
> --- a/lxc/__init__.py
> +++ b/lxc/__init__.py
> @@ -201,11 +201,11 @@ class Container(_lxc.Container):
>  
>          return _lxc.Container.set_config_item(self, key, value)
>  
> -    def create(self, template, flags=0, args=()):
> +    def create(self, template=None, flags=0, args=()):
>          """
>              Create a new rootfs for the container.
>  
> -            "template" must be a valid template name.
> +            "template" if passed must be a valid template name.
>  
>              "flags" (optional) is an integer representing the optional
>              create flags to be passed.
> @@ -222,8 +222,13 @@ class Container(_lxc.Container):
>          else:
>              template_args = args
>  
> -        return _lxc.Container.create(self, template=template,
> -                                     flags=flags, args=tuple(template_args))
> +        if template:
> +            return _lxc.Container.create(self, template=template,
> +                                         flags=flags,
> +                                         args=tuple(template_args))
> +        else:
> +            return _lxc.Container.create(self, flags=flags,
> +                                         args=tuple(template_args))
>  
>      def clone(self, newname, config_path=None, flags=0, bdevtype=None,
>                bdevdata=None, newsize=0, hookargs=()):
> -- 
> 2.0.0
> 

> _______________________________________________
> lxc-devel mailing list
> lxc-devel at lists.linuxcontainers.org
> http://lists.linuxcontainers.org/listinfo/lxc-devel


-- 
Stéphane Graber
Ubuntu developer
http://www.ubuntu.com
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.linuxcontainers.org/pipermail/lxc-devel/attachments/20140610/af4e2cce/attachment.sig>


More information about the lxc-devel mailing list