s4
annotate s4-start.sh @ 86:518e3afcb230
add examples/form-text+img/form/memo.def
author | HIROSE Yuuji <yuuji@gentei.org> |
---|---|
date | Mon, 03 Aug 2015 14:11:53 +0900 |
parents | 465447d8b3ab |
children | 573f0d54eb5c |
rev | line source |
---|---|
yuuji@82 | 1 #!/bin/sh |
yuuji@82 | 2 # 愛 |
yuuji@82 | 3 # Start s4 - Generate s4.cgi |
yuuji@82 | 4 mydir=`dirname $0` |
yuuji@82 | 5 myname=`basename $0` |
yuuji@82 | 6 |
yuuji@82 | 7 script_dir=${SCRIPT_DIR:-scripts} |
yuuji@82 | 8 |
yuuji@86 | 9 ADMIN="" |
yuuji@86 | 10 TYPE="form1" |
yuuji@82 | 11 ex=examples |
yuuji@82 | 12 |
yuuji@82 | 13 usage() { |
yuuji@82 | 14 cat<<EOF |
yuuji@82 | 15 $myname `sed -n 3p $0` |
yuuji@82 | 16 Usage: $myname [Options] |
yuuji@82 | 17 Options are as follows: |
yuuji@82 | 18 -h Show this help |
yuuji@82 | 19 -a ADM Set ADMIN email address to ADM |
yuuji@82 | 20 -f Force overwriting |
yuuji@86 | 21 -t TYPE Construction type (defaults to $TYPE) |
yuuji@82 | 22 |
yuuji@82 | 23 TYPEs are one of directory names in examples except \`common'. |
yuuji@82 | 24 EOF |
yuuji@82 | 25 exit 0 |
yuuji@82 | 26 } |
yuuji@85 | 27 while getopts a:fht: f; do |
yuuji@82 | 28 case $f in |
yuuji@86 | 29 a) ADMIN=$OPTARG;; |
yuuji@82 | 30 f) force=1;; |
yuuji@86 | 31 t) TYPE=$OPTARG;; |
yuuji@82 | 32 \?|h) usage; exit 1;; |
yuuji@82 | 33 esac |
yuuji@82 | 34 done |
yuuji@82 | 35 shift $(expr $OPTIND - 1) |
yuuji@82 | 36 |
yuuji@86 | 37 if [ ! -d $ex/$TYPE ]; then |
yuuji@82 | 38 cat<<EOF 1>&2 |
yuuji@86 | 39 Invalid type($TYPE). |
yuuji@82 | 40 Types are one of as follows. |
yuuji@82 | 41 `ls $ex|grep -v common | sed 's/^/ /'` |
yuuji@82 | 42 EOF |
yuuji@82 | 43 exit 1 |
yuuji@82 | 44 fi |
yuuji@82 | 45 |
yuuji@86 | 46 if [ -z "$ADMIN" ]; then |
yuuji@82 | 47 cat<<EOF 1>&2 |
yuuji@82 | 48 Administrator's email not specified. |
yuuji@82 | 49 Please feed administrator email with \`-a' option. |
yuuji@82 | 50 EOF |
yuuji@82 | 51 exit 1 |
yuuji@82 | 52 fi |
yuuji@82 | 53 |
yuuji@82 | 54 if ! cd $mydir; then |
yuuji@82 | 55 echo "Script(s4-funcs.sh) not found in \`$mydir'." 1>&2 |
yuuji@82 | 56 exit 1 |
yuuji@82 | 57 fi |
yuuji@82 | 58 |
yuuji@82 | 59 . ./s4-funcs.sh || exit 2 |
yuuji@86 | 60 if ! checkdomain $ADMIN; then |
yuuji@82 | 61 cat<<EOF 1>&2 |
yuuji@86 | 62 Administrator's email - $ADMIN - is invalid(host not found). |
yuuji@82 | 63 Please specify existing email address. |
yuuji@82 | 64 EOF |
yuuji@82 | 65 exit 3 |
yuuji@82 | 66 fi |
yuuji@82 | 67 |
yuuji@82 | 68 if [ -d templ/form ]; then |
yuuji@82 | 69 if [ -z "$force" ]; then |
yuuji@82 | 70 echo "templ/ directory already exists. Remove it, then try again." 1>&2 |
yuuji@82 | 71 exit 4 |
yuuji@82 | 72 fi |
yuuji@82 | 73 rm -rf templ/* |
yuuji@82 | 74 fi |
yuuji@82 | 75 mkdir templ |
yuuji@82 | 76 if (cd templ && ln -s ../examples/$type/* .); then |
yuuji@82 | 77 if ./s4-init.sh; then |
yuuji@82 | 78 cat<<EOF |
yuuji@82 | 79 -------- The s4 System Successfully Installed -------- |
yuuji@82 | 80 EOF |
yuuji@86 | 81 echo "ADMIN=$ADMIN" >> s4-config.sh && rc=0 |
yuuji@82 | 82 else |
yuuji@82 | 83 echo Calling s4-init.sh 'FAILED!!' |
yuuji@82 | 84 fi |
yuuji@82 | 85 else |
yuuji@82 | 86 echo Failed |
yuuji@82 | 87 fi 1>&2 |
yuuji@82 | 88 |
yuuji@82 | 89 exit ${rc:-5} |