(file) Return to gen_init.csh CVS log (file) (dir) Up to [Development] / JSOC

File: [Development] / JSOC / Attic / gen_init.csh (download) / (as text)
Revision: 1.29, Wed Aug 22 16:37:50 2012 UTC (10 years, 9 months ago) by arta
Branch: MAIN
CVS Tags: Ver_DRMSLATEST, NetDRMS_Ver_LATEST, NetDRMS_Ver_8-1, NetDRMS_Ver_8-0, NetDRMS_Ver_7-1, NetDRMS_Ver_7-0, NetDRMS_Ver_6-4
Changes since 1.28: +4 -6 lines
Dont use 3 as a default for SUMS_MULTIPLE_PARTNSETS. Also, dont require this parameter.

#!/bin/csh -f
# script to generate NetDRMS initialization task script

set LOCALINF = ./config.local
if (!(-e $LOCALINF)) then
  set WWW = http://jsoc.stanford.edu/netdrms
  echo "Error: local configuration file $LOCALINF not found"
  echo "You may create one from the template at:"
  echo "	$WWW/setup.html"
  exit
endif

# parse the local config file

set LOCAL_CONFIG_SET = `egrep "^LOCAL_CONFIG_SET" $LOCALINF | awk '{print $2}'`
set DBSERVER_HOST = `egrep "^DBSERVER_HOST" $LOCALINF | awk '{print $2}'`
set DRMS_DATABASE = `egrep "^DRMS_DATABASE" $LOCALINF | awk '{print $2}'`
set DRMS_DBPORT = `egrep "^DRMS_DBPORT" $LOCALINF | awk '{print $2}'`
set DRMS_SITE_CODE = `egrep "^DRMS_SITE_CODE" $LOCALINF | awk '{print $2}'`
set DRMS_SAMPLE_NAMESPACE = `egrep "^DRMS_SAMPLE_NAMESPACE" $LOCALINF | awk '{print $2}'`
set POSTGRES_ADMIN = `egrep "^POSTGRES_ADMIN" $LOCALINF | awk '{print $2}'`
set SLONY_ADMIN = `egrep "^SLONY_ADMIN" $LOCALINF | awk '{print $2}'`
set SLONY_LOG_BASEDIR = `egrep "^SLONY_LOG_BASEDIR" $LOCALINF | awk '{print $2}'`
set SLONY_NOTIFY = `egrep "^SLONY_NOTIFY" $LOCALINF | awk '{print $2}'`
set SUMS_SERVER_HOST = `egrep "^SUMS_SERVER_HOST" $LOCALINF | awk '{print $2}'`
set SUMS_DBPORT = `egrep "^SUMS_DBPORT" $LOCALINF | awk '{print $2}'`
set SUM_NUMSUM = `egrep "^SUM_NUMSUM" $LOCALINF | awk '{print $2}'`
set SUM_MAXNUMSUM = `egrep "^SUM_MAXNUMSUM" $LOCALINF | awk '{print $2}'`
set SUMS_LOG_BASEDIR = `egrep "^SUMS_LOG_BASEDIR" $LOCALINF | awk '{print $2}'`
set SUMS_BIN_BASEDIR = `egrep "^SUMS_BIN_BASEDIR" $LOCALINF | awk '{print $2}'`
set SUMS_MANAGER = `egrep "^SUMS_MANAGER" $LOCALINF | awk '{print $2}'`
set SUMS_GROUP = `egrep "^SUMS_GROUP" $LOCALINF | awk '{print $2}'`
set SUMS_TAPE_AVAILABLE = `egrep "^SUMS_TAPE_AVAILABLE" $LOCALINF | awk '{print $2}'`
set SUMS_MULTIPLE_PARTNSETS = `egrep "^SUMS_MULTIPLE_PARTNSETS" $LOCALINF | awk '{print $2}'`
set AUTOSELCOMP = `egrep "^AUTOSELCOMP" $LOCALINF | awk '{print $2}'`
set SUMEXP_METHFMT = `perl -n -e 'if ($_ =~ /^SUMEXP_METHFMT\s+(.+)/) { print $1; }' $LOCALINF`
set SUMEXP_USERFMT = `perl -n -e 'if ($_ =~ /^SUMEXP_USERFMT\s+(.+)/) { print $1; }' $LOCALINF`
set SUMEXP_HOSTFMT = `perl -n -e 'if ($_ =~ /^SUMEXP_HOSTFMT\s+(.+)/) { print $1; }' $LOCALINF`
set SUMEXP_PORTFMT = `perl -n -e 'if ($_ =~ /^SUMEXP_PORTFMT\s+(.+)/) { print $1; }' $LOCALINF`
set PRODUSER_DBHOST = `perl -n -e 'if ($_ =~ /^PRODUSER_DBHOST\s+(.+)/) { print $1; }' $LOCALINF`
set PRODUSER_DBNAME = `perl -n -e 'if ($_ =~ /^PRODUSER_DBNAME\s+(.+)/) { print $1; }' $LOCALINF`
set PRODUSER_PRODTAB = `perl -n -e 'if ($_ =~ /^PRODUSER_PRODTAB\s+(.+)/) { print $1; }' $LOCALINF`
set PRODUSER_COLUSER = `perl -n -e 'if ($_ =~ /^PRODUSER_COLUSER\s+(.+)/) { print $1; }' $LOCALINF`

