From 287edf574daccfc1cac030d28f7bf6ac841c2783 Mon Sep 17 00:00:00 2001 From: Michal Hrusecky Date: Thu, 9 Jun 2016 09:42:15 +0200 Subject: [PATCH] luci-app-lxc: Use correct path for configuration Adjusting LuCI app for LXC to try to read path to your LXC containers from configuration file and if not succeeding falling back to /srv/lxc to match previous commit. Signed-off-by: Michal Hrusecky --- utils/luci-app-lxc/files/controller/lxc.lua | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/utils/luci-app-lxc/files/controller/lxc.lua b/utils/luci-app-lxc/files/controller/lxc.lua index f3f5d07ba..de4fa9ff5 100644 --- a/utils/luci-app-lxc/files/controller/lxc.lua +++ b/utils/luci-app-lxc/files/controller/lxc.lua @@ -93,10 +93,22 @@ function lxc_action(lxc_action, lxc_name) luci.http.write_json(ec and {} or data) end +function lxc_get_config_path() + local f = io.open("/etc/lxc/lxc.conf", "r") + local content = f:read("*all") + f:close() + local ret = content:match('^%s*lxc.lxcpath%s*=%s*([^%s]*)') + if ret then + return ret .. "/" + else + return "/srv/lxc/" + end +end + function lxc_configuration_get(lxc_name) luci.http.prepare_content("text/plain") - local f = io.open("/lxc/" .. lxc_name .. "/config", "r") + local f = io.open(lxc_get_config_path() .. lxc_name .. "/config", "r") local content = f:read("*all") f:close() @@ -112,7 +124,7 @@ function lxc_configuration_set(lxc_name) return luci.http.write("1") end - local f, err = io.open("/lxc/" .. lxc_name .. "/config","w+") + local f, err = io.open(lxc_get_config_path() .. lxc_name .. "/config","w+") if not f then return luci.http.write("2") end