diff options
author | Sven Gothel <[email protected]> | 2011-09-14 00:17:03 +0200 |
---|---|---|
committer | Sven Gothel <[email protected]> | 2011-09-14 00:17:03 +0200 |
commit | 17d64e76cc6b1f6250445b815a94d18d1632731d (patch) | |
tree | e7df15508edfe885585bbe18a1d85e76c23d5941 | |
parent | 5d79c1727d53042b7537d177221c4bc1163bc180 (diff) |
New FHS - Add processing of jar/jnlp atomic subfolder; jnlp file exist check; Add prom_promote_demos
-rwxr-xr-x | deployment/funcs_jars_pack_sign.sh | 56 | ||||
-rwxr-xr-x | deployment/funcs_jnlp_relocate.sh | 54 | ||||
-rwxr-xr-x | jenkins-builds/funcs_promotion.sh | 110 | ||||
-rwxr-xr-x | jenkins-builds/promote-latest-builds.sh | 57 |
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 |