gvsig-raster / org.gvsig.raster / trunk / org.gvsig.raster / package.sh @ 2084
History | View | Annotate | Download (19.1 KB)
1 |
#/bin/sh |
---|---|
2 |
|
3 |
#---------------------- |
4 |
#Configuration section |
5 |
#---------------------- |
6 |
|
7 |
GVSIG_VERSION=2.1.0 |
8 |
FIX_VERSION=SNAPSHOT |
9 |
RELEASE=testing |
10 |
PACKAGE_PREFIX=gvSIG-desktop |
11 |
LIB_PKG=depman.tgz |
12 |
|
13 |
PACKAGE_DIRECTORY=/tmp |
14 |
USER=nbrodin |
15 |
PASS=chkdsk |
16 |
|
17 |
#Distribution groups |
18 |
#------------------- |
19 |
|
20 |
#GROUP 0 |
21 |
PROJECTS[0]="org.gvsig.raster.cache |
22 |
org.gvsig.raster |
23 |
org.gvsig.raster.gdal |
24 |
org.gvsig.raster.tilecache |
25 |
org.gvsig.raster.tools" |
26 |
REPO_NAME[0]="Raster" #Repository of packages |
27 |
URL_REPO[0]="https://devel.gvsig.org/download/projects/${REPO_NAME[0]}/pool/" |
28 |
URL_SVN[0]="https://devel.gvsig.org/svn/gvsig-raster/" |
29 |
PATH_TICKET[0]="/tmp/ticket-raster.txt" |
30 |
PLUGINS[0]="org.gvsig.raster.tilecache/org.gvsig.raster.tilecache.app |
31 |
org.gvsig.raster.tools/org.gvsig.raster.tools.app.basic |
32 |
org.gvsig.raster.gdal/org.gvsig.raster.gdal.app" |
33 |
ARCH_DEP[0]="org.gvsig.raster.tilecache/org.gvsig.raster.tilecache.app |
34 |
org.gvsig.raster.gdal/org.gvsig.raster.gdal.app" #Architecture dependent plugins |
35 |
|
36 |
#GROUP 1 |
37 |
PROJECTS[1]="org.gvsig.raster.multifile |
38 |
org.gvsig.raster.reproject" |
39 |
REPO_NAME[1]="Raster" |
40 |
URL_REPO[1]="https://devel.gvsig.org/download/projects/${REPO_NAME[1]}/pool/" |
41 |
URL_SVN[1]="https://devel.gvsig.org/svn/gvsig-raster/" |
42 |
PATH_TICKET[1]="/tmp/ticket-raster.txt" |
43 |
PLUGINS[1]="org.gvsig.raster.multifile/org.gvsig.raster.multifile.app.multifileclient |
44 |
org.gvsig.raster.reproject/org.gvsig.raster.reproject.app.reprojectclient" |
45 |
ARCH_DEP[1]="" |
46 |
|
47 |
#GROUP 2 |
48 |
PROJECTS[2]="org.gvsig.raster.ermapper |
49 |
org.gvsig.raster.lizardtech |
50 |
org.gvsig.raster.netcdf" |
51 |
REPO_NAME[2]="Raster" |
52 |
URL_REPO[2]="https://devel.gvsig.org/download/projects/${REPO_NAME[2]}/pool/" |
53 |
URL_SVN[2]="https://devel.gvsig.org/svn/gvsig-raster/" |
54 |
PATH_TICKET[2]="/tmp/ticket-raster.txt" |
55 |
PLUGINS[2]="org.gvsig.raster.netcdf/org.gvsig.raster.netcdf.app.netcdfclient |
56 |
org.gvsig.raster.ermapper/org.gvsig.raster.ermapper.app |
57 |
org.gvsig.raster.lizardtech/org.gvsig.raster.lizardtech.app" |
58 |
ARCH_DEP[2]="org.gvsig.raster.ermapper/org.gvsig.raster.ermapper.app |
59 |
org.gvsig.raster.lizardtech/org.gvsig.raster.lizardtech.app" |
60 |
|
61 |
#GROUP 3 |
62 |
PROJECTS[3]="org.gvsig.raster.wmts |
63 |
org.gvsig.raster.wms |
64 |
org.gvsig.raster.wcs |
65 |
org.gvsig.raster.postgis" |
66 |
REPO_NAME[3]="Raster" |
67 |
URL_REPO[3]="https://devel.gvsig.org/download/projects/${REPO_NAME[3]}/pool/" |
68 |
URL_SVN[3]="https://devel.gvsig.org/svn/gvsig-raster/" |
69 |
PATH_TICKET[3]="/tmp/ticket-raster.txt" |
70 |
PLUGINS[3]="org.gvsig.raster.wmts/org.gvsig.raster.wmts.app.wmtsclient |
71 |
org.gvsig.raster.wms/org.gvsig.raster.wms.app.wmsclient |
72 |
org.gvsig.raster.wcs/org.gvsig.raster.wcs.app.wcsclient |
73 |
org.gvsig.raster.postgis/org.gvsig.raster.postgis.app.postgisrasterclient" |
74 |
ARCH_DEP[3]="" |
75 |
|
76 |
#GROUP 4 |
77 |
PROJECTS[4]="org.gvsig.raster.georeferencing" |
78 |
REPO_NAME[4]="Raster" |
79 |
URL_REPO[4]="https://devel.gvsig.org/download/projects/${REPO_NAME[4]}/pool/" |
80 |
URL_SVN[4]="https://devel.gvsig.org/svn/gvsig-georeferencing/" |
81 |
PATH_TICKET[4]="/tmp/ticket-raster.txt" |
82 |
PLUGINS[4]="org.gvsig.raster.georeferencing/org.gvsig.raster.georeferencing.app.georeferencingclient" |
83 |
ARCH_DEP[4]="" |
84 |
|
85 |
#GROUP 5 |
86 |
PROJECTS[5]="org.gvsig.raster.osm" |
87 |
REPO_NAME[5]="Raster" |
88 |
URL_REPO[5]="https://devel.gvsig.org/download/projects/${REPO_NAME[5]}/pool/" |
89 |
URL_SVN[5]="https://devel.gvsig.org/svn/gvsig-osm/" |
90 |
PATH_TICKET[5]="/tmp/ticket-raster.txt" |
91 |
PLUGINS[5]="org.gvsig.raster.osm/org.gvsig.raster.osm.app.osmclient" |
92 |
ARCH_DEP[5]="" |
93 |
|
94 |
#GROUP 6 |
95 |
PROJECTS[6]="org.gvsig.geoprocess" |
96 |
REPO_NAME[6]="gvsig-geoprocess" |
97 |
URL_REPO[6]="https://devel.gvsig.org/download/projects/${REPO_NAME[6]}/pool/" |
98 |
URL_SVN[6]="https://devel.gvsig.org/svn/gvsig-geoprocess/" |
99 |
PATH_TICKET[6]="/tmp/ticket-geoprocess.txt" |
100 |
PLUGINS[6]="org.gvsig.geoprocess/org.gvsig.geoprocess.app/org.gvsig.geoprocess.app.algorithm |
101 |
org.gvsig.geoprocess/org.gvsig.geoprocess.app/org.gvsig.geoprocess.app.mainplugin |
102 |
org.gvsig.geoprocess/org.gvsig.geoprocess.app/org.gvsig.geoprocess.app.sextante |
103 |
org.gvsig.geoprocess/org.gvsig.geoprocess.app/org.gvsig.geoprocess.app.tool" |
104 |
ARCH_DEP[6]="" |
105 |
|
106 |
#Platforms supported (Add a new block for a new architecture) |
107 |
#------------------------------------------------------------- |
108 |
|
109 |
ARCH="i386" |
110 |
TYPE="dynamic" |
111 |
|
112 |
PLATFORM[0]="linux" |
113 |
COMPILER[0]="gcc4" |
114 |
DISTRIBUTION[0]="all" |
115 |
CLASSIFIER[0]=${PLATFORM[0]}"-"${DISTRIBUTION[0]}"-"${COMPILER[0]}"-"$ARCH"-"$TYPE |
116 |
|
117 |
PLATFORM[1]="win" |
118 |
COMPILER[1]="vs8" |
119 |
DISTRIBUTION[1]="nt" |
120 |
CLASSIFIER[1]=${PLATFORM[1]}"-"${DISTRIBUTION[1]}"-"${COMPILER[1]}"-"$ARCH"-"$TYPE |
121 |
|
122 |
#------------------------- |
123 |
#End configuration section |
124 |
#------------------------- |
125 |
|
126 |
ALL_PROJECTS=${PROJECTS[*]} |
127 |
ALL_PLUGINS=${PLUGINS[*]} |
128 |
ARCH_DEP_PLUGINS=${ARCH_DEP[*]} |
129 |
|
130 |
for k in `seq 1 ${#PLATFORM[@]}` |
131 |
do |
132 |
let "i=k-1"; |
133 |
INSTALL_PARAMS[$i]="install -Dnative-platform="${PLATFORM[$i]}" -Dnative-compiler="${COMPILER[$i]}" -Dnative-arch="$ARCH" -Dnative-distribution="${DISTRIBUTION[$i]}" -Dlibrary-type="$TYPE" -Dnative-classifier="${CLASSIFIER[$i]}" -Dnative_classifier="${CLASSIFIER[$i]}" -Dmaven.test.skip -Dmaven.javadoc.skip=true -Danimal.sniffer.skip=true -Dlicense.skip=true" |
134 |
done |
135 |
|
136 |
if [ $1 != "-changeversion" ] ; then |
137 |
PACKAGE_TO_BUILD=$2 |
138 |
|
139 |
if [ -n $PACKAGE_TO_BUILD -a $PACKAGE_TO_BUILD -ge ${#PROJECTS[@]} ]; then |
140 |
t=${#PROJECTS[@]} |
141 |
let "t=t-1" |
142 |
echo "Number of package to build wrong. Maximum "$t |
143 |
exit |
144 |
fi |
145 |
|
146 |
if [ -z $PACKAGE_TO_BUILD ]; then #Si PACKAGE_TO_BUILD es null |
147 |
PROJECTS_TO_BUILD=$ALL_PROJECTS |
148 |
else |
149 |
PROJECTS_TO_BUILD=${PROJECTS[$PACKAGE_TO_BUILD]} |
150 |
fi |
151 |
|
152 |
if [ -z $PACKAGE_TO_BUILD ]; then |
153 |
PLUGINS_TO_BUILD=$ALL_PLUGINS |
154 |
else |
155 |
PLUGINS_TO_BUILD=${PLUGINS[$PACKAGE_TO_BUILD]} |
156 |
fi |
157 |
|
158 |
if [ -z $PACKAGE_TO_BUILD ]; then |
159 |
PLUGINS_ARCH_DEP_TO_BUILD=$ARCH_DEP_PLUGINS |
160 |
else |
161 |
PLUGINS_ARCH_DEP_TO_BUILD=${ARCH_DEP[$PACKAGE_TO_BUILD]} |
162 |
fi |
163 |
fi |
164 |
|
165 |
#------------------------------------------------- |
166 |
# HELP |
167 |
#------------------------------------------------- |
168 |
|
169 |
if [ "$1" = "--help" ] ; then |
170 |
echo "Usage: First parameter:" |
171 |
echo " -all (clean, update, buildnumber, install, tags, commit, ticket, upload)" |
172 |
echo " -clean" |
173 |
echo " -update" |
174 |
echo " -buildnumber" |
175 |
echo " -install" |
176 |
echo " -upload: subir al repositorio" |
177 |
echo " -tags: crear tags tagdate_fecha_hora" |
178 |
echo " -commit: subir build number" |
179 |
echo " -ticket: crear fichero de texto con las URLS de los índices para el ticket" |
180 |
echo " Second parameter:" |
181 |
echo " -number: Number of group to build the package or empty to build all" |
182 |
echo "" |
183 |
echo "Other utils:" |
184 |
echo " -changeversion <old_version> <new_version>:Change the parent pom version (org.gvsig.desktop) of all projects" |
185 |
echo " -eclipse: mvn eclipse:eclipse" |
186 |
echo "" |
187 |
echo "Para hacer nuevo empaquetado" |
188 |
echo "----------------------------" |
189 |
echo " Recomendable usar cpulimit -e java -l 50 -b si se necesita CPU para otras tareas" |
190 |
echo " 1 - Comprobar y actualizar variables" |
191 |
echo " 2 - Ejecutar ./package.sh -clean para limpiar" |
192 |
echo " 3 - Ejecutar ./package.sh -update para actualizar los proyectos" |
193 |
echo " 4 - Ejecutar ./package.sh -buildnumber para actualizar los build number" |
194 |
echo " 5 - Ejecutar ./package.sh -install para instalar los proyectos en ~/.gvsig-devel.properties y empaquetar" |
195 |
echo " 6 - (Testear lo instalado y comprobar que en tmp están todos los paquetes)" |
196 |
echo " 7 - Ejecutar ./package.sh -upload para subir a URL_REPO" |
197 |
echo " 8 - Ejecutar ./package.sh -commit para subir los buildnumber" |
198 |
echo " 9 - Ejecutar ./package.sh -tags para crear tags en URL_SVN" |
199 |
echo " 10 - Ejecutar ./package.sh -ticket para generar el fichero con las urls de los índices" |
200 |
exit |
201 |
fi |
202 |
|
203 |
|
204 |
#------------------------------------------------- |
205 |
# CLEAN |
206 |
#------------------------------------------------- |
207 |
|
208 |
clean() { |
209 |
echo "***********************************" |
210 |
echo "Clean" |
211 |
echo "***********************************" |
212 |
|
213 |
for i in $PROJECTS_TO_BUILD |
214 |
do |
215 |
cd $i |
216 |
echo "-----------------" |
217 |
echo "Cambiando a"....$i |
218 |
echo "Ejecutando clean" |
219 |
mvn clean |
220 |
cd .. |
221 |
done |
222 |
} |
223 |
|
224 |
#------------------------------------------------- |
225 |
# UPDATE |
226 |
#------------------------------------------------- |
227 |
|
228 |
update() { |
229 |
for i in $PROJECTS_TO_BUILD |
230 |
do |
231 |
cd $i |
232 |
echo "-----------------" |
233 |
echo "Cambiando a"....$i |
234 |
echo "Ejecutando svn update " |
235 |
svn update; |
236 |
cd .. |
237 |
done |
238 |
} |
239 |
|
240 |
#------------------------------------------------- |
241 |
# BUILDNUMBER |
242 |
# Increase the build number for all plugins |
243 |
#------------------------------------------------- |
244 |
|
245 |
increaseBuildNumber() { |
246 |
DIR_BASE=`pwd` |
247 |
for i in $PLUGINS_TO_BUILD |
248 |
do |
249 |
if [ -d $i ]; then |
250 |
cd $i |
251 |
if [ -f buildNumber.properties ]; then |
252 |
CURRENT_VER=`cat buildNumber.properties | grep "buildNumber=" | cut -d'=' -f2` |
253 |
NEXT_VER=$CURRENT_VER |
254 |
let "NEXT_VER=NEXT_VER+1"; |
255 |
echo "Changin buildNumber "$CURRENT_VER" by "$NEXT_VER" IN "$i |
256 |
(cat buildNumber.properties | sed -e "s/buildNumber=${CURRENT_VER}/buildNumber=${NEXT_VER}/g") > tmp |
257 |
rm buildNumber.properties |
258 |
mv tmp buildNumber.properties |
259 |
fi |
260 |
fi |
261 |
cd $DIR_BASE |
262 |
done |
263 |
} |
264 |
|
265 |
#------------------------------------------------- |
266 |
# Copy to $PACKAGE_DIRECTORY |
267 |
#------------------------------------------------- |
268 |
|
269 |
copyToPackageFolder() { |
270 |
DIR_BASE=`pwd` |
271 |
for i in $PLUGINS_TO_BUILD |
272 |
do |
273 |
cd $i/target |
274 |
echo "-----------------" |
275 |
echo "Cambiando a"....$i/target |
276 |
echo "Copiando "$i" a "$PACKAGE_DIRECTORY |
277 |
COUNT_SLASHES=`grep -o "\/" <<< "$i" | wc -l` #Count the number of slashes in the path |
278 |
if [ $COUNT_SLASHES -eq 1 ]; then |
279 |
pad=`echo $i | cut -d/ -f2` |
280 |
fi |
281 |
if [ $COUNT_SLASHES -eq 2 ]; then |
282 |
pad=`echo $i | cut -d/ -f3` |
283 |
fi |
284 |
mkdir $PACKAGE_DIRECTORY/$pad |
285 |
rename 's/\.zip$//' *.gvspkg.zip #Elimina los .zip si los gvspkg están como .zip |
286 |
cp $PACKAGE_PREFIX* $PACKAGE_DIRECTORY/$pad |
287 |
cd $DIR_BASE |
288 |
done |
289 |
|
290 |
} |
291 |
|
292 |
#------------------------------------------------- |
293 |
# Install libraries and package plugins |
294 |
#------------------------------------------------- |
295 |
|
296 |
installAndPackage() { |
297 |
echo "***********************************" |
298 |
echo "Install" |
299 |
echo "***********************************" |
300 |
|
301 |
DIR_BASE=`pwd` |
302 |
|
303 |
#------Install and Package--------- |
304 |
|
305 |
for i in $PROJECTS_TO_BUILD |
306 |
do |
307 |
cd $i |
308 |
echo "-----------------" |
309 |
echo "Cambiando a"....$i |
310 |
echo "Ejecutando mvn "${INSTALL_PARAMS[0]} |
311 |
mvn ${INSTALL_PARAMS[0]}; |
312 |
cd .. |
313 |
done |
314 |
|
315 |
|
316 |
for i in $PLUGINS_ARCH_DEP_TO_BUILD #Plugins architecture dependent |
317 |
do |
318 |
dir=`cut -d/ -f1 <<<$i` |
319 |
cd $dir |
320 |
echo "-----------------" |
321 |
echo "Cambiando a"....$dir |
322 |
|
323 |
for k in `seq 2 ${#INSTALL_PARAMS[@]}` |
324 |
do |
325 |
let "j=k-1"; |
326 |
echo "Ejecutando mvn "$j ${INSTALL_PARAMS[$j]} |
327 |
mvn ${INSTALL_PARAMS[$j]}; |
328 |
done |
329 |
|
330 |
cd $DIR_BASE |
331 |
done |
332 |
} |
333 |
|
334 |
#------------------------------------------------- |
335 |
# Unpack deman |
336 |
#------------------------------------------------- |
337 |
|
338 |
unpackDepman( ) { |
339 |
if [ "$PLUGINS_ARCH_DEP_TO_BUILD" != "" ]; then #Si no hay plugins dependientes de la arquitectura no descomprimimos el depman |
340 |
if [ -f $HOME"/"$LIB_PKG ]; then |
341 |
CURRENT_DIR=`pwd` |
342 |
cd $HOME |
343 |
tar -xzvf $LIB_PKG |
344 |
cd $CURRENT_DIR |
345 |
else |
346 |
echo "Error: No existe "$HOME"/"$LIB_PKG"!!!!" |
347 |
exit |
348 |
fi |
349 |
fi |
350 |
} |
351 |
|
352 |
|
353 |
#---------------------------------------------------------- |
354 |
#Gets the number of the version reading it from the pom.xml |
355 |
#---------------------------------------------------------- |
356 |
|
357 |
loadPluginVersion( ) { |
358 |
CURRENT_DIR=`pwd` |
359 |
VERSION_COUNTER=0 |
360 |
for k in `seq 1 ${#PLUGINS[@]}` |
361 |
do |
362 |
let "i=k-1"; |
363 |
for j in ${PLUGINS[$i]} |
364 |
do |
365 |
if [ -d $j ]; then |
366 |
cd $j |
367 |
if [ -f pom.xml ]; then |
368 |
exec<pom.xml |
369 |
while read line |
370 |
do |
371 |
if test "${line#*<version>}" != "$line" ; then #La linea contiene el tag <version> |
372 |
NEW_VN=`sed -e "s/<version>//g" <<< $line` |
373 |
NEW_VN=`sed -e "s/<\/version>//g" <<< $NEW_VN` |
374 |
PLUGIN_VERSIONS[$VERSION_COUNTER]=${PLUGIN_VERSIONS[$VERSION_COUNTER]}" "$NEW_VN |
375 |
let "VERSION_COUNTER=VERSION_COUNTER+1" |
376 |
break |
377 |
fi |
378 |
done |
379 |
fi |
380 |
cd $CURRENT_DIR |
381 |
fi |
382 |
done |
383 |
done |
384 |
} |
385 |
|
386 |
#------------------------------------------------- |
387 |
#Loads the array of build numbers |
388 |
#------------------------------------------------- |
389 |
|
390 |
loadBuildNumber() { |
391 |
CURRENT_DIR=`pwd` |
392 |
BN_COUNTER=0 |
393 |
for k in `seq 1 ${#PLUGINS[@]}` |
394 |
do |
395 |
let "i=k-1"; |
396 |
for j in ${PLUGINS[$i]} |
397 |
do |
398 |
if [ -d $j ]; then |
399 |
cd $j |
400 |
if [ -f buildNumber.properties ]; then |
401 |
NEW_BN=`cat buildNumber.properties | grep "buildNumber=" | cut -d'=' -f2` |
402 |
BN[$BN_COUNTER]=${BN[$BN_COUNTER]}" "$NEW_BN |
403 |
let "BN_COUNTER=BN_COUNTER+1" |
404 |
fi |
405 |
cd $CURRENT_DIR |
406 |
fi |
407 |
done |
408 |
done |
409 |
} |
410 |
|
411 |
#------------------------------------------------- |
412 |
#COMMIT CHANGES (BUILD NUMBERS) |
413 |
#------------------------------------------------- |
414 |
|
415 |
commit() { |
416 |
CURRENT_DIR=`pwd` |
417 |
for i in $PROJECTS_TO_BUILD |
418 |
do |
419 |
cd $i |
420 |
echo "-----------------" |
421 |
echo "Cambiando a"....$i |
422 |
echo "Ejecutando svn commit " |
423 |
svn commit * -m "New build number"; |
424 |
cd $CURRENT_DIR |
425 |
done |
426 |
} |
427 |
|
428 |
#------------------------------------------------- |
429 |
# REVERT CHANGES (SOLO TEST) |
430 |
#------------------------------------------------- |
431 |
if [ "$1" = "-revert" ] ; then |
432 |
for i in $PROJECTS_TO_BUILD |
433 |
do |
434 |
cd $i |
435 |
echo "-----------------" |
436 |
echo "Cambiando a"....$i |
437 |
echo "Ejecutando svn update " |
438 |
svn revert --recursive . |
439 |
cd .. |
440 |
done |
441 |
fi |
442 |
|
443 |
#------------------------------------------------- |
444 |
# TICKET |
445 |
#------------------------------------------------- |
446 |
|
447 |
ticketGeneration() { |
448 |
for k in `seq 1 ${#PATH_TICKET[@]}` |
449 |
do |
450 |
let "i=k-1"; |
451 |
rm ${PATH_TICKET[$i]} 2> /dev/null |
452 |
done |
453 |
|
454 |
for k in `seq 1 ${#URL_REPO[@]}` |
455 |
do |
456 |
let "i=k-1"; |
457 |
POS_INSIDE_PLUGINS=1 #Position of the plugin inside PLUGINS |
458 |
for j in ${PLUGINS[$i]} |
459 |
do |
460 |
#Si se ha seleccionado algún grupo en concreto solo se añadirá este al fichero (-n está definido) |
461 |
if [ -n $PACKAGE_TO_BUILD -a $i -ne $PACKAGE_TO_BUILD ] ; then |
462 |
break |
463 |
fi |
464 |
|
465 |
COUNT_SLASHES=`grep -o "\/" <<< "$j" | wc -l` #Count the number of slashes in the path |
466 |
if [ $COUNT_SLASHES -eq 1 ]; then |
467 |
package=`echo $j | cut -d/ -f2` |
468 |
fi |
469 |
if [ $COUNT_SLASHES -eq 2 ]; then |
470 |
package=`echo $j | cut -d/ -f3` |
471 |
fi |
472 |
|
473 |
PLUGIN_VER=`cut -d' ' -f$POS_INSIDE_PLUGINS <<< ${PLUGIN_VERSIONS[$i]}` |
474 |
PLUGIN_BN=`cut -d' ' -f$POS_INSIDE_PLUGINS <<< ${BN[$i]}` |
475 |
|
476 |
if test "${ARCH_DEP_PLUGINS#*$j}" != "$ARCH_DEP_PLUGINS" |
477 |
then |
478 |
echo "${URL_REPO[$i]}$package/gvSIG-desktop-$GVSIG_VERSION-$package-$PLUGIN_VER-$PLUGIN_BN-$RELEASE-lin-x86-j1_5.gvspki" >> ${PATH_TICKET[$i]} |
479 |
echo "" >> ${PATH_TICKET[$i]} |
480 |
echo "${URL_REPO[$i]}$package/gvSIG-desktop-$GVSIG_VERSION-$package-$PLUGIN_VER-$PLUGIN_BN-$RELEASE-win-x86-j1_5.gvspki" >> ${PATH_TICKET[$i]} |
481 |
else |
482 |
echo "${URL_REPO[$i]}$package/gvSIG-desktop-$GVSIG_VERSION-$package-$PLUGIN_VER-$PLUGIN_BN-$RELEASE-all-all-j1_5.gvspki" >> ${PATH_TICKET[$i]} |
483 |
fi |
484 |
|
485 |
echo "" >> ${PATH_TICKET[$i]} |
486 |
let "POS_INSIDE_PLUGINS=POS_INSIDE_PLUGINS+1"; |
487 |
done |
488 |
done |
489 |
} |
490 |
|
491 |
#------------------------------------------------- |
492 |
# TAGS |
493 |
#------------------------------------------------- |
494 |
|
495 |
tagsGeneration() { |
496 |
echo "***********************************" |
497 |
echo "Creating tags" |
498 |
echo "***********************************" |
499 |
|
500 |
tag=`date +%d%m%Y_%H_%M` |
501 |
|
502 |
for k in `seq 1 ${#URL_SVN[@]}` |
503 |
do |
504 |
let "i=k-1"; |
505 |
for j in ${PROJECTS[$i]} |
506 |
do |
507 |
#Si se ha seleccionado algún grupo en concreto solo se hará el tag de estos proyectos |
508 |
if [ -n $PACKAGE_TO_BUILD -a $i -ne $PACKAGE_TO_BUILD ] ; then |
509 |
break |
510 |
fi |
511 |
|
512 |
#echo "svn copy ${URL_SVN[$i]}$j/trunk ${URL_SVN[$i]}$j/tags/tagdate_$tag -m \"Tag build $tag\"" |
513 |
svn copy ${URL_SVN[$i]}$j/trunk ${URL_SVN[$i]}$j/tags/tagdate_$tag -m "Tag build $tag" |
514 |
done |
515 |
done |
516 |
} |
517 |
|
518 |
#------------------------------------------------- |
519 |
# CHANGE THE PROJECT VERSION |
520 |
# Change the version of the pom parent in a project |
521 |
#------------------------------------------------- |
522 |
|
523 |
changeProjectVersion() { |
524 |
CURRENT_DIR=`pwd` |
525 |
if [ -z $1 ] ; then |
526 |
echo "Current version number not defined" |
527 |
exit |
528 |
fi |
529 |
|
530 |
if [ -z $2 ] ; then |
531 |
echo "Next version number not defined" |
532 |
exit |
533 |
fi |
534 |
|
535 |
for i in `ls` |
536 |
do |
537 |
if [[ "$i" == org.gvsig.* ]] ; then |
538 |
echo $i |
539 |
cd $i |
540 |
(cat pom.xml | sed -e "s/<version>$1<\/version>/<version>$2<\/version>/") > tmp |
541 |
rm pom.xml |
542 |
mv tmp pom.xml |
543 |
cd $CURRENT_DIR |
544 |
fi |
545 |
done |
546 |
} |
547 |
|
548 |
#------------------------------------------------- |
549 |
# ECLIPSE .project |
550 |
#------------------------------------------------- |
551 |
|
552 |
eclipse() { |
553 |
echo "***********************************" |
554 |
echo "Eclipse:eclipse" |
555 |
echo "***********************************" |
556 |
|
557 |
DIR_BASE=`pwd` |
558 |
|
559 |
for i in $PROJECTS_TO_BUILD |
560 |
do |
561 |
cd $i |
562 |
echo "-----------------" |
563 |
echo "Cambiando a"....$i |
564 |
echo "Ejecutando mvn eclipse:eclipse" |
565 |
mvn eclipse:eclipse; |
566 |
cd .. |
567 |
done |
568 |
} |
569 |
|
570 |
|
571 |
|
572 |
#------------------------------------------------- |
573 |
# COMMANDS |
574 |
#------------------------------------------------- |
575 |
|
576 |
if [ "$1" = "-all" ] ; then |
577 |
clean |
578 |
update |
579 |
increaseBuildnumber |
580 |
unpackDepman |
581 |
installAndPackage |
582 |
copyToPackageFolder |
583 |
commit |
584 |
tagsGeneration |
585 |
loadBuildNumber |
586 |
loadPluginVersion |
587 |
ticketGeneration |
588 |
fi |
589 |
|
590 |
if [ "$1" = "-install" ] ; then |
591 |
unpackDepman |
592 |
installAndPackage |
593 |
copyToPackageFolder |
594 |
fi |
595 |
|
596 |
if [ "$1" = "-clean" ] ; then |
597 |
clean |
598 |
fi |
599 |
|
600 |
if [ "$1" = "-update" ] ; then |
601 |
update |
602 |
fi |
603 |
|
604 |
if [ "$1" = "-buildnumber" ] ; then |
605 |
increaseBuildNumber |
606 |
fi |
607 |
|
608 |
if [ "$1" = "-commit" ] ; then |
609 |
commit |
610 |
fi |
611 |
|
612 |
if [ "$1" = "-ticket" ] ; then |
613 |
loadBuildNumber |
614 |
loadPluginVersion |
615 |
ticketGeneration |
616 |
fi |
617 |
|
618 |
if [ "$1" = "-tags" ] ; then |
619 |
tagsGeneration |
620 |
fi |
621 |
|
622 |
if [ "$1" = "-changeversion" ] ; then |
623 |
changeProjectVersion $2 $3 |
624 |
fi |
625 |
|
626 |
if [ "$1" = "-eclipse" ] ; then |
627 |
eclipse |
628 |
fi |
629 |
|
630 |
if [ "$1" != "-upload" -a "$1" != "-all" ] ; then |
631 |
exit |
632 |
fi |
633 |
|
634 |
#------------------------------------------------- |
635 |
# UPLOAD |
636 |
#------------------------------------------------- |
637 |
|
638 |
echo "***********************************" |
639 |
echo "Uploading" |
640 |
echo "***********************************" |
641 |
|
642 |
CURRENT_DIRECTORY=`pwd`; |
643 |
echo "Cambiando a..."$PACKAGE_DIRECTORY |
644 |
cd $PACKAGE_DIRECTORY |
645 |
|
646 |
|
647 |
for k in `seq 1 ${#URL_REPO[@]}` |
648 |
do |
649 |
let "i=k-1"; |
650 |
|
651 |
for j in ${PLUGINS[$i]} |
652 |
do |
653 |
|
654 |
#Si se ha seleccionado algún grupo en concreto solo se subiran los paquetes de este grupo |
655 |
if [ -n $PACKAGE_TO_BUILD -a $i -ne $PACKAGE_TO_BUILD ] ; then |
656 |
break |
657 |
fi |
658 |
|
659 |
PKG_DIR=`echo $j | cut -d/ -f3` |
660 |
if [ "$PKG_DIR" == "" ] ; then |
661 |
PKG_DIR=`echo $j | cut -d/ -f2` |
662 |
fi |
663 |
|
664 |
expect <<EOD |
665 |
set timeout -1 |
666 |
spawn cadaver ${URL_REPO[$i]} |
667 |
expect (y/n) |
668 |
send y\r |
669 |
expect dav:/download/projects/${REPO_NAME[$i]}/pool/> |
670 |
send "cd $PKG_DIR\r" |
671 |
expect $PKG_DIR/> |
672 |
send "lcd $PKG_DIR\r" |
673 |
expect $PKG_DIR/> |
674 |
send "mput *.gvspki\r" |
675 |
expect "Nombre de usuario:" |
676 |
send $USER\r |
677 |
expect "Contraseña:" |
678 |
send $PASS\r |
679 |
expect $PKG_DIR/> |
680 |
send "mput *.gvspkg\r" |
681 |
expect $PKG_DIR/> |
682 |
send quit\r |
683 |
expect "cerrada." |
684 |
EOD |
685 |
|
686 |
done |
687 |
done |
688 |
|
689 |
cd $CURRENT_DIRECTORY |