# check that local config file has been edited appropriately
if ($#LOCAL_CONFIG_SET == 1) then
  if ($LOCAL_CONFIG_SET =~ "NO") then
    echo "Error: local configuration file $LOCALINF must be edited"
    echo "  After editing the file appropriately, rerun this script ($0)"
    exit
  endif
endif

@ ADMIN_STATUS = 0
if ($#DBSERVER_HOST != 1) then
  echo "Error: DBSERVER_HOST undefined in local configuration file $LOCALINF"
  exit
endif
if ($#DRMS_DATABASE != 1) then
  echo "Error: DRMS_DATABASE undefined in local configuration file $LOCALINF"
  exit
endif
if ($#DRMS_DBPORT != 1) then
  echo "Warning: DRMS_DBPORT undefined in local configuration file $LOCALINF"
  set DRMS_DBPORT = 5432
  echo "         using default value $DRMS_DBPORT"
endif
if ($#SUM_NUMSUM != 1) then
  echo "Warning: SUM_NUMSUM undefined in local configuration file $LOCALINF"
  set SUM_NUMSUM = 3
  echo "         using default value $SUM_NUMSUM"
endif
if ($#SUM_MAXNUMSUM != 1) then
  echo "Warning: SUM_MAXNUMSUM undefined in local configuration file $LOCALINF"
  set SUM_MAXNUMSUM = 8
  echo "         using default value $SUM_MAXNUMSUM"
endif
if ($#DRMS_SITE_CODE != 1) then
  echo "Error: DRMS_SITE_CODE undefined in local configuration file $LOCALINF"
  exit
endif
if ($#DRMS_SAMPLE_NAMESPACE != 1) then
  echo "Warning: DRMS_SAMPLE_NAMESPACE undefined in local configuration file $LOCALINF"
  @ ADMIN_STATUS = 1
endif
if ($#POSTGRES_ADMIN != 1) then
  echo "Error: POSTGRES_ADMIN undefined in local configuration file $LOCALINF"
  exit
endif
if ($#SLONY_ADMIN != 1) then
  echo "Warning: SLONY_ADMIN undefined in local configuration file $LOCALINF"
  @ ADMIN_STATUS = 1
endif
if ($#SLONY_LOG_BASEDIR != 1) then
  echo "Warning: $SLONY_LOG_BASEDIR undefined in local configuration file $LOCALINF"
  @ ADMIN_STATUS = 1
endif
if ($#SLONY_NOTIFY != 1) then
  echo "Warning: SLONY_NOTIFY undefined in local configuration file $LOCALINF"
  @ ADMIN_STATUS = 1
endif
if ($#SUMS_SERVER_HOST != 1) then
  echo "Error: $SUMS_SERVER_HOST undefined in local configuration file $LOCALINF"
  exit
endif
if ($#SUMS_LOG_BASEDIR != 1) then
  echo "Error: $SUMS_LOG_BASEDIR undefined in local configuration file $LOCALINF"
  exit
endif
if ($#SUMS_BIN_BASEDIR != 1) then
  echo "Error: $SUMS_BIN_BASEDIR undefined in local configuration file $LOCALINF"
  exit
endif
if ($#SUMS_MANAGER != 1) then
  echo "Error: SUMS_MANAGER undefined in local configuration file $LOCALINF"
  exit
endif
if ($#SUMS_GROUP != 1) then
  echo "Error: SUMS_GROUP undefined in local configuration file $LOCALINF"
  exit
endif
if ($#SUMS_TAPE_AVAILABLE != 1) then
  echo "Error: SUMS_TAPE_AVAILABLE undefined in local configuration file $LOCALINF"
  exit
endif
if ($#AUTOSELCOMP != 1) then
  echo "Error: AUTOSELCOMP undefined in local configuration file $LOCALINF"
  exit
endif
if ($#SUMS_DBPORT != 1) then
  echo "Warning: SUMS_DBPORT undefined in local configuration file $LOCALINF"
  set SUMS_DBPORT = 5434
  echo "         using default value $SUMS_DBPORT"
endif


# generate script create_sumindex.sql
set SCRIPT = scripts/create_sumindex.sql
echo "*** generating $SCRIPT ***"
cc -o seed_sums seed_sums.c
if (-x ./seed_sums) then
  ./seed_sums $DRMS_SITE_CODE > $SCRIPT
  rm seed_sums
else
  echo "Error creating script"
  echo "  compile the seed_sums.c program and run it with $DRMS_SITE_CODE as the argument"
endif

@ SUMS_TAPE_AVAIL = $SUMS_TAPE_AVAILABLE

# find UID of SUMS_MANAGER
cc -o getuid getuid.c
if (-x ./getuid) then
  @ SUMS_MANAGER_UID = `./getuid $SUMS_MANAGER`
  rm getuid
  if ($SUMS_MANAGER_UID < 0) then
    echo "Error: no such user $SUMS_MANAGER"
    echo "  Either create the account or modify $LOCALINF"
    exit
  endif
else
  echo "Error: unable to generate getuid program"
  echo "  You must edit the file $SCRIPT to add the line"
  echo '#define SUMS_MANAGER_UID'"        \(uid\)"
  echo "  where uid is the uid of the $SUMS_MANAGER user"
endif

# generate file localization.h
set SCRIPT = base/include/localization.h
echo '#define SERVER			"'$DBSERVER_HOST'"' >> $SCRIPT
echo '#define DBNAME			"'$DRMS_DATABASE'"' >> $SCRIPT
echo '#define DRMSPGPORT		"'$DRMS_DBPORT'"' >> $SCRIPT
echo '#define SUM_NUMSUM		'$SUM_NUMSUM >> $SCRIPT
echo '#define SUM_MAXNUMSUM		'$SUM_MAXNUMSUM >> $SCRIPT
echo '#define DRMS_LOCAL_SITE_CODE	'$DRMS_SITE_CODE >> $SCRIPT
echo '#define POSTGRES_ADMIN		"'$POSTGRES_ADMIN'"' >> $SCRIPT
echo '#define USER			NULL' >> $SCRIPT
echo '#define PASSWD			NULL' >> $SCRIPT
echo '#define SUMSERVER		"'$SUMS_SERVER_HOST'"' >> $SCRIPT
echo '#define SUMPGPORT		"'$SUMS_DBPORT'"' >> $SCRIPT
echo '#define SUMS_MANAGER		"'$SUMS_MANAGER'"' >> $SCRIPT
echo '#define SUMS_MANAGER_UID		"'$SUMS_MANAGER_UID'"' >> $SCRIPT
echo '#define SUMS_GROUP		"'$SUMS_GROUP'"' >> $SCRIPT
echo '#define SUMLOG_BASEDIR		"'$SUMS_LOG_BASEDIR'"' >> $SCRIPT
echo '#define SUMBIN_BASEDIR		"'$SUMS_BIN_BASEDIR'"' >> $SCRIPT
echo '#define SUMS_TAPE_AVAILABLE    '\($SUMS_TAPE_AVAIL\)'' >> $SCRIPT

if ($#SUMS_MULTIPLE_PARTNSETS) then
  echo '#define SUMS_MULTIPLE_PARTNSETS		'$SUMS_MULTIPLE_PARTNSETS >> $SCRIPT
endif

echo '#define AUTOSELCOMP               '$AUTOSELCOMP >> $SCRIPT
if ($#SUMEXP_METHFMT) then 
  echo '#define LOC_SUMEXP_METHFMT	'$SUMEXP_METHFMT >> $SCRIPT
endif
if ($#SUMEXP_USERFMT) then
  echo '#define LOC_SUMEXP_USERFMT	'$SUMEXP_USERFMT  >> $SCRIPT
endif
if ($#SUMEXP_HOSTFMT) then
  echo '#define LOC_SUMEXP_HOSTFMT	'$SUMEXP_HOSTFMT  >> $SCRIPT
endif
if ($#SUMEXP_PORTFMT) then
  echo '#define LOC_SUMEXP_PORTFMT	'$SUMEXP_PORTFMT  >> $SCRIPT
endif

if ($#PRODUSER_DBHOST) then
  echo '#define PRODUSER_DBHOST           "'$PRODUSER_DBHOST'"' >> $SCRIPT
endif
if ($#PRODUSER_DBHOST) then
  echo '#define PRODUSER_DBNAME           "'$PRODUSER_DBNAME'"' >> $SCRIPT
endif
if ($#PRODUSER_DBHOST) then
  echo '#define PRODUSER_PRODTAB          "'$PRODUSER_PRODTAB'"' >> $SCRIPT
endif
if ($#PRODUSER_DBHOST) then
  echo '#define PRODUSER_COLUSER          "'$PRODUSER_COLUSER'"' >> $SCRIPT
endif

# modify targets as appropriate in custom.mk
# don't do anything here that will modify custom.mk. Another script
# does that.

if ($ADMIN_STATUS) then
  echo
  echo "Some configuration parameters were missing from the config.local file"
  echo "  as described in warning messages above.  These are only needed for"
  echo "  SUMS or Slony administration; they are not needed for an ordinary build."
  echo "Check the file config.local.template for sample entries to put in your"
  echo "  config.local file."
endif

Karen Tian
Powered by
ViewCVS 0.9.4