We use modified CentOS installation media to automatically deploy server VMs. Most tasks are implemented as Makefile targets. Most configuration steps are defined in kickstart.cfg and explained in the comments there.
- clean: remove build directory
- prerequisites: check that all necessary software is installed
- inputiso: download upstream ISO if necessary
- config: copy configuration templates to config files
- test: build in Docker
- adjust the variables at the beginning of the Makefile
make config
to create your config, customize the files- place any scripts to be placed in
/root
in the installed system into thescripts
directory make
The following account is configured during installation:
- username: admin
- password: changeme
The password should be changed during the firstrun.sh run.
Once the installer has finished and rebooted into the system, login as admin, then:
sudo -i # become root
cd
# call your scripts
- If you cancelled a run, you can clean up with
make clean
. - The Git commit hash is inserted into the isolinux boot menu head line.
- Any output of the installation is written to
/root/*log
in the installed system.
- Red Hat Documentation on Kickstart
- "Testing Red Hat Enterprise Linux 7 and CentOS 7 (preview)": Useful blogpost with examples
- Building a custom CentOS 7 kickstart disc: was used to create the script