Revision 1168 org.gvsig.raster/trunk/org.gvsig.raster/package.sh

View differences:

package.sh
2 2

  
3 3
if [ "$1" = "--help" ] ; then
4 4
   echo "Usage: First parameter:"
5
   echo "          -update"
5 6
   echo "          -package: crear paquetes"
6 7
   echo "          -upload: subir al repositorio"
7 8
   echo "          -tags: crear tags buildNumber_VERSION"
9
   echo "          -ticket: crear fichero de texto con las URLS de los índices para el ticket" 
8 10
   echo "Para hacer nuevo empaquetado"
9
   echo "   1-Comprobar variables VERSION, FIX_VERSION, RELEASE y URLs"
10
   echo "   2-Si se ha metido algún paquete nuevo actualizar la variable PACKAGES, PROJECTS y WIN_PROJECTS si fuera necesario"
11
   echo "   1-Comprobar variables VERSION, FIX_VERSION, RELEASE, PACKAGE_DIRECTORY, URL, URL_TAGS, USER y PASS"
12
   echo "   2-Si se ha metido algún paquete nuevo actualizar la variable PROJECT y PLUGINS o ARCH_DEP_PLUGIN si fuera necesario"
13
   echo "   3-Ejecutar ./package.sh -update para actualizar los proyectos"
14
   echo "   4-Ejecutar ./package.sh -package para empaquetar en PACKAGE_DIRECTORY"
15
   echo "   5-Ejecutar ./package.sh -upload para subir a URL"
16
   echo "   6-Ejecutar ./package.sh -tags para crear tags en URL_TAGS"
17
   echo "Para revertir cambios del SVN ./package.sh -revert"
11 18
   exit
12 19
fi
13 20

  
......
16 23
RELEASE=devel
17 24
URL=https://devel.gvsig.org/download/projects/Raster/pool/
18 25
URL_TAGS=https://devel.gvsig.org/svn/gvsig-raster/
26
PACKAGE_DIRECTORY=/home/nacho/Workspaces/gvsig-2.0/build/product/install/pool
27
PATH_TICKET=/tmp/ticket.txt
19 28
USER=nbrodin
20
PASS=
29
PASS=chkdsk
21 30

  
22 31
PLATFORM="linux"
23 32
COMPILER="gcc4"
......
30 39
DISTRIBUTION_B="nt"
31 40

  
32 41
#pool packages
33
MAIN_PACKAGE=1 #Posición 1 obligatoria tilecache
34
PACKAGES="org.gvsig.raster.gdal.app 
35
org.gvsig.raster.tilecache.app  
36
org.gvsig.raster.tools.app.basic 
37
org.gvsig.raster.tools.app.multifile 
38
org.gvsig.raster.wmts.app.wmtsclient 
39
org.gvsig.raster.wms.app.wmsclient 
40
org.gvsig.raster.wcs.app.wcsclient 
41
org.gvsig.raster.ermapper.app
42
org.gvsig.raster.lizardtech.app 
43
org.gvsig.raster.netcdf.app.netcdfclient 
44
org.gvsig.raster.postgis.app.postgisrasterclient"
42
MAIN_PACKAGE=0 #Posición 1 obligatoria tilecache en ARCH_DEP_PLUGINS
45 43

  
46 44
#Plugin list
47 45
PLUGINS="org.gvsig.raster.gdal/org.gvsig.raster.gdal.app 
48
org.gvsig.raster.tilecache/org.gvsig.raster.tilecache.app 
49 46
org.gvsig.raster.tools/org.gvsig.raster.tools.app/org.gvsig.raster.tools.app.basic 
50 47
org.gvsig.raster.tools/org.gvsig.raster.tools.app/org.gvsig.raster.tools.app.multifile 
51 48
org.gvsig.raster.wmts/org.gvsig.raster.wmts.app/org.gvsig.raster.wmts.app.wmtsclient 
52 49
org.gvsig.raster.wms/org.gvsig.raster.wms.app/org.gvsig.raster.wms.app.wmsclient 
53 50
org.gvsig.raster.wcs/org.gvsig.raster.wcs.app/org.gvsig.raster.wcs.app.wcsclient 
54
org.gvsig.raster.ermapper/org.gvsig.raster.ermapper.app 
55
org.gvsig.raster.lizardtech/org.gvsig.raster.lizardtech.app 
56 51
org.gvsig.raster.netcdf/org.gvsig.raster.netcdf.app/org.gvsig.raster.netcdf.app.netcdfclient 
57 52
org.gvsig.raster.postgis/org.gvsig.raster.postgis.app/org.gvsig.raster.postgis.app.postgisrasterclient"
53

  
54
ARCH_DEP_PLUGINS="org.gvsig.raster.tilecache/org.gvsig.raster.tilecache.app
55
org.gvsig.raster.ermapper/org.gvsig.raster.ermapper.app
56
org.gvsig.raster.lizardtech/org.gvsig.raster.lizardtech.app"
58 57
 
