Tue Jan 30 11:57:13 PST 2007
- Previous message: [Slony1-commit] slony1-engine/doc/adminguide defineset.sgml
- Next message: [Slony1-commit] slony1-engine/doc/adminguide adminscripts.sgml
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Update of /home/cvsd/slony1/slony1-engine/tools In directory main:/tmp/cvs-serv23162/tools Added Files: slon.in-profiles Log Message: Per Brian A. Seklecki, added to the tools directory a script for managing slon startup in conjunction with FreeBSD Ports. Also added some (brief) documentation to the adminscripts section of the admin guide. --- NEW FILE: slon.in-profiles --- #!/bin/sh # # $FreeBSD$ # Modified by Brian A. Seklecki <bseklecki at collaborativefusion.com> # <lavalamp at spiritual-machines.org> # $Id: slon.in-profiles,v 1.1 2007-01-30 19:57:11 cbbrowne Exp $ # # sed -e 's/%%PREFIX%%/\/usr\/local/g' < slon.in > slon # PROVIDE: slon # REQUIRE: postgresql # KEYWORD: shutdown . "/etc/rc.subr" name="slon" rcvar=`set_rcvar` load_rc_config "$name" _pidprefix="/var/run/${name}" pidfile="${_pidprefix}.pid" # Used as fall-through in event of no profiles # From global rc.conf(5); if unset, set them here [ -z "$slon_enable" ] && slon_enable="NO" [ -z "$slon_profiles" ] && slon_profiles="" configfile_path="/usr/local/etc/${name}.conf" command_args="-f ${configfile_path} -p ${pidfile} &" required_files="${configfile_path}" # Example: User has to define the following # $slon_enable=true # $slon_profiles="sex drugs unix" # $slon_unix_configfile="/path/to.conf" # $slon_sex_flags="-hawtte" command="/usr/local/bin/slon" isProfile() { match=0; for curMember in $slon_profiles; do if [ "$curMember" = "$1" ]; then echo "Match" match=1 fi done return $match; } if [ -n "$2" ]; then profile="$2" # A profile argument has been given (presumably) if [ "x${slon_profiles}" != "x" ]; then # This checks that profiles are indeed defined # Now let's check to make sure that both the profile, the profile's config path variable, config file exists pidfile="${_pidprefix}-${profile}.pid" configfile_varname="\$${name}_${profile}_configfile" # Basic string substitution gets variable name eval configfile_path="${configfile_varname}" isProfile $profile searchForProfile=$? # testing for true if [ -z "$configfile_varname" -o ! -r "$configfile_path" -o $searchForProfile -lt 1 ]; then echo "$0: no such profile defined, profile config file defined, or cant read profile config file!"; exit 1; fi required_files=${configfile_path} eval command_args="\$${name}_${profile}_flags" else echo "$0: extra profile argument ignored, no profiles defined" fi else # We get to here if $2 is not defined at command line, but we do have profiles # This block uses recursion to call ourself with each-profile defined as $2 if [ "x${slon_profiles}" != "x" -a "x$1" != "x" ]; then if [ "x$1" != "xrestart" ]; then for profile in ${slon_profiles}; do echo "===> ${name} profile: ${profile}" /usr/local/etc/rc.d/${name} $1 ${profile} retcode="$?" if [ "0${retcode}" -ne 0 ]; then failed="${profile} (${retcode}) ${failed:-}" else success="${profile} ${success:-}" fi done exit 0 else restart_precmd="" fi fi # else = no profile argument given fi run_rc_command "$1"
- Previous message: [Slony1-commit] slony1-engine/doc/adminguide defineset.sgml
- Next message: [Slony1-commit] slony1-engine/doc/adminguide adminscripts.sgml
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Slony1-commit mailing list