[lxc-devel] [PATCH 1/1] confile: support 'lxc.include' option to include other config files

Serge Hallyn serge.hallyn at canonical.com
Thu Aug 9 23:09:45 UTC 2012


For instance

lxc.include = /var/lib/lxc/commonopts

in /var/lib/lxc/q1/config would cause the configuration in
/var/lib/lxc/commonopts to be loaded when container q1 starts.

Signed-off-by: Serge Hallyn <serge.hallyn at ubuntu.com>
---
 src/lxc/confile.c |    8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/src/lxc/confile.c b/src/lxc/confile.c
index 67cf821..daf9bbf 100644
--- a/src/lxc/confile.c
+++ b/src/lxc/confile.c
@@ -76,6 +76,7 @@ static int config_network_ipv6_gateway(const char *, char *, struct lxc_conf *);
 static int config_cap_drop(const char *, char *, struct lxc_conf *);
 static int config_console(const char *, char *, struct lxc_conf *);
 static int config_seccomp(const char *, char *, struct lxc_conf *);
+static int config_includefile(const char *, char *, struct lxc_conf *);
 
 typedef int (*config_cb)(const char *, char *, struct lxc_conf *);
 
@@ -120,6 +121,7 @@ static struct config config[] = {
 	{ "lxc.cap.drop",             config_cap_drop             },
 	{ "lxc.console",              config_console              },
 	{ "lxc.seccomp",              config_seccomp              },
+	{ "lxc.include",              config_includefile          },
 };
 
 static const size_t config_size = sizeof(config)/sizeof(struct config);
@@ -893,6 +895,12 @@ static int config_console(const char *key, char *value,
 	return 0;
 }
 
+static int config_includefile(const char *key, char *value,
+			  struct lxc_conf *lxc_conf)
+{
+	return lxc_config_read(value, lxc_conf);
+}
+
 static int config_rootfs(const char *key, char *value, struct lxc_conf *lxc_conf)
 {
 	if (strlen(value) >= MAXPATHLEN) {
-- 
1.7.9.5





More information about the lxc-devel mailing list