From 31c90b72d55e9e0033845d119092d1c029d5191c Mon Sep 17 00:00:00 2001 From: Michael Tremer Date: Fri, 24 May 2013 19:18:30 +0200 Subject: [PATCH] BIO: Make this work for pxelinux. --- webapp/backend/netboot.py | 7 ++++--- webapp/handlers_boot.py | 10 +++++++++- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/webapp/backend/netboot.py b/webapp/backend/netboot.py index cd5b6b0..190ba27 100644 --- a/webapp/backend/netboot.py +++ b/webapp/backend/netboot.py @@ -46,19 +46,20 @@ class NetBoot(object): def get_menu(self, level=0): menu = [] - for m in self.db.query("SELECT * FROM boot_menu WHERE level = %d ORDER by level,prio" % level): + for m in self.db.query("SELECT * FROM boot_menu WHERE level = %s ORDER by level,prio", level): m = MenuEntry(m) if m.type == "header": m.submenu = self.get_menu(m.submenu_level) elif m.type == "config": - m._data.update(self.db.get("SELECT title, description FROM boot WHERE id = %s" % m.item)) + c = self.db.get("SELECT * FROM boot WHERE id = %s", m.item) + if c: + m._data.update(c) menu.append(m) return menu def get_config(self, id): - id = int(id) return self.db.get("SELECT * FROM boot WHERE id = %s", id) diff --git a/webapp/handlers_boot.py b/webapp/handlers_boot.py index 93e8d18..5220837 100644 --- a/webapp/handlers_boot.py +++ b/webapp/handlers_boot.py @@ -110,7 +110,15 @@ class MenuCfgHandler(BootBaseHandler): lines.append(ident + "\ttext help") lines.append(word_wrap(entry.description)) lines.append(ident + "\tendtext") - lines.append(ident + "\tkernel /config/%s/boot.gpxe" % entry.item) + + config = self.netboot.get_config(entry.item) + if not config: return "" + + lines.append(ident + "\tkernel %s" % config.image1) + if config.image2: + lines.append(ident + "\tinitrd %s" % config.image2) + if config.args: + lines.append(ident + "\tappend %s" % config.args) return "\n".join(lines + [""]) -- 2.39.2