59 58
#eclipse projects
60 59
PROJECTS="org.gvsig.raster.cache 
......
70 69
org.gvsig.raster.netcdf 
71 70
org.gvsig.raster.postgis"
72 71

  
73
WIN_PROJECTS="org.gvsig.raster.tilecache
74
org.gvsig.raster.ermapper 
75
org.gvsig.raster.lizardtech"
76 72

  
77
WIN_PACKAGES="org.gvsig.raster.tilecache.app
78
org.gvsig.raster.ermapper.app 
79
org.gvsig.raster.lizardtech.app"
80

  
81 73
CLASSIFIER=$PLATFORM"-"$DISTRIBUTION"-"$COMPILER"-"$ARCH"-"$TYPE
82 74

  
83 75
COMMAND_PARAMS="install -P create-installer -Dnative-platform="$PLATFORM" -Dnative-compiler="$COMPILER" -Dnative-arch="$ARCH" -Dnative-distribution="$DISTRIBUTION" -Dlibrary-type="$TYPE" -Dnative-classifier="$CLASSIFIER" -Pinstall-extensions -Dmaven.test.skip"
84 76

  
77
#-------------------------------------------------
85 78
#Gets the number of the version
86
#$1: Package name
87
getVersionPackage( ) {
88
  c=0;
89
  for i in $PACKAGES
90
    do
91
      if [ $1 == $i ]; then
92
	echo ${VER[c]};
93
      fi
94
      let "c=c+1"; 
95
    done
96
}
97

  
98
#Gets the number of the version
99 79
#$1: Project name
80
#-------------------------------------------------
100 81
getVersionProject( ) {
101 82
  c=-1;
102 83
  for i in $PLUGINS
......
108 89
        return;
109 90
      fi
110 91
    done
111
    echo ${VER[MAIN_PACKAGE]}
92
  c=-1;
93
  for i in $ARCH_DEP_PLUGINS
94
    do
95
      let "c=c+1";
96
      AUX=`echo $i | grep "$1\/"`; 
97
      if [ "$AUX" != "" ]; then
98
        echo ${VER_ARCH_DEP[c]}
99
        return;
100
      fi
101
    done
102
  echo ${VER_ARCH_DEP[MAIN_PACKAGE]}
112 103
}
113 104

  
105
#-------------------------------------------------
114 106
#Loads the array of versions
115 107
#Be careful. It has to be called after package generation
108
#-------------------------------------------------
116 109
loadVersion() {
117 110
  cont=0;
118 111
  CURRENT_DIR=`pwd`
......
122 115
       cd $i
123 116
       if [ -f buildNumber.properties ]; then
124 117
         VER[cont]=`cat buildNumber.properties | grep "buildNumber=" | cut -d'=' -f2`
125
	 #echo "===>>>>${VER_PLUGIN[cont]}"
118
	 #echo "===>>>>$i---->${VER[cont]}"
126 119
         let "cont=cont+1"; 
127 120
       fi
128 121
     fi
129 122
     cd $CURRENT_DIR
130 123
   done
124

  
125
  cont=0;
126
  for i in $ARCH_DEP_PLUGINS
127
   do
128
     if [ -d $i ]; then
129
       cd $i
130
       if [ -f buildNumber.properties ]; then
131
         VER_ARCH_DEP[cont]=`cat buildNumber.properties | grep "buildNumber=" | cut -d'=' -f2`
132
	 #echo "===>>>*$i---->${VER_ARCH_DEP[cont]}"
133
         let "cont=cont+1"; 
134
       fi
135
     fi
136
     cd $CURRENT_DIR
137
   done
131 138
}
132 139

  
133 140

  
141
#-------------------------------------------------
142
if [ "$1" = "-update" ] ; then
143
 for i in $PROJECTS
144
    do
145
      cd $i
146
      echo "-----------------"
147
      echo "Cambiando a"....$i
148
      echo "Ejecutando svn update "
149
      svn update;
150
      cd ..
151
    done
