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
|
|
|
7 |
# Version: 0.1
|
|
|
8 |
# $Id$
|
|
|
9 |
########################################################################################################################
|
|
|
10 |
# Constante
|
|
|
11 |
APPDIR=`dirname $0`;
|
1390 |
jpm |
12 |
APPDIR_ABSOLU=`pwd`;
|
1146 |
jpm |
13 |
NBREPARAM=$#
|
|
|
14 |
APPLI_NOM="Coel"
|
|
|
15 |
FICHIER_COMPILATION="$APPLI_NOM-compile"
|
|
|
16 |
DOSSIER_COMPILATION="$APPDIR/war"
|
|
|
17 |
DOSSIER_DESTINATION="/www/eflore/coel"
|
1390 |
jpm |
18 |
DOSSIER_JREST="$APPDIR/../jrest_$NOM_DOSSIER_COURANT"
|
1146 |
jpm |
19 |
DOSSIER_JREST_DESTINATION="/www/eflore/coel/jrest"
|
|
|
20 |
APPLI_SERVICE_BASE_URL="http://www.tela-botanica.org/eflore/coel/jrest/"
|
|
|
21 |
|
|
|
22 |
# Aide
|
|
|
23 |
E_OPTERR=65
|
|
|
24 |
if [ "$1" = '--help' ]
|
|
|
25 |
then # Le script a besoin d'au moins un argument sur la ligne de commande
|
|
|
26 |
echo "Usage $0 -[parameters -u, -p ]"
|
|
|
27 |
echo "Paramétres : "
|
|
|
28 |
echo " -h: indiquer l'hote ftp"
|
|
|
29 |
echo " -u: indiquer le nom de l'utilisateur ftp"
|
|
|
30 |
echo " -p: indiquer le mot de passe de l'utilisateur ftp"
|
|
|
31 |
exit $E_OPTERR
|
|
|
32 |
fi
|
|
|
33 |
|
|
|
34 |
# Récupération des paramètres et des options de la ligne de commande
|
|
|
35 |
TEMP=`getopt -o u:p:h: -l help: -- "$@"`
|
|
|
36 |
if [ $? != 0 ] ; then echo "Terminating..." >&2 ; exit 1 ; fi
|
|
|
37 |
eval set -- "$TEMP"
|
|
|
38 |
while [ ! -z "$1" ] ; do
|
|
|
39 |
#echo $1" # "$2
|
|
|
40 |
case "$1" in
|
|
|
41 |
-h) HOST=$2;;
|
|
|
42 |
-u) FTP_USER=$2;;
|
|
|
43 |
-p) FTP_PASSWD=$2;;
|
|
|
44 |
--) shift ; break ;;
|
|
|
45 |
*) echo "Internal error!" ; exit 1 ;;
|
|
|
46 |
esac
|
|
|
47 |
shift 2
|
|
|
48 |
done
|
|
|
49 |
|
|
|
50 |
# Nous devons être dans le dossier de ce script pour que tout fonctionne
|
|
|
51 |
echo "Vérification que tout est en place pour la mise en ligne : ";
|
|
|
52 |
if [ -d $DOSSIER_COMPILATION ]; then
|
|
|
53 |
echo "OK : dossier de compilation '$DOSSIER_COMPILATION' existe";
|
|
|
54 |
else
|
|
|
55 |
echo "KO : dossier de compilation '$DOSSIER_COMPILATION' inexistant!";
|
|
|
56 |
fi;
|
|
|
57 |
if [ -f ./$FICHIER_COMPILATION ]; then
|
|
|
58 |
echo "OK : fichier de compilation $FICHIER_COMPILATION existe";
|
|
|
59 |
else
|
|
|
60 |
echo "KO : fichier de compilation $FICHIER_COMPILATION inexistant!";
|
|
|
61 |
fi;
|
|
|
62 |
|
1390 |
jpm |
63 |
# Transfert sur le serveur par FTP
|
1146 |
jpm |
64 |
if [ $NBREPARAM -eq 0 ]; then
|
|
|
65 |
echo "Pas de transfert sur le serveur. Utiliser --help pour voir les options de transfert."
|
|
|
66 |
else
|
1152 |
jpm |
67 |
echo "Compilation de l'application : ";
|
1184 |
jpm |
68 |
./$FICHIER_COMPILATION
|
1152 |
jpm |
69 |
|
|
|
70 |
echo "Transfert sur le serveur de l'application :";
|
1153 |
jpm |
71 |
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 |
72 |
|
|
|
73 |
echo "Transfert sur le serveur de Jrest :";
|
1146 |
jpm |
74 |
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 |
75 |
fi;
|