install process: refactor install scripts

Issue #64 new
Rémi Audebert created an issue

Currently there are multiple install scripts:

  • rfs/install.sh
  • rfs/rfs.sh
  • rfs/init.sh
  • bootstrap/install_gw.sh
  • bootstrap/install_misc.sh

This situation is hard to maintain: what each script does and how to use them is not obvious.

Most scripts have tightly coupled the hardware setup (disk partitioning, LVM, RAID, bootloader, etc.) and software configuration steps. If theses tasks were split up we could install services in containers instead of the slow virtual machines. Doing so would help us in the continuous integration of sadm (see #63).

There are two subtasks:

  • refactor the install process to avoid code duplication
  • split hardware and software configuration to enable installing sadm in a container

Here is a tool that may give us ideas on how to achieve that in a simple way: https://github.com/rhinstaller/pykickstart/blob/master/docs/kickstart-docs.rst

Comments (4)

  1. Antoine Pietri

    Idea: an HTTP server that generates installation scripts from fragments and config options. When you want to install a machine, you could do for instance: curl http://bootstrap/rfs?raid=false and your install script would be generated inside.

  2. Log in to comment