X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=plc.init;h=c3ae8f45f329fc7c88e3d78aeb65f53020460dc2;hb=facac6604dd7a4dd781fff92ebf6f9cc3315ac33;hp=309523e3371c23b7fa07cb6a5a0061330faccc71;hpb=b42be39ff01f53ace4b72726c27842a22739f6a3;p=myplc.git diff --git a/plc.init b/plc.init index 309523e..c3ae8f4 100755 --- a/plc.init +++ b/plc.init @@ -2,14 +2,13 @@ # # plc Manages all PLC services on this machine # -# chkconfig: 2345 5 99 +# chkconfig: 2345 60 40 # # description: Manages all PLC services on this machine # -# $Id$ -# # Source function library and configuration +# plc_reload is defined here . /etc/plc.d/functions # Verbosity @@ -34,10 +33,11 @@ verbose=0 # but that's maybe a good thing, that all is done at first start ### +# do not consider files that contain '.', '~' or 'functions' in the name steps=($( for step in /etc/plc.d/* ; do stepname=$(basename $step) - plainstepname=$(echo $stepname | sed -e 's,\.,,' -e 's,~,,') + plainstepname=$(echo $stepname | sed -e 's,\.,,' -e 's,~,,' -e 's,functions,,' ) if [ -f $step -a -x $step -a "$stepname" = "$plainstepname" ] ; then priority=$(sed -ne 's/# priority: \(.*\)/\1/p' $step) echo $priority $stepname @@ -46,46 +46,6 @@ done | sort -n | cut -d' ' -f2 )) nsteps=${#steps[@]} -# Regenerate configuration files -reload () -{ - force=$1 - - # Regenerate the main configuration file from default values - # overlaid with site-specific and current values. - # Thierry -- 2007-07-05 : values in plc_config.xml are *not* taken into account here - files=( - /etc/planetlab/default_config.xml - /etc/planetlab/configs/site.xml - ) - for file in "${files[@]}" ; do - if [ -n "$force" -o $file -nt /etc/planetlab/plc_config.xml ] ; then - tmp=$(mktemp /tmp/plc_config.xml.XXXXXX) - plc-config --xml "${files[@]}" >$tmp - if [ $? -eq 0 ] ; then - mv $tmp /etc/planetlab/plc_config.xml - chmod 444 /etc/planetlab/plc_config.xml - else - echo "PLC: Warning: Invalid configuration file(s) detected" - rm -f $tmp - fi - break - fi - done - - # Convert configuration to various formats - if [ -n "$force" -o /etc/planetlab/plc_config.xml -nt /etc/planetlab/plc_config ] ; then - plc-config --shell >/etc/planetlab/plc_config - fi - if [ -n "$force" -o /etc/planetlab/plc_config.xml -nt /etc/planetlab/plc_config.py ] ; then - plc-config --python >/etc/planetlab/plc_config.py - fi - if [ -n "$force" -o /etc/planetlab/plc_config.xml -nt /etc/planetlab/php/plc_config.php ] ; then - mkdir -p /etc/planetlab/php - plc-config --php >/etc/planetlab/php/plc_config.php - fi -} - usage() { echo "Usage: $0 [OPTION]... [COMMAND] [STEP]..." @@ -133,7 +93,7 @@ fi # Get command shift $(($OPTIND - 1)) if [ -z "$1" ] ; then - usage + usage >&3 fi command=$1 @@ -141,7 +101,7 @@ command=$1 shift 1 if [ -z "$1" ] ; then # Start or stop everything. Regenerate configuration first. - reload force + plc_reload force else # Start or stop a particular step steps=("$@") @@ -156,7 +116,7 @@ start () if [ -x /etc/plc.d/$step ] ; then /etc/plc.d/$step start # Steps may alter the configuration, may need to regenerate - reload + plc_reload else echo "PLC: $step: unrecognized step" >&4 exit 1 @@ -171,7 +131,7 @@ stop () if [ -x /etc/plc.d/$step ] ; then /etc/plc.d/$step stop # Steps may alter the configuration, may need to regenerate - reload + plc_reload else echo "PLC: $step: unrecognized step" >&4 exit 1 @@ -190,7 +150,7 @@ case "$command" in ;; reload) - reload force + plc_reload force ;; checkpoint)