| 1146 | 
           jpm | 
           1 | 
           #!/bin/bash
  | 
        
        
            | 
            | 
           2 | 
           ########################################################################################################################
  | 
        
        
            | 
            | 
           3 | 
           # But : mise en ligne automatique sur le serveur par ftp, de la dernière version de COEL
  | 
        
        
            | 
            | 
           4 | 
           # Auteur :  Jean-Pascal Milcent <jpm@tela-botanica.org> (translate bat file to shell script)
  | 
        
        
            | 
            | 
           5 | 
           # License : GPL v3
  | 
        
        
            | 
            | 
           6 | 
           # Création : 11 janvier 2010
  | 
        
        
           | 1553 | 
           jpm | 
           7 | 
           # Version: 0.2
  | 
        
        
            | 
            | 
           8 | 
           # 2010-09-13 - Ajout de la création du nom de l'appli automatique.
  | 
        
        
           | 1146 | 
           jpm | 
           9 | 
           # $Id$
  | 
        
        
            | 
            | 
           10 | 
           ########################################################################################################################
  | 
        
        
            | 
            | 
           11 | 
           # Constante
  | 
        
        
           | 1553 | 
           jpm | 
           12 | 
           NBREPARAM=$#
  | 
        
        
           | 1146 | 
           jpm | 
           13 | 
           APPDIR=`dirname $0`;
  | 
        
        
           | 1417 | 
           jpm | 
           14 | 
           APPDIR_ABSOLU=`pwd`;
  | 
        
        
           | 1553 | 
           jpm | 
           15 | 
           APPLI_NOM=`basename $APPDIR_ABSOLU | sed 's/^./\u&/'`
  | 
        
        
            | 
            | 
           16 | 
           FICHIER_COMPILATION="$APPLI_NOM-compile-prod"
  | 
        
        
           | 1146 | 
           jpm | 
           17 | 
           DOSSIER_COMPILATION="$APPDIR/war"
  | 
        
        
            | 
            | 
           18 | 
           DOSSIER_DESTINATION="/www/eflore/coel"
  | 
        
        
           | 1500 | 
           jpm | 
           19 | 
           DOSSIER_JREST="$APPDIR/jrest"
  | 
        
        
           | 1146 | 
           jpm | 
           20 | 
           DOSSIER_JREST_DESTINATION="/www/eflore/coel/jrest"
  | 
        
        
            | 
            | 
           21 | 
           APPLI_SERVICE_BASE_URL="http://www.tela-botanica.org/eflore/coel/jrest/"
  | 
        
        
            | 
            | 
           22 | 
              | 
        
        
            | 
            | 
           23 | 
           # Aide
  | 
        
        
            | 
            | 
           24 | 
           E_OPTERR=65
  | 
        
        
            | 
            | 
           25 | 
           if [ "$1" = '--help' ]
  | 
        
        
            | 
            | 
           26 | 
           then # Le script a besoin d'au moins un argument sur la ligne de commande
  | 
        
        
            | 
            | 
           27 | 
           	echo "Usage $0 -[parameters -u, -p ]"
  | 
        
        
            | 
            | 
           28 | 
           	echo "Paramétres : "
  | 
        
        
            | 
            | 
           29 | 
           	echo "	-h: indiquer l'hote ftp"
  | 
        
        
            | 
            | 
           30 | 
           	echo "	-u: indiquer le nom de l'utilisateur ftp"
  | 
        
        
            | 
            | 
           31 | 
           	echo "	-p: indiquer le mot de passe de l'utilisateur ftp"
  | 
        
        
            | 
            | 
           32 | 
           	exit $E_OPTERR
  | 
        
        
            | 
            | 
           33 | 
           fi
  | 
        
        
            | 
            | 
           34 | 
              | 
        
        
            | 
            | 
           35 | 
           # Récupération des paramètres et des options de la ligne de commande
  | 
        
        
            | 
            | 
           36 | 
           TEMP=`getopt -o u:p:h: -l help: -- "$@"`
  | 
        
        
            | 
            | 
           37 | 
           if [ $? != 0 ] ; then echo "Terminating..." >&2 ; exit 1 ; fi
  | 
        
        
            | 
            | 
           38 | 
           eval set -- "$TEMP"
  | 
        
        
            | 
            | 
           39 | 
           while [ ! -z "$1" ] ; do
  | 
        
        
            | 
            | 
           40 | 
           	#echo $1" # "$2
  | 
        
        
            | 
            | 
           41 | 
           	case "$1" in
  | 
        
        
            | 
            | 
           42 | 
           		-h) HOST=$2;;
  | 
        
        
            | 
            | 
           43 | 
           		-u) FTP_USER=$2;;
  | 
        
        
            | 
            | 
           44 | 
           		-p) FTP_PASSWD=$2;;
  | 
        
        
            | 
            | 
           45 | 
           		--) shift ; break ;;
  | 
        
        
            | 
            | 
           46 | 
           		*) echo "Internal error!" ; exit 1 ;;
  | 
        
        
            | 
            | 
           47 | 
           	esac
  | 
        
        
            | 
            | 
           48 | 
           	shift 2
  | 
        
        
            | 
            | 
           49 | 
           done
  | 
        
        
            | 
            | 
           50 | 
              | 
        
        
            | 
            | 
           51 | 
           # Nous devons être dans le dossier de ce script pour que tout fonctionne
  | 
        
        
            | 
            | 
           52 | 
           echo "Vérification que tout est en place pour la mise en ligne : ";
  | 
        
        
            | 
            | 
           53 | 
           if [ -d $DOSSIER_COMPILATION ]; then
  | 
        
        
            | 
            | 
           54 | 
           	echo "OK : dossier de compilation '$DOSSIER_COMPILATION' existe";
  | 
        
        
            | 
            | 
           55 | 
           else
  | 
        
        
            | 
            | 
           56 | 
           	echo "KO : dossier de compilation '$DOSSIER_COMPILATION' inexistant!";
  | 
        
        
            | 
            | 
           57 | 
           fi;
  | 
        
        
            | 
            | 
           58 | 
           if [ -f ./$FICHIER_COMPILATION ]; then
  | 
        
        
            | 
            | 
           59 | 
           	echo "OK : fichier de compilation $FICHIER_COMPILATION existe";
  | 
        
        
            | 
            | 
           60 | 
           else
  | 
        
        
            | 
            | 
           61 | 
           	echo "KO : fichier de compilation $FICHIER_COMPILATION inexistant!";
  | 
        
        
            | 
            | 
           62 | 
           fi;
  | 
        
        
            | 
            | 
           63 | 
              | 
        
        
           | 1417 | 
           jpm | 
           64 | 
           # Transfert sur le serveur par FTP
  | 
        
        
           | 1146 | 
           jpm | 
           65 | 
           if [ $NBREPARAM -eq 0 ]; then
  | 
        
        
            | 
            | 
           66 | 
           	echo "Pas de transfert sur le serveur. Utiliser --help pour voir les options de transfert."
  | 
        
        
            | 
            | 
           67 | 
           else
  | 
        
        
           | 1152 | 
           jpm | 
           68 | 
           	echo "Compilation de l'application : ";
  | 
        
        
           | 1184 | 
           jpm | 
           69 | 
           	./$FICHIER_COMPILATION
  | 
        
        
           | 1152 | 
           jpm | 
           70 | 
              | 
        
        
            | 
            | 
           71 | 
           	echo "Transfert sur le serveur de l'application :";
  | 
        
        
           | 1153 | 
           jpm | 
           72 | 
           	lftp ftp://$FTP_USER:$FTP_PASSWD@$HOST -e "set ftp:passive off; mirror -e -R -L -x .svn -x WEB-INF -x .htaccess -x config.js -x jrest $DOSSIER_COMPILATION $DOSSIER_DESTINATION ; quit"
  | 
        
        
           | 1152 | 
           jpm | 
           73 | 
              | 
        
        
            | 
            | 
           74 | 
           	echo "Transfert sur le serveur de Jrest :";
  | 
        
        
           | 1146 | 
           jpm | 
           75 | 
           	lftp ftp://$FTP_USER:$FTP_PASSWD@$HOST -e "set ftp:passive off; mirror -e -R -x .svn -x jrest.ini.php -x .htaccess -x .project -x .buildpath -x .settings $DOSSIER_JREST $DOSSIER_JREST_DESTINATION ; quit"
  | 
        
        
           | 1152 | 
           jpm | 
           76 | 
           fi;
  |