Kickstart example with Puppet bootstrap

Below is a kickstart file that creates a minimalist CentOS install and bootstraps puppet.
I have the necessary Puppet packages in my own Yum repos as they do not appear in the official CentOS mirror.
A quick note about the way we have Puppet setup is a seperate Puppet environment per customer. More can be read about Puppet environments

Back to blog post

#/* vim: set expandtab tabstop=4 shiftwidth=4 softtabstop=4: */
#/* *
# * * @description @JeOS VE Kickstart for Centos 5.5 x86_64 ( 64bit ).
# * * @author      Mick Pollard 
# * * @copyright   2010 Mick Pollard
# * * @project      customer1
# * */
install
reboot
text
# points to your own yum mirror
url --url http://192.168.250.1/os/centos/5/os/x86_64
# add your own local yum repos for installing any self made RPMs
repo --name=local --baseurl=http://192.168.250.1/os/centos/5/local/x86_64/
lang en_AU.UTF-8
keyboard us
network --device eth0 --bootproto dhcp
# temp pass f00b4r
rootpw --iscrypted $1$iS4Hg/$BiMMaTCG.wLO/Xve2./iR.
firewall --disabled
authconfig --enableshadow --enablemd5
selinux --disabled 
timezone --utc Australia/Sydney
skipx
zerombr yes
bootloader --location=mbr
clearpart --all
part / --size=1024 --grow --fstype ext3

%packages

# install my local yum repos
local-5-5

# install minimal packages - configuration magement automation should do
# the rest
@base

# the following is run after the OS has finished installing
%post

chvt 3
echo "executing post install"
# setup what Puppet environment this client is part of
cat >/etc/sysconfig/puppet <