Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 4 Sep 2001 00:26:39 -0600
From:      Chad David <davidc@acns.ab.ca>
To:        freebsd-hackers@freebsd.org
Subject:   System build script
Message-ID:  <20010904002639.A19206@colnta.acns.ab.ca>

next in thread | raw e-mail | index | archive | help
I've written a script that handles the complete updating of an
existing system from a cvsup through to reboot, and I thought I would
check and see if anybody else was interested enough for me to make
it public (maybe as a port).

I also updated mergemaster to read from a config file so that it can
run completely unattended.  Since I almost never bother with the diffs
from mergemaster, and either install the file or delete it, I just
created a config that says which files to copy, and which to leave
alone.

To give you an idea of the the script does, here is the help:

colnta.acns.ab.ca->rebuild -h
Usage: rebuild [-bcehikmpvwC]
-b reboot when complete
-c run cvsup
-e install kernel
-h this help message
-i install world
-k build kernel
-m run mergemaster
-p print the config settings
-v run verbose (print status to stdout)
-w build world
-C /path -- path for config file

and the currently configurable parameters:

whisper.acns.ab.ca->rebuild -bceikmwp
rebuild 1.0 printing config
VERBOSE yes
PAGER /usr/bin/false
DO_MERGEMASTER yes
MERGEMASTER_ARGS -A -X -C/mnt1/devel/work/dev/rebuild/etc/mergemaster_auto.conf
DO_CVSUP yes
CVSUP_CONFIG /mnt1/devel/work/dev/rebuild/etc/cvsup.config
CVSUP_ARGS -g -L2
MACHINE_ARCH i386
KERNCONF WHISPER
DO_BACKUP_ETC yes
TAR_ARGS -zcf
ETC_BACKUP_FILE /tmp/rebuild_etc_backup.tgz
DO_BUILD_WORLD yes
BUILD_WORLD_MAKE_ARGS -j2
DO_INSTALL_WORLD yes
INSTALL_WORLD_MAKE_ARGS
DO_BUILD_KERNEL yes
BUILD_KERNEL_MAKE_ARGS -j2
DO_INSTALL_KERNEL yes
INSTALL_KERNEL_MAKE_ARGS
DO_REBOOT yes

The mergemaster config that I am using is a follows:

ignore://etc/crontab/
ignore://etc/inetd.conf/
ignore://etc/motd/
ignore://etc/sysctl.conf/
ignore://etc/passwd/
ignore://etc/master.passwd/
ignore://etc/group/
ignore://etc/mail/sendmail.cf/
ignore://namedb/named.conf/
delete://etc/mail/mailertable.sample/
delete://etc/mail/virtusertable.sample/
delete://etc/mail/access.sample/
delete://etc/mail/freebsd.cf/

and I added the following arguments to mergemaster:
-A Process files automatically from the mergemaster auto config file
-C /path/auto_config_file  Specify location of auto config file to use
-X In the case of -A set the default to install.  Normally the default is ignore

If anybody cares I'd be happy to make the script source and the 
mergemaster patch available.

-- 
Chad David        davidc@acns.ab.ca
ACNS Inc.         Calgary, Alberta Canada
I applied the patch twice, and it still doesn't work!

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20010904002639.A19206>