summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSven Gothel <[email protected]>2011-09-14 00:17:03 +0200
committerSven Gothel <[email protected]>2011-09-14 00:17:03 +0200
commit17d64e76cc6b1f6250445b815a94d18d1632731d (patch)
treee7df15508edfe885585bbe18a1d85e76c23d5941
parent5d79c1727d53042b7537d177221c4bc1163bc180 (diff)
New FHS - Add processing of jar/jnlp atomic subfolder; jnlp file exist check; Add prom_promote_demos
-rwxr-xr-xdeployment/funcs_jars_pack_sign.sh56
-rwxr-xr-xdeployment/funcs_jnlp_relocate.sh54
-rwxr-xr-xjenkins-builds/funcs_promotion.sh110
-rwxr-xr-xjenkins-builds/promote-latest-builds.sh57
4 files changed, 185 insertions, 92 deletions
diff --git a/deployment/funcs_jars_pack_sign.sh b/deployment/funcs_jars_pack_sign.sh
index 8817575..9406ca1 100755
--- a/deployment/funcs_jars_pack_sign.sh
+++ b/deployment/funcs_jars_pack_sign.sh
@@ -25,16 +25,30 @@ local THISDIR=`pwd`
cd $wsdir/jar
-mkdir orig
-cp -a *jar orig/
-
if [ -z "$JOGAMP_DEPLOYMENT_NO_REPACK" ] ; then
+ mkdir orig
+ cp -a *jar orig/
+
for i in *.jar ; do
echo pack200 --repack $i
pack200 --repack $i
done
fi
+if [ -e atomic ] ; then
+ cd atomic
+ if [ -z "$JOGAMP_DEPLOYMENT_NO_REPACK" ] ; then
+ mkdir orig
+ cp -a *jar orig/
+
+ for i in *.jar ; do
+ echo pack200 --repack $i
+ pack200 --repack $i
+ done
+ fi
+
+fi
+
cd $THISDIR
}
@@ -58,20 +72,38 @@ local THISDIR=`pwd`
cd $wsdir/jar
-mkdir -p DLLS
-mv *natives*.jar DLLS/
-
if [ -z "$JOGAMP_DEPLOYMENT_NO_REPACK" ] ; then
+ mkdir -p DLLS
+ mv *natives*.jar DLLS/
+
for i in *.jar ; do
echo gzip -9 $i to $i.gz
gzip -9 -cv $i > $i.gz
echo pack200 -E9 $i.pack.gz $i
pack200 -E9 $i.pack.gz $i
done
+
+ mv DLLS/* .
+ rm -rf DLLS
fi
-mv DLLS/* .
-rm -rf DLLS
+if [ -e atomic ] ; then
+ cd atomic
+ if [ -z "$JOGAMP_DEPLOYMENT_NO_REPACK" ] ; then
+ mkdir -p DLLS
+ mv *natives*.jar DLLS/
+
+ for i in *.jar ; do
+ echo gzip -9 $i to $i.gz
+ gzip -9 -cv $i > $i.gz
+ echo pack200 -E9 $i.pack.gz $i
+ pack200 -E9 $i.pack.gz $i
+ done
+
+ mv DLLS/* .
+ rm -rf DLLS
+ fi
+fi
cd $THISDIR
@@ -122,6 +154,14 @@ done
mv demo-jars/* .
rm -rf demo-jars
+if [ -e atomic ] ; then
+ cd atomic
+ for i in *.jar ; do
+ echo jarsigner -storetype pkcs12 -keystore $keystore $i \"$signarg\"
+ jarsigner -storetype pkcs12 -keystore $keystore -storepass $storepass $i "$signarg"
+ done
+fi
+
cd $THISDIR
}
diff --git a/deployment/funcs_jnlp_relocate.sh b/deployment/funcs_jnlp_relocate.sh
index 4177af5..60a40b0 100755
--- a/deployment/funcs_jnlp_relocate.sh
+++ b/deployment/funcs_jnlp_relocate.sh
@@ -32,17 +32,19 @@ if [ ! -e $jnlpdir ] ; then
fi
local uri_esc=`echo $url | sed 's/\//\\\\\//g'`
-for j in $jnlpdir/*.jnlp $jnlpdir/*.html ; do
- local jb=`basename $j`
- echo "processing $j to $wsdir/$jb"
-
- sed \
- -e "s/JOGAMP_VERSION/$version/g" \
- -e "s/GLUEGEN_CODEBASE_TAG/$uri_esc/g" \
- -e "s/JOAL_CODEBASE_TAG/$uri_esc/g" \
- -e "s/JOGL_CODEBASE_TAG/$uri_esc/g" \
- -e "s/JOCL_CODEBASE_TAG/$uri_esc/g" \
- $j > $wsdir/$jb
+for j in $jnlpdir/*.jnlp $jnlpdir/atomic/*.jnlp $jnlpdir/*.html ; do
+ if [ -e $j ] ; then
+ local jb=`basename $j`
+ echo "processing $j to $wsdir/$jb"
+
+ sed \
+ -e "s/JOGAMP_VERSION/$version/g" \
+ -e "s/GLUEGEN_CODEBASE_TAG/$uri_esc/g" \
+ -e "s/JOAL_CODEBASE_TAG/$uri_esc/g" \
+ -e "s/JOGL_CODEBASE_TAG/$uri_esc/g" \
+ -e "s/JOCL_CODEBASE_TAG/$uri_esc/g" \
+ $j > $wsdir/$jb
+ fi
done
}
@@ -91,18 +93,20 @@ fi
local uri_esc=`echo $url | sed 's/\//\\\\\//g'`
local uri_demos_esc=`echo $url_demos | sed 's/\//\\\\\//g'`
-for j in $jnlpdir/*.jnlp $jnlpdir/*.html ; do
- local jb=`basename $j`
- echo "processing $j to $demos/$jb"
-
- sed \
- -e "s/JOGAMP_VERSION/$version/g" \
- -e "s/GLUEGEN_CODEBASE_TAG/$uri_esc/g" \
- -e "s/JOAL_CODEBASE_TAG/$uri_esc/g" \
- -e "s/JOGL_CODEBASE_TAG/$uri_esc/g" \
- -e "s/JOCL_CODEBASE_TAG/$uri_esc/g" \
- -e "s/DEMO_CODEBASE_TAG/$uri_demos_esc/g" \
- $j > $demos/$jb
+for j in $jnlpdir/*.jnlp $jnlpdir/atomic/*.jnlp $jnlpdir/*.html ; do
+ if [ -e $j ] ; then
+ local jb=`basename $j`
+ echo "processing $j to $demos/$jb"
+
+ sed \
+ -e "s/JOGAMP_VERSION/$version/g" \
+ -e "s/GLUEGEN_CODEBASE_TAG/$uri_esc/g" \
+ -e "s/JOAL_CODEBASE_TAG/$uri_esc/g" \
+ -e "s/JOGL_CODEBASE_TAG/$uri_esc/g" \
+ -e "s/JOCL_CODEBASE_TAG/$uri_esc/g" \
+ -e "s/DEMO_CODEBASE_TAG/$uri_demos_esc/g" \
+ $j > $demos/$jb
+ fi
done
}
@@ -125,7 +129,9 @@ fi
cd $wsdir
for i in *.jnlp ; do
- sed -i -e 's/<security>//g' -e 's/<\/security>//g' -e 's/<all-permissions\/>//g' $i
+ if [ -e $i ] ; then
+ sed -i -e 's/<security>//g' -e 's/<\/security>//g' -e 's/<all-permissions\/>//g' $i
+ fi
done
}
diff --git a/jenkins-builds/funcs_promotion.sh b/jenkins-builds/funcs_promotion.sh
index 8541e10..cd3d6cd 100755
--- a/jenkins-builds/funcs_promotion.sh
+++ b/jenkins-builds/funcs_promotion.sh
@@ -18,6 +18,7 @@ function prom_setup() {
mkdir $ldest/archive/$i/test-results/
done
mkdir $ldest/jar
+ mkdir $ldest/jar/atomic
mkdir $ldest/javadoc
mkdir $ldest/jnlp-files
mkdir $ldest/log
@@ -92,17 +93,19 @@ function prom_promote_files() {
cd $destdir
# unpack the platform 7z files
for i in $os_and_archs ; do
- cp -a $sourcedir/$module*$i.7z archive/$i/
- cp -a $sourcedir/$module*$i-test-results-*.7z archive/$i/test-results/
- local zfile=`find . -name archive/$i/$module\*$i.7z`
+ cp -a $lthisdir/$sourcedir/$module*$i.7z archive/$i/
+ cp -a $lthisdir/$sourcedir/$module*$i-test-results-*.7z archive/$i/test-results/
+ local zfile=`find archive/$i -name $module\*$i.7z`
if [ -z "$zfile" ] ; then
- echo "ERROR: No platform 7z file for module $module, sub $sub, platform $i, sdir $sourcedir"
+ echo "ERROR: No platform 7z file for module $module, platform $i, sdir $sourcedir"
exit 1
fi
- local zfolder=tmp/`basename $zfile .7z`
- echo "INFO: extract $module $i - $zfile -> $zfolder"
- prom_extract $zfile $zfolder
- prom_verify_artifacts $module log/$module.artifact.properties $zfolder/artifact.properties
+ local zfolder=`basename $zfile .7z`
+ echo "INFO: extract $module $i - $zfile -> tmp/$zfolder"
+ cd tmp
+ prom_extract ../$zfile $zfolder
+ cd ..
+ prom_verify_artifacts $module log/$module.artifact.properties tmp/$zfolder/artifact.properties
done
# copy the platform JAR files from each platform 7z folder
for i in $os_and_archs_minus_one ; do
@@ -110,7 +113,7 @@ function prom_promote_files() {
local zfile=`find archive/$i -name $module\*$i.7z`
local zfolder=tmp/`basename $zfile .7z`
for sub in $submodules ; do
- jars=`find $zfolder -name $sub\*$i\*.jar`
+ jars=`find $zfolder/jar -maxdepth 1 -name $sub\*$i.jar`
if [ -z "$jars" ] ; then
echo "ERROR: No platform JAR file for module $module, sub $sub, platform $i, sdir $sourcedir"
exit 1
@@ -118,6 +121,16 @@ function prom_promote_files() {
for j in $jars ; do
cp -av $j ./jar/
done
+ if [ -e $zfolder/jar/atomic ] ; then
+ jars=`find $zfolder/jar/atomic -maxdepth 1 -name $sub\*$i.jar`
+ if [ -z "$jars" ] ; then
+ echo "ERROR: No platform JAR file (atomic) for module $module, sub $sub, platform $i, sdir $sourcedir"
+ exit 1
+ fi
+ for j in $jars ; do
+ cp -av $j ./jar/atomic/
+ done
+ fi
done
done
# copy the master pic JAR files
@@ -125,25 +138,88 @@ function prom_promote_files() {
local zfile=`find archive/$masterpick -name $module\*$masterpick.7z`
local zfolder=tmp/`basename $zfile .7z`
for sub in $submodules ; do
- local jars=`find $zfolder -name $sub\*$masterpick\*.jar`
+ local jars=`find $zfolder/jar -maxdepth 1 -name $sub\*$masterpick.jar`
if [ -z "$jars" ] ; then
echo "ERROR: No platform JAR file for module $module, sub $sub, masterpick platform $masterpick, sdir $sourcedir"
exit 1
fi
- local jars=`find $zfolder -name $sub\*.jar`
+ if [ -e $zfolder/jar/atomic ] ; then
+ jars=`find $zfolder/jar/atomic -maxdepth 1 -name $sub\*$masterpick.jar`
+ if [ -z "$jars" ] ; then
+ echo "ERROR: No platform JAR file (atomic) for module $module, sub $sub, platform $i, sdir $sourcedir"
+ exit 1
+ fi
+ fi
+ local jars=`find $zfolder/jar -maxdepth 1 -name $sub\*.jar`
if [ -z "$jars" ] ; then
echo "ERROR: No JAR files for module $module, sub $sub, masterpick $masterpick, sdir $sourcedir"
exit 1
fi
for j in $jars ; do
- cp -av $j ./jar/
+ cp -av $j ./jar/atomic/
done
+ if [ -e $zfolder/jar/atomic ] ; then
+ local jars=`find $zfolder/jar/atomic -maxdepth 1 -name $sub\*.jar`
+ if [ -z "$jars" ] ; then
+ echo "ERROR: No JAR files (atomic) for module $module, sub $sub, masterpick $masterpick, sdir $sourcedir"
+ exit 1
+ fi
+ for j in $jars ; do
+ cp -av $j ./jar/atomic/
+ done
+ fi
done
cp -av $zfolder/jnlp-files/* ./jnlp-files/
cd $lthisdir
}
+function prom_promote_demos() {
+ local module=$1
+ shift
+ local sourcetype=$1
+ shift
+ local sourcedir=$1
+ shift
+ local destdir=$1
+
+ local lthisdir=`pwd`
+
+ local fromslave=false
+ [ "$sourcetype" = "slave" ] && local fromslave=true
+
+ echo "INFO: Promoting files: $module from $sourcedir (from-slave $fromslave)"
+ # copy the platform 7z files
+ cd $destdir
+ # unpack the 7z files
+ local sfile=`find $lthisdir/$sourcedir -name $module\*$masterpick.7z`
+ local zfile=archive/`basename $sfile -$masterpick.7z`.7z
+ cp -av $sfile $zfile
+ if [ -x "$sfile" -o -z "$zfile" ] ; then
+ echo "ERROR: No 7z file for module $module, sdir $sourcedir"
+ exit 1
+ fi
+ cp -av $sfile $zfile
+ local zfolder0=`basename $sfile .7z`
+ local zfolder=`basename $zfile .7z`
+ echo "INFO: extract $module - $zfile -> tmp/$zfolder"
+ cd tmp
+ prom_extract ../$zfile $zfolder0
+ mv $zfolder0 $zfolder
+ cd ..
+ if $fromslave ; then
+ prom_verify_artifacts $module log/$module.artifact.properties tmp/$zfolder/artifact.properties
+ fi
+
+ # copy the JAR files
+ mkdir $module
+ cp -av tmp/$zfolder/jar ./$module/
+ cp -av tmp/$zfolder/jnlp-files ./$module/
+ cp -av tmp/$zfolder/www ./$module/
+
+ cd $lthisdir
+}
+
function prom_extract() {
local zfile=$1
shift
@@ -173,17 +249,19 @@ function prom_cleanup() {
}
function prom_integrity_check() {
+ local destdir=$1
+ shift
local jardir=$1
shift
- local destdir=$1
+ local tmpdir=$1
shift
local lthisdir=`pwd`
cd $destdir
- mkdir tmp/dump
- cd tmp/dump
- for i in $lthisdir/$jardir/*.jar ; do
+ mkdir -p $tmpdir
+ cd $tmpdir
+ for i in $lthisdir/$destdir/$jardir/*.jar ; do
local bname=`basename $i`
echo -n "INFO: integrity check - $bname - "
local OK=0
diff --git a/jenkins-builds/promote-latest-builds.sh b/jenkins-builds/promote-latest-builds.sh
index 91ea450..7d21dca 100755
--- a/jenkins-builds/promote-latest-builds.sh
+++ b/jenkins-builds/promote-latest-builds.sh
@@ -97,6 +97,8 @@ function promote-latest-builds() {
joaldemosslave=`prom_lslatest joal-demos-b`
bjoaldemosslave=`prom_buildnumber_3 $joaldemosslave`
+ joaldemosmaster=`prom_lslatest joal-demos-master-b`
+ bjoaldemosmaster=`prom_buildnumber_4 $joaldemosmaster`
echo
echo JOAL DEMOS
echo
@@ -104,20 +106,9 @@ function promote-latest-builds() {
echo
echo "joal-demos.build.number=$bjoaldemosslave" >> $dest/log/aggregated.artifact.properties
- cp -a $joaldemosslave/joal-demos*.7z $dest/archive/
cp -a $joaldemosslave/artifact.properties $dest/log/joal-demos.artifact.properties
- cd $dest
-
- fname=`find archive -name joal-demos\*$masterpick.7z`
- bname=tmp/`basename $fname .7z`
- mkdir joal-demos
- cd joal-demos
- echo "INFO: extract $fname -> $bname"
- prom_extract $fname $bname
- mv $bname/jar/* .
- mv $bname/jnlp-files .
- mv $bname/www .
- cd $rootdir
+
+ prom_promote_demos joal-demos slave $joaldemosslave $dest
joglslave=`prom_lslatest jogl-b`
bjoglslave=`prom_buildnumber_2 $joglslave`
@@ -153,22 +144,11 @@ function promote-latest-builds() {
echo "jogl-demos.build.number=$bjogldemosslave" >> $dest/log/aggregated.artifact.properties
echo "jogl-demos.build.number=$bjogldemosmaster" >> $dest/log/aggregated.artifact.properties
- cp -a $jogldemosmaster/jogl-demos*.7z $dest/archive/
cp -a $jogldemosslave/artifact.properties $dest/log/jogl-demos.artifact.properties
grep jogl-demos.build.branch $jogldemosmaster/artifact.properties >> $dest/log/jogl-demos.artifact.properties
grep jogl-demos.build.commit $jogldemosmaster/artifact.properties >> $dest/log/jogl-demos.artifact.properties
- cd $dest
-
- fname=`find archive -name jogl-demos\*$masterpick.7z`
- bname=tmp/`basename $fname .7z`
- mkdir jogl-demos
- cd jogl-demos
- echo "INFO: extract $fname -> $bname"
- prom_extract $fname $bname
- mv $bname/jar/* .
- mv $bname/jnlp-files .
- mv $bname/www .
- cd $rootdir
+
+ prom_promote_demos jogl-demos master $jogldemosmaster $dest
joclslave=`prom_lslatest jocl-b`
bjoclslave=`prom_buildnumber_2 $joclslave`
@@ -199,30 +179,18 @@ function promote-latest-builds() {
echo
echo "jocl-demos.build.number=$bjocldemosslave" >> $dest/log/aggregated.artifact.properties
- cp -a $jocldemosslave/jocl-demos*7z $dest/archive/
cp -a $jocldemosslave/artifact.properties $dest/log/jocl-demos.artifact.properties
- cd $dest
-
- fname=`find archive -name jocl-demos\*$masterpick.7z`
- bname=tmp/`basename $fname .7z`
- mkdir jocl-demos
- cd jocl-demos
- echo "INFO: extract $fname -> $bname"
- prom_extract $fname $bname
- mv $bname/jar/* .
- mv $bname/jnlp-files .
- mv $bname/www .
- cd $rootdir
+ prom_promote_demos jocl-demos slave $jocldemosslave $dest
#########################################################
## Integrity Check, Cleanup, aggregation.properties
#########################################################
- prom_integrity_check $dest/jar $dest
- prom_integrity_check $dest/joal-demos $dest/joal-demos
- prom_integrity_check $dest/jogl-demos $dest/jogl-demos
- prom_integrity_check $dest/jocl-demos $dest/jocl-demos
+ prom_integrity_check $dest jar tmp/dump
+ prom_integrity_check $dest joal-demos/jar tmp/dump
+ prom_integrity_check $dest jogl-demos/jar tmp/dump
+ prom_integrity_check $dest jocl-demos/jar tmp/dump
prom_cleanup $dest
@@ -280,9 +248,10 @@ function promote-latest-builds() {
echo NO ERRORS detected
fi
- cp -av $logfile $wsdir
+ mv $logfile $wsdir/log/
}
+rm -f $logfile
promote-latest-builds 2>&1 | tee $logfile