]> git.ipfire.org Git - thirdparty/lxc.git/commitdiff
Fix container creation without a rootfs
authorDavid Ward <david.ward@ll.mit.edu>
Tue, 23 Jun 2015 14:57:39 +0000 (10:57 -0400)
committerStéphane Graber <stgraber@ubuntu.com>
Thu, 27 Aug 2015 21:50:33 +0000 (17:50 -0400)
It is not an error to create a container without a template or rootfs.

Signed-off-by: David Ward <david.ward@ll.mit.edu>
Acked-by: Serge E. Hallyn <serge.hallyn@ubuntu.com>
src/lxc/lxccontainer.c

index f962fb9bd6037bdeb76f9d472ee5414e87429823..7b6609047a11bd0ac600d6ed1dfa1677d40011fc 100644 (file)
@@ -1289,13 +1289,18 @@ static bool lxcapi_create(struct lxc_container *c, const char *t,
                goto free_tpath;
 
        /*
-        * either template or rootfs.path should be set.
         * if both template and rootfs.path are set, template is setup as rootfs.path.
         * container is already created if we have a config and rootfs.path is accessible
         */
-       if (!c->lxc_conf->rootfs.path && !tpath)
-               /* no template passed in and rootfs does not exist: error */
+       if (!c->lxc_conf->rootfs.path && !tpath) {
+               /* no template passed in and rootfs does not exist */
+               if (!c->save_config(c, NULL)) {
+                       ERROR("failed to save starting configuration for %s\n", c->name);
+                       goto out;
+               }
+               ret = true;
                goto out;
+       }
        if (c->lxc_conf->rootfs.path && access(c->lxc_conf->rootfs.path, F_OK) != 0)
                /* rootfs passed into configuration, but does not exist: error */
                goto out;