Merge pull request #31 from leebaok/bug-append-lxc.custom.conf-to-container.conf
[lxc.custom.conf] support lxc.custom.conf in appending mode
This commit is contained in:
commit
aed61947b0
|
@ -45,32 +45,41 @@ class Container(object):
|
|||
sys_run("mkdir -p /var/lib/lxc/%s" % lxc_name)
|
||||
logger.info("generate config file for %s" % lxc_name)
|
||||
|
||||
if os.path.exists(self.confpath+"/lxc.custom.conf"):
|
||||
conffile = open(self.confpath+"/lxc.custom.conf",'r')
|
||||
else:
|
||||
conffile = open(self.confpath+"/container.conf",'r')
|
||||
def config_prepare(content):
|
||||
content = content.replace("%ROOTFS%",rootfs)
|
||||
content = content.replace("%HOSTNAME%",hostname)
|
||||
content = content.replace("%IP%",ip)
|
||||
content = content.replace("%GATEWAY%",gateway)
|
||||
content = content.replace("%CONTAINER_MEMORY%",str(memory))
|
||||
content = content.replace("%CONTAINER_CPU%",str(cpu))
|
||||
content = content.replace("%FS_PREFIX%",self.fspath)
|
||||
content = content.replace("%USERNAME%",username)
|
||||
content = content.replace("%CLUSTERID%",str(clusterid))
|
||||
content = content.replace("%LXCSCRIPT%",env.getenv("LXC_SCRIPT"))
|
||||
content = content.replace("%LXCNAME%",lxc_name)
|
||||
content = content.replace("%VLANID%",str(vlanid))
|
||||
content = content.replace("%CLUSTERNAME%", clustername)
|
||||
content = content.replace("%VETHPAIR%", str(clusterid)+'-'+str(containerid))
|
||||
return content
|
||||
|
||||
conffile = open(self.confpath+"/container.conf", 'r')
|
||||
conftext = conffile.read()
|
||||
conffile.close()
|
||||
conftext = conftext.replace("%ROOTFS%",rootfs)
|
||||
conftext = conftext.replace("%HOSTNAME%",hostname)
|
||||
conftext = conftext.replace("%IP%",ip)
|
||||
conftext = conftext.replace("%GATEWAY%",gateway)
|
||||
conftext = conftext.replace("%CONTAINER_MEMORY%",str(memory))
|
||||
conftext = conftext.replace("%CONTAINER_CPU%",str(cpu))
|
||||
conftext = conftext.replace("%FS_PREFIX%",self.fspath)
|
||||
conftext = conftext.replace("%USERNAME%",username)
|
||||
conftext = conftext.replace("%CLUSTERID%",str(clusterid))
|
||||
conftext = conftext.replace("%LXCSCRIPT%",env.getenv("LXC_SCRIPT"))
|
||||
conftext = conftext.replace("%LXCNAME%",lxc_name)
|
||||
conftext = conftext.replace("%VLANID%",str(vlanid))
|
||||
conftext = conftext.replace("%CLUSTERNAME%", clustername)
|
||||
conftext = conftext.replace("%VETHPAIR%", str(clusterid)+'-'+str(containerid))
|
||||
conftext = config_prepare(conftext)
|
||||
|
||||
conffile = open("/var/lib/lxc/%s/config" % lxc_name,"w")
|
||||
conffile.write(conftext)
|
||||
conffile.close()
|
||||
|
||||
if os.path.isfile(self.confpath+"/lxc.custom.conf"):
|
||||
conffile = open(self.confpath+"/lxc.custom.conf", 'r')
|
||||
conftext = conffile.read()
|
||||
conffile.close()
|
||||
conftext = config_prepare(conftext)
|
||||
conffile = open("/var/lib/lxc/%s/config" % lxc_name, 'a')
|
||||
conffile.write(conftext)
|
||||
conffile.close()
|
||||
|
||||
#logger.debug(Ret.stdout.decode('utf-8'))
|
||||
logger.info("create container %s success" % lxc_name)
|
||||
|
||||
|
|
Loading…
Reference in New Issue