152
fi
134 153

  
154

  
155
#-------------------------------------------------
135 156
if [ "$1" = "-package" ] ; then
136 157

  
137 158

  
......
154 175

  
155 176
  COMMAND_PARAMS="install -P create-installer -Dnative-platform="$PLATFORM_B" -Dnative-compiler="$COMPILER_B" -Dnative-arch="$ARCH" -Dnative-distribution="$DISTRIBUTION_B" -Dlibrary-type="$TYPE" -Dnative-classifier="$CLASSIFIER" -Pinstall-extensions -Dmaven.test.skip"
156 177

  
157
  for i in $WIN_PROJECTS
178
  for i in $ARCH_DEP_PLUGINS #Plugins architecture dependent
158 179
    do
159
      cd $i
180
      pad=`echo $i | cut -d/ -f1` #Projects architecture dependent
181
      cd $pad
160 182
      echo "-----------------"
161
      echo "Cambiando a"....$i
183
      echo "Cambiando a"....$pad
162 184
      echo "Ejecutando mvn "$COMMAND_PARAMS
163 185
      svn revert --recursive .
164 186
      mvn $COMMAND_PARAMS;
......
170 192

  
171 193
loadVersion
172 194

  
195
#-------------------------------------------------
196
#SOLO TEST
197
#-------------------------------------------------
198
if [ "$1" = "-revert" ] ; then
199
 for i in $PROJECTS
200
    do
201
      cd $i
202
      echo "-----------------"
203
      echo "Cambiando a"....$i
204
      echo "Ejecutando svn update "
205
      svn revert --recursive .
206
      cd ..
207
    done
208
fi
173 209

  
210
#-------------------------------------------------
211
#SOLO TEST
212
#-------------------------------------------------
213
if [ "$1" = "-ticket" ] ; then
214
 rm $PATH_TICKET 2> /dev/null
215
 cont=0;
216
 for i in $PLUGINS
217
    do
218
      package=`echo $i | cut -d/ -f3`
219
      if [ "$package" == "" ] ; then 
220
          package=`echo $i | cut -d/ -f2`
221
      fi
222
      echo "$URL$package/gvSIG-desktop-$VERSION-$package-$VERSION-$FIX_VERSION-${VER[$cont]}-$RELEASE-all-all-j1_5.gvspki" >> $PATH_TICKET
223
      echo "" >> $PATH_TICKET
224
      let "cont=cont+1";
225
    done
226
 cont=0;
227
 for i in $ARCH_DEP_PLUGINS
228
    do
229
      package=`echo $i | cut -d/ -f3`
230
      if [ "$package" == "" ] ; then 
231
          package=`echo $i | cut -d/ -f2`
232
      fi
233
      echo "$URL$package/gvSIG-desktop-$VERSION-$package-$VERSION-$FIX_VERSION-${VER_ARCH_DEP[$cont]}-$RELEASE-lin-x86-j1_5.gvspki" >> $PATH_TICKET
234
      echo "" >> $PATH_TICKET
235
      echo "$URL$package/gvSIG-desktop-$VERSION-$package-$VERSION-$FIX_VERSION-${VER_ARCH_DEP[$cont]}-$RELEASE-win-x86-j1_5.gvspki" >> $PATH_TICKET
236
      echo "" >> $PATH_TICKET
237
      let "cont=cont+1";
238
    done
239
  echo "Creado fichero de URLs en "$PATH_TICKET
240
fi
174 241

  
242
#-------------------------------------------------
175 243
if [ "$1" = "-tags" ] ; then
176 244

  
177 245
 echo "***********************************"
......
183 251
   do
184 252
     PVERSION=`getVersionProject $i`
185 253
     echo "svn copy $URL_TAGS$i/trunk $URL_TAGS$i/tags/buildNumber_$PVERSION -m \"Tag build $PVERSION\""
254
     #echo "svn copy $URL_TAGS$i/trunk $URL_TAGS$i/tags/buildNumber_$PVERSION -m \"Tag build $PVERSION\""
186 255
   done 
187 256
fi 
188 257

  
189 258

  
190 259

  
191

  
192
if [ "$1" = "-revert" ] ; then
193

  
194
 echo "***********************************"
195
 echo "Reverting build numbers"
196
 echo "***********************************"
197

  
198

  
199
 for i in $PROJECTS
200
   do
201
     cd $i
202
     svn revert --recursive .
203
     cd ..
204
   done 
205
fi 
206

  
207
 
