Subversion Repositories Applications.gtt

Rev

Rev 171 | Go to most recent revision | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
170 mathias 1
#!/bin/bash
2
 
171 mathias 3
# Installe GTT à partir du code en cours.
170 mathias 4
#
5
# Nécessite de remplir config.sh à partir de config.defaut.sh.
6
# Si un fichier "htaccess" est présent, il sera renommé en ".htaccess" dans le
7
#	dossier de destination de la nouvelle instance
8
#
9
# Utilisation :
171 mathias 10
#		./installgtt.sh [prefixe]
170 mathias 11
#
171 mathias 12
# Mathias - 2015-12-28
170 mathias 13
 
14
# ligne magique trouvee sur http://stackoverflow.com/questions/59895/can-a-bash-script-tell-what-directory-its-stored-in
15
SCRIPTDIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
16
 
17
SCRIPTNAME=`basename "$0"`
18
 
19
# date du jour
20
DATE=`date +%Y-%m-%d`
21
 
22
# chargement de la config
23
. "$SCRIPTDIR/config.sh"
24
 
25
function notice {
171 mathias 26
	echo "Utilisation: $SCRIPTNAME [prefixe]"
27
	echo "	prefixe (optionnel): prefixe les tables de GTT dans la base de donnees"
170 mathias 28
	echo "Exemples:"
171 mathias 29
	echo "	$SCRIPTNAME"
30
	echo "	$SCRIPTNAME gtt_2016_"
170 mathias 31
}
32
 
171 mathias 33
function install_gtt {
34
	PREFIXE="$1"
170 mathias 35
 
171 mathias 36
	echo "installation de GTT - prefixe: [$PREFIXE]"
170 mathias 37
 
38
	# copie du .htaccess
39
	if [ -e "$SCRIPTDIR/htaccess" ]; then
40
		echo "copie du .htaccess de reference"
171 mathias 41
		cp "$SCRIPTDIR/htaccess" "../.htaccess"
170 mathias 42
	fi
43
 
44
	# creation de la config
45
	echo "creation de la config"
46
	echo "<?php
171 mathias 47
// cree par installgtt le $DATE
175 mathias 48
define('GTT_AUTH_SESSION_NOM', 'gtt_auth_$PREFIXE');
170 mathias 49
define('GTT_BDD_NOM', '$BDD_BASE');
50
define('GTT_BDD_DSN', 'mysql://$BDD_LOGIN:$BDD_MDP@$BDD_HOTE/'.GTT_BDD_NOM);
51
define('GTT_BDD_PREFIXE', '$PREFIXE');
52
define('GTT_DEBOGAGE', false);
53
define('GTT_DEBOGAGE_SQL', false);
171 mathias 54
?>" > "../config.inc.php"
170 mathias 55
 
56
	# modification des fichiers .sql pour ajouter le prefixe, et insertion dans la base
57
	# "sort" sert a s'assurer que "installation" est execute avant "maj" @WARNING bancal comme systeme !
171 mathias 58
	find "../documentation" -name "*.sql" | sort | while read line; do
170 mathias 59
		echo "Insertion de $line"
171 mathias 60
		sed "s/gestion_/${PREFIXE}gestion_/" "$line" > "${line}_${PREFIXE}.sql"
61
		CMD="$CHEMIN_MYSQL/mysql -h$BDD_HOTE -u$BDD_LOGIN -p$BDD_MDP $BDD_BASE < ${line}_${PREFIXE}.sql"
170 mathias 62
		eval $CMD
171 mathias 63
		rm "${line}_${PREFIXE}.sql"
170 mathias 64
	done
65
}
66
 
171 mathias 67
if [ "$1" = "help" ]; then
170 mathias 68
	notice
69
else
171 mathias 70
	install_gtt $@
170 mathias 71
fi