prologin.netboot.netboot module

Netboot HTTP server, getting data from MDB and serving iPXE config chunks.

This is required mostly because 1. we don’t want mdb to have iPXE related things (shouldn’t bring specifics into a generic server); 2. iPXE scripting is not expressive enough to be able to query MDB and then store the results in a variable.

class prologin.netboot.netboot.BootHandler(application, request, **kwargs)

Bases: tornado.web.RequestHandler

Send the initrd and kernel urls to registered machines.

get(mac)
class prologin.netboot.netboot.BootstrapHandler(application, request, **kwargs)

Bases: tornado.web.RequestHandler

Send the base IPXE script with switches names for LLDP.

This is the expected format (sw_name_X is the corresponding switch chassis ID):

set sw_name_0 02:99:71:f6:c6:5a set sw_rfs_0 0 set sw_hfs_0 0 set sw_room_0 pasteur

set sw_name_1 02:99:71:f6:c6:5b set sw_rfs_1 1 set sw_hfs_1 1 set sw_room_1 alt

get()
class prologin.netboot.netboot.RegisterHandler(application, request, **kwargs)

Bases: tornado.web.RequestHandler

Register an alien machine in mdb.

get()