Return-Path: Mailing-List: contact gump-help@jakarta.apache.org; run by ezmlm Delivered-To: mailing list gump@jakarta.apache.org Received: (qmail 31051 invoked by uid 500); 23 Oct 2003 19:38:07 -0000 Received: (qmail 31048 invoked from network); 23 Oct 2003 19:38:07 -0000 Received: from unknown (HELO minotaur.apache.org) (209.237.227.194) by daedalus.apache.org with SMTP; 23 Oct 2003 19:38:07 -0000 Received: (qmail 16712 invoked by uid 1728); 23 Oct 2003 19:38:17 -0000 Date: 23 Oct 2003 19:38:17 -0000 Message-ID: <20031023193817.16711.qmail@minotaur.apache.org> From: ajack@apache.org To: jakarta-gump-cvs@apache.org Subject: cvs commit: jakarta-gump/python/gump launcher.py logic.py utils.py document.py conf.py X-Spam-Rating: daedalus.apache.org 1.6.2 0/1000/N ajack 2003/10/23 12:38:17 Modified: project krysalis-ruper.xml krysalis-centipede.xml krysalis-template-smoketest.xml profile gump.xml minimal-profile.xml . .cvsignore gumpy.sh gumpytest.sh python/gump launcher.py logic.py utils.py document.py conf.py Removed: profile krysalis.xml Log: Try N+1(or more) on CLASSPATH, and: 1) Cleanup file that ought not be needed any more 2) gumpy cleans tmp directories 3) Added some gump python tests 4) Starting to clean up some brute force inherit="all" 5) Show first/last good builds as date/time not float 6) Only show CLASSPATH in doc if the project will be built w/ ant/script Revision Changes Path 1.13 +3 -4 jakarta-gump/project/krysalis-ruper.xml Index: krysalis-ruper.xml =================================================================== RCS file: /home/cvs/jakarta-gump/project/krysalis-ruper.xml,v retrieving revision 1.12 retrieving revision 1.13 diff -u -r1.12 -r1.13 --- krysalis-ruper.xml 7 Sep 2003 20:49:16 -0000 1.12 +++ krysalis-ruper.xml 23 Oct 2003 19:38:15 -0000 1.13 @@ -67,7 +67,7 @@ - + @@ -97,8 +97,7 @@ - - + @@ -125,7 +124,7 @@ - + 1.8 +14 -15 jakarta-gump/project/krysalis-centipede.xml Index: krysalis-centipede.xml =================================================================== RCS file: /home/cvs/jakarta-gump/project/krysalis-centipede.xml,v retrieving revision 1.7 retrieving revision 1.8 diff -u -r1.7 -r1.8 --- krysalis-centipede.xml 11 Oct 2003 22:39:07 -0000 1.7 +++ krysalis-centipede.xml 23 Oct 2003 19:38:15 -0000 1.8 @@ -95,19 +95,18 @@ - - - - - - - - - - - - - + + + + + + + + + + + + @@ -139,8 +138,8 @@ - - + + 1.3 +46 -46 jakarta-gump/project/krysalis-template-smoketest.xml Index: krysalis-template-smoketest.xml =================================================================== RCS file: /home/cvs/jakarta-gump/project/krysalis-template-smoketest.xml,v retrieving revision 1.2 retrieving revision 1.3 diff -u -r1.2 -r1.3 --- krysalis-template-smoketest.xml 2 Oct 2003 06:59:12 -0000 1.2 +++ krysalis-template-smoketest.xml 23 Oct 2003 19:38:16 -0000 1.3 @@ -1,46 +1,46 @@ - - - - - - Smoke Test is for testing Centipede. - Smoke Test is a template for a Centipede module. It is primarly - used for testing Centipede. - - Make Centipede project that covers all cents but test quickly. - - Centipede needs a module other than his own for serious testing. - Krysalis Community Project - This software is released under the Krysalis Patchy - Software License 1.1_01. For detailed legal and licensing issues, please - read the LICENSE.* files in the /legal directory. - - This software includes software developed by the Apache Software - Foundation (http://www.apache.org/). - - - - smoketest - - - - - - - - - - - - - - - - - - - + + + + + + Smoke Test is for testing Centipede. + Smoke Test is a template for a Centipede module. It is primarly + used for testing Centipede. + + Make Centipede project that covers all cents but test quickly. + + Centipede needs a module other than his own for serious testing. + Krysalis Community Project + This software is released under the Krysalis Patchy + Software License 1.1_01. For detailed legal and licensing issues, please + read the LICENSE.* files in the /legal directory. + + This software includes software developed by the Apache Software + Foundation (http://www.apache.org/). + + + + smoketest + + + + + + + + + + + + + + + + + + + 1.270 +1 -1 jakarta-gump/profile/gump.xml Index: gump.xml =================================================================== RCS file: /home/cvs/jakarta-gump/profile/gump.xml,v retrieving revision 1.269 retrieving revision 1.270 diff -u -r1.269 -r1.270 --- gump.xml 17 Oct 2003 23:13:26 -0000 1.269 +++ gump.xml 23 Oct 2003 19:38:16 -0000 1.270 @@ -1,5 +1,5 @@ - + 1.4 +0 -5 jakarta-gump/profile/minimal-profile.xml Index: minimal-profile.xml =================================================================== RCS file: /home/cvs/jakarta-gump/profile/minimal-profile.xml,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- minimal-profile.xml 17 Oct 2003 23:13:26 -0000 1.3 +++ minimal-profile.xml 23 Oct 2003 19:38:16 -0000 1.4 @@ -58,10 +58,5 @@ - - - - 1.16 +1 -0 jakarta-gump/.cvsignore Index: .cvsignore =================================================================== RCS file: /home/cvs/jakarta-gump/.cvsignore,v retrieving revision 1.15 retrieving revision 1.16 diff -u -r1.15 -r1.16 --- .cvsignore 5 Sep 2003 23:08:48 -0000 1.15 +++ .cvsignore 23 Oct 2003 19:38:16 -0000 1.16 @@ -14,3 +14,4 @@ tmp *~ LOCAL-ENV.bat +local-env.sh 1.16 +22 -16 jakarta-gump/gumpy.sh Index: gumpy.sh =================================================================== RCS file: /home/cvs/jakarta-gump/gumpy.sh,v retrieving revision 1.15 retrieving revision 1.16 diff -u -r1.15 -r1.16 --- gumpy.sh 14 Oct 2003 05:29:36 -0000 1.15 +++ gumpy.sh 23 Oct 2003 19:38:16 -0000 1.16 @@ -34,6 +34,7 @@ export GUMPY_VERSION="1.0.3" export GUMP_PYTHON=$GUMP/python export GUMP_TMP=$GUMP/tmp +export GUMP_WS_TMP=$GUMP_WS/tmp export GUMP_HOST=`hostname -s` export GUMP_DATE=`date` export GUMP_LOG=$GUMP_LOG_DIR/gumpy.html @@ -99,20 +100,28 @@ cp -R `grep profile $GUMP_HOST.xml | cut -d\" -f2` $GUMP_PROFILE_LOG_DIR # +########################################################## +# # Preliminary cleanup # -cd $GUMP_TMP -if [ -f check_forrest.txt ] ; then - rm check_forrest.txt + +# Gump level tmp +if [ -d $GUMP_TMP ] ; then + cd $GUMP_TMP + rm -f *.txt fi -if [ -f forrest.txt ] ; then - rm forrest.txt +# Gump work tmp +if [ -d $GUMP_WS_TMP ] ; then + cd $GUMP_WS/tmp + rm -f *.txt fi -if [ -f $GUMP_WS/forrest/build/tmp/brokenlinks.txt ] ; then - rm $GUMP_WS/forrest/build/tmp/brokenlinks.txt +# Clear the forrest build area... +if [ -d $GUMP_WS/forrest/build/ ] ; then + rm -rf $GUMP_WS/forrest/build/ fi # +########################################################### # Do a CVS update # echo $SEPARATOR >> $GUMP_LOG @@ -122,7 +131,7 @@ # -# Set the PYTHONPATH & cd appropriately +# Set the PYTHONPATH # export PYTHONPATH=$GUMP_PYTHON @@ -179,16 +188,20 @@ cd $GUMP echo \ >> $GUMP_LOG -pkill -P $$ -# $Log$ -# Revision 1.15 2003/10/14 05:29:36 ajack -# Merged check.py into integrate.py (so removed from gumpy.sh) # -# Revision 1.2 2003/05/30 22:02:56 nickchalko -# Fixing incomplete update from Adam -# PR: -# Obtained from: -# Submitted by:Adam Jack ajack@TrySybase.com -# Reviewed by: +# Ensure nothing we started (directly) is left running after we end... +# +pkill -KILL -P $$ + +# $Log$ +# Revision 1.16 2003/10/23 19:38:16 ajack +# Try N+1(or more) on CLASSPATH, and: +# +# 1) Cleanup file that ought not be needed any more +# 2) gumpy cleans tmp directories +# 3) Added some gump python tests +# 4) Starting to clean up some brute force inherit="all" +# 5) Show first/last good builds as date/time not float +# 6) Only show CLASSPATH in doc if the project will be built w/ ant/script # 1.2 +7 -0 jakarta-gump/gumpytest.sh Index: gumpytest.sh =================================================================== RCS file: /home/cvs/jakarta-gump/gumpytest.sh,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- gumpytest.sh 22 Oct 2003 20:00:50 -0000 1.1 +++ gumpytest.sh 23 Oct 2003 19:38:16 -0000 1.2 @@ -7,3 +7,10 @@ export pwd + +# +# Perform some CLASSPATH checks +# +echo "CLASSPATH checks" +python gump/logic.py krysalis-ruper-ant +python gump/logic.py commons-graph \ No newline at end of file 1.30 +31 -11 jakarta-gump/python/gump/launcher.py Index: launcher.py =================================================================== RCS file: /home/cvs/jakarta-gump/python/gump/launcher.py,v retrieving revision 1.29 retrieving revision 1.30 diff -u -r1.29 -r1.30 --- launcher.py 20 Oct 2003 23:58:37 -0000 1.29 +++ launcher.py 23 Oct 2003 19:38:16 -0000 1.30 @@ -241,6 +241,7 @@ self.status=CMD_STATUS_NOT_YET_RUN self.output=None self.elapsed=0 + self.signal=0 self.exit_code=-1 def overview(self,indent): @@ -250,6 +251,8 @@ overview += indent+"Output: " + self.output if self.elapsed: overview += indent+"Elapsed: " + str(self.elapsed) + if self.signal: + overview += indent+"Signal: " + str(self.signal) if self.exit_code: overview += indent+"ExitCode: " + str(self.exit_code) @@ -383,22 +386,39 @@ timer.setDaemon(1) timer.start() + # # Execute Command & Wait - result.exit_code=os.system(execString + ' >>' + str(outputFile) + ' 2>&1') + # + waitcode=os.system(execString + ' >>' + str(outputFile) + ' 2>&1') - # Stop it (if still running) - timer.cancel() - + # + # The resturn code (from wait) is (on Unix): + # + # a 16 bit number + # top byte = exit status + # low byte = signal that killed it + # + result.signal=(waitcode & 0xFF) + result.exit_code=(waitcode & 0xFF00) + + # + # Assume timed out if this is not running... + # + if not timer.isAlive(): + result.status=CMD_STATUS_TIMED_OUT + log.error('Command timed out. [' + execString + '] [' + str(timeout) + '] seconds.') # Process Outputs (exit_code and stderr/stdout) - if result.exit_code < 0: - result.status=CMD_STATUS_TIMED_OUT - log.error('Failed to launch/execute command. [' + execString + ']. ExitCode: ' + str(result.exit_code)) elif result.exit_code > 0: - result.status=CMD_STATUS_FAILED - log.error('Failed to launch/execute command. [' + execString + ']. ExitCode: ' + str(result.exit_code)) + result.status=CMD_STATUS_FAILED + log.error('Failed to launch/execute command. [' + execString + ']. ExitCode: ' + str(result.exit_code)) else: - result.status=CMD_STATUS_SUCCESS - + result.status=CMD_STATUS_SUCCESS + + # + # Stop it (if still running) + # + timer.cancel() + # # Clean Up Empty Output Files # 1.39 +66 -36 jakarta-gump/python/gump/logic.py Index: logic.py =================================================================== RCS file: /home/cvs/jakarta-gump/python/gump/logic.py,v retrieving revision 1.38 retrieving revision 1.39 diff -u -r1.38 -r1.39 --- logic.py 22 Oct 2003 21:49:39 -0000 1.38 +++ logic.py 23 Oct 2003 19:38:16 -0000 1.39 @@ -218,6 +218,13 @@ return result +def hasBuildCommand(project): + hasBuild=0 + # I.e has an Path EntryContributorInstigatorAnnotation') - classpath=getClasspathList(project,workspace,context) - paths=0 - for path in classpath: - if isinstance(path,AnnotatedPath): - pcontext=path.context - ppcontext=path.pcontext - note=path.note - else: - pcontext=context - ppcontext=None - note='' - startTableRowXDoc(x) - insertTableDataXDoc(x, path) - - # Contributor - insertTableDataXDoc(x, getContextLink(pcontext)) - - # Instigator (if not Gump) - link='' - if ppcontext: link=getContextLink(ppcontext) - insertTableDataXDoc(x, link) - - # Additional Notes... - insertTableDataXDoc(x, note) - endTableRowXDoc(x) - paths+=1 - if not paths: - startTableRowXDoc(x) - insertTableDataXDoc(x,"None") - endTableRowXDoc(x) - endTableXDoc(x) - endSectionXDoc(x) + if hasBuildCommand(project): + startSectionXDoc(x,'Classpath') + startTableXDoc(x) + x.write(' Path EntryContributorInstigatorAnnotation') + classpath=getClasspathList(project,workspace,context) + paths=0 + for path in classpath: + if isinstance(path,AnnotatedPath): + pcontext=path.context + ppcontext=path.pcontext + note=path.note + else: + pcontext=context + ppcontext=None + note='' + startTableRowXDoc(x) + insertTableDataXDoc(x, path) + + # Contributor + insertTableDataXDoc(x, getContextLink(pcontext)) + + # Instigator (if not Gump) + link='' + if ppcontext: link=getContextLink(ppcontext) + insertTableDataXDoc(x, link) + + # Additional Notes... + insertTableDataXDoc(x, note) + endTableRowXDoc(x) + paths+=1 + + if not paths: + startTableRowXDoc(x) + insertTableDataXDoc(x,"None") + endTableRowXDoc(x) + + endTableXDoc(x) + endSectionXDoc(x) # x.write('

Project Config : XML

' \ # % (getModuleProjectRelativeUrl(modulename,projectcontext.name)) ) @@ -776,8 +779,7 @@ x.write(' %s' % (workTypeName(work.type))) x.write(' %s%s%s' \ % ( stateName(work.status), \ - time.strftime(setting.datetimeformat, \ - time.localtime(work.result.start_time)), \ + secsToDate(work.result.start_time), \ secsToString(work.secs))) x.write(' ') x.write(' \n') 1.34 +5 -5 jakarta-gump/python/gump/conf.py Index: conf.py =================================================================== RCS file: /home/cvs/jakarta-gump/python/gump/conf.py,v retrieving revision 1.33 retrieving revision 1.34 diff -u -r1.33 -r1.34 --- conf.py 22 Oct 2003 13:54:33 -0000 1.33 +++ conf.py 23 Oct 2003 19:38:16 -0000 1.34 @@ -111,14 +111,14 @@ class setting: """Configuration of hardcoded settings""" - version="2.0.1-alpha-0006" + version="2.0.1-alpha-0007" # :TODO: Add "minimum checks later..." ws_version="0.4" datetimeformat="%a, %d %b %Y %H:%M:%S (%Z)" - timeout=60*30 # 30 minutes (in seconds) + timeout=60*40 # 40 minutes (in seconds) class switch: """Configuration of switches """