208

  
209

  
210

  
260
#-------------------------------------------------
211 261
if [ "$1" != "-upload" ] ; then
212 262
  exit
213 263
fi  
214 264

  
215

  
216 265
echo "***********************************"
217 266
echo "Uploading"
218 267
echo "***********************************"
219 268

  
269
CURRENT_DIRECTORY=`pwd`;
270
echo "Cambiando a..."$PACKAGE_DIRECTORY
271
cd $PACKAGE_DIRECTORY
220 272

  
221
for j in gvspkg gvspki
222
do
223 273
cont=0;
224
for i in $PACKAGES
274
for i in $PLUGINS
225 275
do
276
package=`echo $i | cut -d/ -f3`
277
if [ "$package" == "" ] ; then 
278
package=`echo $i | cut -d/ -f2`
279
fi
226 280
/usr/bin/expect <<EOD
227 281
spawn cadaver $URL
228 282
expect (y/n)
229 283
send y\r
230 284
expect dav:/download/projects/Raster/pool/>
231
send "cd $i\r"
232
expect $i/>
233
send "lcd $i\r"
234
expect $i/>
235
send "put gvSIG-desktop-$VERSION-$i-$VERSION-$FIX_VERSION-${VER[$cont]}-$RELEASE-lin-x86-j1_5.$j\r"
285
send "cd $package\r"
286
expect $package/>
287
send "lcd $package\r"
288
expect $package/>
289
send "put gvSIG-desktop-$VERSION-$package-$VERSION-$FIX_VERSION-${VER[$cont]}-$RELEASE-all-all-j1_5.gvspkg\r"
236 290
expect "Nombre de usuario:"
237 291
send $USER\r
238 292
expect "Contraseña:"
239 293
send $PASS\r
240
expect $i/>
294
expect $package/>
295
send "put gvSIG-desktop-$VERSION-$package-$VERSION-$FIX_VERSION-${VER[$cont]}-$RELEASE-all-all-j1_5.gvspki\r"
296
expect $package/>
241 297
send quit\r
242 298
expect "cerrada."
243 299
EOD
244 300
let "cont=cont+1";
245 301
done
246
done
247 302

  
248 303

  
249
for j in gvspkg gvspki
250
do
251 304
cont=0;
252
for i in $WIN_PACKAGES
305
for i in $ARCH_DEP_PLUGINS
253 306
do
307
pckgad=`echo $i | cut -d/ -f2` #Packages architecture dependent
254 308
/usr/bin/expect <<EOD
255 309
spawn cadaver $URL
256 310
expect (y/n)
257 311
send y\r
258 312
expect dav:/download/projects/Raster/pool/>
259
send "cd $i\r"
260
expect $i/>
261
send "lcd $i\r"
262
expect $i/>
263
send "put gvSIG-desktop-$VERSION-$i-$VERSION-$FIX_VERSION-${WIN_VER[$cont]}-$RELEASE-win-x86-j1_5.$j\r"
313
send "cd $pckgad\r"
314
expect $pckgad/>
315
send "lcd $pckgad\r"
316
expect $pckgad/>
317
send "put gvSIG-desktop-$VERSION-$pckgad-$VERSION-$FIX_VERSION-${VER_ARCH_DEP[$cont]}-$RELEASE-lin-x86-j1_5.gvspkg\r"
264 318
expect "Nombre de usuario:"
265 319
send $USER\r
266 320
expect "Contraseña:"
267 321
send $PASS\r
268
expect $i/>
322
expect $pckgad/>
323
send "put gvSIG-desktop-$VERSION-$pckgad-$VERSION-$FIX_VERSION-${VER_ARCH_DEP[$cont]}-$RELEASE-lin-x86-j1_5.gvspki\r"
324
expect $pckgad/>
325
send "put gvSIG-desktop-$VERSION-$pckgad-$VERSION-$FIX_VERSION-${VER_ARCH_DEP[$cont]}-$RELEASE-win-x86-j1_5.gvspkg\r"
326
expect $pckgad/>
327
send "put gvSIG-desktop-$VERSION-$pckgad-$VERSION-$FIX_VERSION-${VER_ARCH_DEP[$cont]}-$RELEASE-win-x86-j1_5.gvspki\r"
328
expect $pckgad/>
269 329
send quit\r
270 330
expect "cerrada."
271 331
EOD
272 332
let "cont=cont+1";
273 333
done
274 334

  
335
cd $CURRENT_DIRECTORY

Also available in: Unified diff