Version 3 (modified by bruno, 12 years ago) (diff)


Welcome to Project-Builder Wiki

Design Ideas around the project

Since 2005 that I took over the maintenance of the project, I have passed time developing code on the periphery of the project to allow me to easily build packages from Subversion, deliver them, manage them, ...

I met a lot of Open Source project which are suffering from the same barrier for their adoption as mondo suffered in the past: without native packaging for your distribution you have much less people testing your software, trying it, less chance to be integrated in distributions, ...

Then I wanted to also work on another project called [] which uses the great [LinuxCOE]. However that LinuxCOE project had exactly the same issue as previously mentioned, no packaging, on install from CVS, so smaller community. And in order for me to put something on a prouction server, I want it packaged :-)

So I decided it could be a good idea to reuse the scripts made for mondo to package LinuxCOE. However, they were too specific, even if the ideas could be reused (that was my 3rd generation of build scripts, so ideas were more advanced than the code).

This web page has been written following multiple discussions around these topics with J. Vance, B. Gartner, L. Mayes, G. Renaud, L. Bouchard and many others.

Technical ideas around a project

  • use a standard protocol such as HTTP, and apache+wget to allow communication between the machine deployed and and deployment server. This would be the prefered way of exchanging informations (hw inventory typically)
  • mindi (minimal boot environement) could be used on the machine deployed at first run, through media or PXE. Or it could also be launched on an already deployed server.
  • mindi could also integrate other required components such as lshw, ssst tools, or other manufacturer tools based on a future set of configuration files provided in mindi 2.x
  • the inventory is stored in the server DB (standalone RDBMS, or integrated in another tool) and will be maintained as oprations are made on the machine, as well as some status.
  • following reboot of the server will trigger the installtion planned (deployment through LinuxCOE or image deployment with mondo)
  • Full support of proliant hardware (ILO - Raid - Firmware updates)
  • For security reason most of the scripts run as dploy user (not root)

Interface functions

  • list of servers (automatic addition of PXE based servers, manual addition for others)
  • assigning a task to a machine/group of machines
  • (proliant) manage already discovered servers (power on, off... ILO functions)
  • delete servers to restart discovery / installation
  • group servers to apply the same job to multiple servers
  • (proliant) firmware update
  • (proliant) link to admin page (2381)
  • link to webmin page (10000)
  • (proliant) link to ACU (started on demand before launching the interface)
  • launch any commands thru SSH (password or public key protected)
  • launch an imaging job

Proposed Requirements

  • Perl
  • Perl DBI
  • dhcpd
  • MySQL, PostgreSQL or file
  • Perl CGI or TT
  • tftpd
  • pxelinux

Concerning trac

For a complete list of local wiki pages, see TitleIndex.

Trac is brought to you by Edgewall Software, providing professional Linux and software development services to clients worldwide. Visit for more information.