Statistics
| Revision:

root / trunk / install / distribucion.sh @ 5766

History | View | Annotate | Download (6.2 KB)

1
#!/bin/bash
2

    
3
# Si se produce un error, salimos inmediatamente
4
set -e
5

    
6
# Obtenemos el locale
7
LOC=`echo $LANG | sed 's/_.*//'`
8

    
9
if [ $# -ne "2" ]; then
10
  if [ $LOC = "es" ] ; then
11
    echo "Uso: distribucion.sh version_antigua version_nueva"
12
  else
13
    echo "Usage: distribucion.sh old_version new_version"
14
  fi
15
  exit
16
fi
17

    
18
# Comprobar que estamos en el directorio adecuado
19
if [ $LOC = "es" ] ; then
20
  ERROR_BASEDIR="Este script debe invocarse desde el directorio raiz del workspace o desde el directorio \'install\'"
21
else
22
  ERROR_BASEDIR="This script must be run from the workspace\'s root directory or from the \'install\' directory"
23
fi
24

    
25
[ -d _fwAndami ] && [ -d install ] && cd install
26
if [ ! -d instalador-gvSIG-lin ] || [ ! -d instalador-gvSIG-win ] || [ ! -d ../_fwAndami ] ; then
27
	echo $ERROR_BASEDIR
28
	exit 1 ;
29
fi
30
DIR_BASE=`pwd`
31

    
32
#Directorios
33
#OUTPUT_DIR=/mnt/sercartlin/grupo-sig-ca/Testing/Versiones
34
OUTPUT_DIR=/tmp/Version
35
PATH_SOURCE_EXT=../_fwAndami/gvSIG/extensiones
36
PATH_SOURCE_MANDAT_EXT=../../../../../_fwAndami/gvSIG/extensiones
37
DIR_LIN=instalador-gvSIG-lin
38
DIR_WIN=instalador-gvSIG-win
39
#JAVA_HOME=/usr/local/j2sdk1.4.2_03
40

    
41

    
42
# Version
43
MAJOR=1
44
MINOR=0
45
MODIFIER='alpha'
46
MODIFIER_='alpha_'
47
BUILDNUMBER="$2"
48
OLDBUILDNUMBER="$1"
49
#Comentar estas 3 variables en caso de que no haya release
50
#REL=1
51
#POINT=.
52
#SEP=\_
53

    
54

    
55
#Extensiones de gvSIG
56
#Para a?adir una nueva extension al instalador incrementar EXT_N y agregar el nombre al vector EXTENSIONS
57
# Esto lo necesitamos porque no queremos coger todas las extensiones que haya, solo las que elijamos
58
EXT_N=10
59
EXTENSIONS=(
60
com.iver.cit.gvsig.cad
61
com.iver.cit.gvsig.jdbc_spatial
62
com.iver.cit.gvsig.wcs
63
com.iver.cit.gvsig.wfs2
64
com.iver.cit.gvsig.wms
65
com.iver.gvsig.datalocator
66
com.iver.gvsig.geoprocessing
67
es.gva.cit.gvsig.catalogClient
68
org.gvsig.georeferencing
69
org.gvsig.rasterTools
70
)
71

    
72
MEXT_N=3
73
MANDATORY_EXTENSIONS=(
74
com.iver.cit.gvsig
75
com.iver.core
76
com.iver.gvsig.addeventtheme
77
)
78

    
79
echo "*****************"
80
echo "      BASE       "
81
echo "*****************"
82
# Para Windows
83
echo -n "$DIR_BASE"/"$DIR_LIN" "-- "
84
cd "$DIR_BASE"/"$DIR_LIN"
85
rm bin -rf
86
mkdir -p bin/gvSIG/extensiones
87
cp gvSIG_installer/LEEME gvSIG_installer/LLIG-ME gvSIG_installer/README bin
88
cp resources/gpl.txt bin
89
# No enlazamos directamente el directorio lib para no incluir el directorio CVS
90
mkdir -p bin/lib
91
cd "$DIR_BASE"/"$DIR_LIN"/bin/lib
92
for i in ../../../../_fwAndami/lib/*.jar ; do
93
  ln -s "$i" .
94
done
95
for i in ../../../../_fwAndami/lib/*.zip ; do
96
  ln -s "$i" .
97
done
98
cd "$DIR_BASE"/"$DIR_LIN"
99
ln -s ../../../_fwAndami/andami.jar bin/
100
cp resources/andami-config.xml bin
101
echo OK.
102

    
103
# Para Linux
104
echo -n "$DIR_BASE"/"$DIR_WIN" "-- "
105
cd "$DIR_BASE"/"$DIR_WIN"
106
rm bin -rf
107
mkdir -p bin/gvSIG/extensiones
108
cp gvSIG_installer/LEEME.txt gvSIG_installer/LLIG-ME.txt gvSIG_installer/README.txt bin
109
cp resources/gpl.txt bin
110
# No enlazamos directamente el directorio lib para no incluir el directorio CVS
111
mkdir -p bin/lib
112
cd "$DIR_BASE"/"$DIR_WIN"/bin/lib
113
for i in ../../../../_fwAndami/lib/*.jar ; do
114
  ln -s "$i" .
115
done
116
for i in ../../../../_fwAndami/lib/*.zip ; do
117
  ln -s "$i" .
118
done
119
cd "$DIR_BASE"/"$DIR_WIN"
120
ln -s ../../../_fwAndami/andami.jar bin
121
cp resources/andami-config.xml bin
122
echo OK.
123

    
124
# Estas extensiones se copian directamente al directorio destino, ya que no vamos a dar
125
# opcion a no instalarlas, son obligatorias
126
cd $DIR_BASE
127
i=0
128
while [ $i -lt $MEXT_N ]
129
do
130
  ln -s "$PATH_SOURCE_MANDAT_EXT"/${MANDATORY_EXTENSIONS[$i]} "$DIR_LIN"/bin/gvSIG/extensiones
131
  ln -s "$PATH_SOURCE_MANDAT_EXT"/${MANDATORY_EXTENSIONS[$i]} "$DIR_WIN"/bin/gvSIG/extensiones
132
  i=`expr $i + 1`
133
done
134

    
135

    
136
echo "*****************"
137
[ $LOC = "es" ] && echo "   EXTENSIONES   "
138
[ $LOC != "es" ] && echo "   EXTENSIONS   "
139
echo "*****************"
140

    
141
rm -rf $DIR_LIN/extensiones
142
mkdir $DIR_LIN/extensiones
143
rm -rf $DIR_WIN/extensiones
144
mkdir $DIR_WIN/extensiones
145

    
146

    
147
i=0
148
while [ $i -lt $EXT_N ]
149
do
150
  [ $LOC = "es" ] && echo "Copiando "${EXTENSIONS[$i]}
151
  [ $LOC != "es" ] && echo "Copying "${EXTENSIONS[$i]}
152
  cp "$PATH_SOURCE_EXT"/${EXTENSIONS[$i]} "$DIR_LIN"/extensiones -rf
153
  cp "$PATH_SOURCE_EXT"/${EXTENSIONS[$i]} "$DIR_WIN"/extensiones -rf
154
  i=`expr $i + 1`
155
done
156

    
157

    
158
echo "*****************"
159
echo "    INST-WIN     "
160
echo "*****************"
161
# Generar el instalador (jar) para windows
162
cd "$DIR_BASE"/"$DIR_WIN"
163
ant
164

    
165
echo "*****************"
166
echo "    INST-LIN     "
167
echo "*****************"
168
# Generar el instalador (jar) para Linux
169
echo $DIR_BASE/$PATHEXT
170
cd "$DIR_BASE"/"$DIR_LIN"
171
ant
172

    
173
echo "******************"
174
[ $LOC = "es" ] && echo " GENERAR DISTRIB "
175
[ $LOC != "es" ] && echo " GENERATE DISTRIB "
176
echo "******************"
177
# Generar el tar.gz para Linux y el ZIP para Windows
178

    
179
V=`echo $MAJOR.$MINOR$POINT$REL`
180
V1=`echo $MAJOR$SEP$MINOR$SEP$REL`
181

    
182
mkdir -p "$OUTPUT_DIR"/v$V\_"$MODIFIER_""$BUILDNUMBER"
183
### Para Linux
184
cd "$DIR_BASE"/"$DIR_LIN"
185
rm -Rf gvSIG\_$V\_installer
186
cp -a gvSIG_installer gvSIG\_$V\_installer
187
rm -R gvSIG\_$V\_installer/CVS
188
mv gvSIG\_$V\_"$MODIFIER".jar gvSIG\_$V\_installer/
189
tar -czhvf gvSIG-$V1\_${MODIFIER_}${BUILDNUMBER}-linux-i586.tar.gz gvSIG_$V\_installer
190
rm -Rf gvSIG\_$V\_installer
191
cp gvSIG-$V1\_${MODIFIER_}${BUILDNUMBER}-linux-i586.tar.gz $OUTPUT_DIR/v$V\_${MODIFIER_}${BUILDNUMBER}
192
echo " "
193

    
194

    
195
### Para Windows
196
cd "$DIR_BASE"/"$DIR_WIN"
197
rm -Rf gvSIG\_$V\_installer
198
cp -a gvSIG_installer gvSIG\_$V\_installer
199
rm -Rf gvSIG\_$V\_installer/CVS
200
mv gvSIG_$V\_${MODIFIER}.jar gvSIG_$V\_installer/
201
zip -r gvSIG-$V1\_${MODIFIER_}${BUILDNUMBER}-windows-i586.zip gvSIG_$V\_installer
202
rm -Rf gvSIG\_$V\_installer
203
cp gvSIG-$V1\_${MODIFIER_}${BUILDNUMBER}-windows-i586.zip "$OUTPUT_DIR"/v$V\_${MODIFIER_}${BUILDNUMBER}
204

    
205
if [ -d "$OUTPUT_DIR"/v$V\_"${MODIFIER_}""$OLDBUILDNUMBER"+/Por_comprobar ] ; then
206
  # Copiamos el directorio Por_comprobar de la versi?n anterior
207
  ls "$OUTPUT_DIR"/v$V\_"${MODIFIER_}""$OLDBUILDNUMBER"+/Por_comprobar
208
  cp "$OUTPUT_DIR"/v$V\_"${MODIFIER_}""$OLDBUILDNUMBER"+/Por_comprobar ../v$V\_"${MODIFIER_}""${BUILDNUMBER}" -rf ;
209
else
210
  # Si no existe, avisamos de ello
211
  [ $LOC = "es" ] && echo Ojo: el build anterior especificado no existe: $OLDBUILDNUMBER ;
212
  [ $LOC != "es" ] && echo Warning: the specified previous build does not exist: $OLDBUILDNUMBER ;
213
  mkdir -p "$OUTPUT_DIR"/v$V\_"${MODIFIER_}""${BUILDNUMBER}"/Por_comprobar
214
fi
215

    
216
mkdir -p "$OUTPUT_DIR"/v$V\_"${MODIFIER_}""${BUILDNUMBER}"+/Por_comprobar