Subversion Repositories Applications.gtt

Rev

Rev 175 | Only display areas with differences | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

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