Comment: | Added some checks to ensure directories are there before changing to them, generalized some of the tasks in installall. Removed writing of environment in mt_ezstep updated the manual with brief mention on how to get the environment from one step to another |
---|---|
Downloads: | Tarball | ZIP archive | SQL archive |
Timelines: | family | ancestors | descendants | both | v1.55 |
Files: | files | file ages | folders |
SHA1: |
908b883b86a8add5ff2325a29ac6b109 |
User & Date: | matt on 2013-08-04 01:01:36 |
Other Links: | branch diff | manifest | tags |
2013-08-04
| ||
18:34 | Made fs the default transport as it seems to work much better now check-in: de5a88efa7 user: matt tags: v1.55 | |
01:01 | Added some checks to ensure directories are there before changing to them, generalized some of the tasks in installall. Removed writing of environment in mt_ezstep updated the manual with brief mention on how to get the environment from one step to another check-in: 908b883b86 user: matt tags: v1.55 | |
2013-08-03
| ||
00:30 | Several additons to installall flow check-in: 33f5118b72 user: matt tags: v1.55 | |
Modified docs/manual/megatest_manual.html from [b1f57fca91] to [97d3fb8ca7].
︙ | ︙ | |||
1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 | # diff diff %file1% %file2% # This builtin rule is applied if a <waivername>.logpro file exists # logpro diff %file1% %file2% | logpro %waivername%.logpro %waivername%.html</tt></pre> </div></div> </div> </div> </div> </div> <div class="sect1"> <h2 id="_example_appendix">Appendix A: Example Appendix</h2> <div class="sectionbody"> <div class="paragraph"><p>One or more optional appendixes go here at section level zero.</p></div> <div class="sect2"> | > > > > > > > > | 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 | # diff diff %file1% %file2% # This builtin rule is applied if a <waivername>.logpro file exists # logpro diff %file1% %file2% | logpro %waivername%.logpro %waivername%.html</tt></pre> </div></div> </div> </div> <div class="sect2"> <h3 id="_ezsteps">Ezsteps</h3> <div class="paragraph"><p>To transfer the environment to the next step you can do the following:</p></div> <div class="listingblock"> <div class="content"> <pre><tt>$MT_MEGATEST -env2file .ezsteps/${stepname}</tt></pre> </div></div> </div> </div> </div> <div class="sect1"> <h2 id="_example_appendix">Appendix A: Example Appendix</h2> <div class="sectionbody"> <div class="paragraph"><p>One or more optional appendixes go here at section level zero.</p></div> <div class="sect2"> |
︙ | ︙ | |||
1405 1406 1407 1408 1409 1410 1411 | </div> </div> </div> <div id="footnotes"><hr /></div> <div id="footer"> <div id="footer-text"> Version 1.0<br /> | | | 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 | </div> </div> </div> <div id="footnotes"><hr /></div> <div id="footer"> <div id="footer-text"> Version 1.0<br /> Last updated 2013-08-01 22:59:08 MST </div> </div> </body> </html> |
Modified docs/manual/reference.txt from [09090d6f26] to [6d8b51499a].
︙ | ︙ | |||
136 137 138 139 140 141 142 143 144 145 | # This builtin rule is the default if there is no <waivername>.logpro file # diff diff %file1% %file2% # This builtin rule is applied if a <waivername>.logpro file exists # logpro diff %file1% %file2% | logpro %waivername%.logpro %waivername%.html ----------------- :numbered!: | > > > > > > > > | 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 | # This builtin rule is the default if there is no <waivername>.logpro file # diff diff %file1% %file2% # This builtin rule is applied if a <waivername>.logpro file exists # logpro diff %file1% %file2% | logpro %waivername%.logpro %waivername%.html ----------------- Ezsteps ~~~~~~~ To transfer the environment to the next step you can do the following: ---------------------------- $MT_MEGATEST -env2file .ezsteps/${stepname} ---------------------------- :numbered!: |
Modified ezsteps.scm from [054b0d84c8] to [ad9d3c507a].
︙ | ︙ | |||
30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 | (ezstepslst (hash-table-ref/default testconfig "ezsteps" '())) (run-mutex (make-mutex)) (rollup-status 0) (exit-info (vector #t #t #t)) (test-id (db:test-get-id testdat)) (test-name (db:test-get-testname testdat)) (kill-job #f)) ;; for future use (on re-factoring with launch.scm code (push-directory test-run-dir) (debug:print-info 0 "Running in directory " test-run-dir) (if (not (file-exists? ".ezsteps"))(create-directory ".ezsteps")) ;; if ezsteps was defined then we are sure to have at least one step but check anyway (if (not (> (length ezstepslst) 0)) (message-window "ERROR: You can only re-run steps defined via ezsteps") (begin (let loop ((ezstep (car ezstepslst)) | > > > > > > > | 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 | (ezstepslst (hash-table-ref/default testconfig "ezsteps" '())) (run-mutex (make-mutex)) (rollup-status 0) (exit-info (vector #t #t #t)) (test-id (db:test-get-id testdat)) (test-name (db:test-get-testname testdat)) (kill-job #f)) ;; for future use (on re-factoring with launch.scm code (let loop ((count 5)) (if (file-exists? test-run-dir) (push-directory test-run-dir) (if (> count 0) (begin (debug:print 0 "WARNING: ezsteps attempting to run but test run directory " test-run-dir " is not there. Waiting and trying again " count " more times") (sleep 3) (loop (- count 1)))))) (debug:print-info 0 "Running in directory " test-run-dir) (if (not (file-exists? ".ezsteps"))(create-directory ".ezsteps")) ;; if ezsteps was defined then we are sure to have at least one step but check anyway (if (not (> (length ezstepslst) 0)) (message-window "ERROR: You can only re-run steps defined via ezsteps") (begin (let loop ((ezstep (car ezstepslst)) |
︙ | ︙ |
Modified runs.scm from [3559f7453d] to [a6403613e5].
︙ | ︙ | |||
809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 | (cdb:tests-register-test *runremote* run-id test-name item-path) (set! test-id (cdb:remote-run db:get-test-id #f run-id test-name item-path)))) (debug:print-info 4 "test-id=" test-id ", run-id=" run-id ", test-name=" test-name ", item-path=\"" item-path "\"") (set! testdat (cdb:get-test-info-by-id *runremote* test-id)))) (if (not testdat) ;; should NOT happen (debug:print 0 "ERROR: failed to get test record for test-id " test-id)) (set! test-id (db:test-get-id testdat)) (change-directory test-path) (case (if force ;; (args:get-arg "-force") 'NOT_STARTED (if testdat (string->symbol (test:get-state testdat)) 'failed-to-insert)) ((failed-to-insert) (debug:print 0 "ERROR: Failed to insert the record into the db")) | > > > > | 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 | (cdb:tests-register-test *runremote* run-id test-name item-path) (set! test-id (cdb:remote-run db:get-test-id #f run-id test-name item-path)))) (debug:print-info 4 "test-id=" test-id ", run-id=" run-id ", test-name=" test-name ", item-path=\"" item-path "\"") (set! testdat (cdb:get-test-info-by-id *runremote* test-id)))) (if (not testdat) ;; should NOT happen (debug:print 0 "ERROR: failed to get test record for test-id " test-id)) (set! test-id (db:test-get-id testdat)) (if (file-exists? test-path) (change-directory test-path) (begin (debug:print "ERROR: test run path not created before attempting to run the test. Perhaps you are running -remove-runs at the same time?") (change-directory *toppath*))) (case (if force ;; (args:get-arg "-force") 'NOT_STARTED (if testdat (string->symbol (test:get-state testdat)) 'failed-to-insert)) ((failed-to-insert) (debug:print 0 "ERROR: Failed to insert the record into the db")) |
︙ | ︙ |
Modified tests.scm from [def3cc0191] to [3fc8cabe45].
︙ | ︙ | |||
224 225 226 227 228 229 230 231 232 233 234 235 236 237 | (testconfig (tests:get-testconfig (db:test-get-testname testdat) test-registry #f)) (test-rundir (db:test-get-rundir testdat)) (prev-rundir (db:test-get-rundir prev-testdat)) (waivers (configf:section-vars testconfig "waivers")) (waiver-rx (regexp "^(\\S+)\\s+(.*)$")) (diff-rule "diff %file1% %file2%") (logpro-rule "diff %file1% %file2% | logpro %waivername%.logpro %waivername%.html")) (push-directory test-rundir) (let ((result (if (null? waivers) #f (let loop ((hed (car waivers)) (tal (cdr waivers))) (debug:print 0 "INFO: Applying waiver rule \"" hed "\"") (let* ((waiver (configf:lookup testconfig "waivers" hed)) | > > > > > | 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 | (testconfig (tests:get-testconfig (db:test-get-testname testdat) test-registry #f)) (test-rundir (db:test-get-rundir testdat)) (prev-rundir (db:test-get-rundir prev-testdat)) (waivers (configf:section-vars testconfig "waivers")) (waiver-rx (regexp "^(\\S+)\\s+(.*)$")) (diff-rule "diff %file1% %file2%") (logpro-rule "diff %file1% %file2% | logpro %waivername%.logpro %waivername%.html")) (if (not (file-exists? test-rundir)) (begin (debug:print 0 "ERROR: test run directory is gone, cannot propagate waiver") #f) (begin (push-directory test-rundir) (let ((result (if (null? waivers) #f (let loop ((hed (car waivers)) (tal (cdr waivers))) (debug:print 0 "INFO: Applying waiver rule \"" hed "\"") (let* ((waiver (configf:lookup testconfig "waivers" hed)) |
︙ | ︙ | |||
268 269 270 271 272 273 274 | (debug:print 0 "INFO: waiver command is \"" processed-cmd "\"") (if (eq? (system processed-cmd) 0) (if (null? tal) #t (loop (car tal)(cdr tal))) #f)))))) (pop-directory) | | | 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 | (debug:print 0 "INFO: waiver command is \"" processed-cmd "\"") (if (eq? (system processed-cmd) 0) (if (null? tal) #t (loop (car tal)(cdr tal))) #f)))))) (pop-directory) result))))) ;; Do not rpc this one, do the underlying calls!!! (define (tests:test-set-status! test-id state status comment dat #!key (work-area #f)) (debug:print-info 4 "tests:test-set-status! test-id=" test-id ", state=" state ", status=" status ", dat=" dat) (let* ((db #f) (real-status status) |
︙ | ︙ |
Modified tests/installall/runconfigs.config from [372062b09b] to [afb2b7611e].
︙ | ︙ | |||
9 10 11 12 13 14 15 | DOWNLOADS #{getenv MT_RUN_AREA_HOME}/downloads IUPLIB 26g4 PLATFORM linux LOGPRO_VERSION v1.05 BUILDSQLITE yes SQLITE3_VERSION 3071401 ZEROMQ_VERSION 2.2.0 | | > > | 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 | DOWNLOADS #{getenv MT_RUN_AREA_HOME}/downloads IUPLIB 26g4 PLATFORM linux LOGPRO_VERSION v1.05 BUILDSQLITE yes SQLITE3_VERSION 3071401 ZEROMQ_VERSION 2.2.0 logpro_VERSION v1.08 stml_VERSION v0.901 megatest_VERSION v1.5511 [include configs/hicken-#{getenv CHICKEN_VERSION}.config] # Currently must have at least one variable in a section [4.8.0/trunk/bin/std] IUP_VERSION na |
︙ | ︙ |
Deleted tests/installall/tests/logpro/clone.logpro version [c92957c5fd].
|
| < < < < < < < < |
Deleted tests/installall/tests/logpro/clone.sh version [bcdb53e371].
|
| < < < < < < < < < < < |
Deleted tests/installall/tests/logpro/install.logpro version [1f5310e869].
|
| < < < < < < < < < |
Deleted tests/installall/tests/logpro/install.sh version [20b7459696].
|
| < < < < < < |
Deleted tests/installall/tests/logpro/testconfig version [94619187fe].
|
| < < < < < < < < < < < < < < < < < < < |
Added tests/installall/tests/mmisc/clone.logpro version [c92957c5fd].
> > > > > > > > | 1 2 3 4 5 6 7 8 | ;; You should have at least one expect:required. This ensures that your process ran (expect:required in "LogFileBody" > 0 "Output from fossil" #/^repository:\s+/) ;; You may need ignores to suppress false error or warning hits from the later expects ;; NOTE: Order is important here! (expect:ignore in "LogFileBody" < 99 "Ignore the word error in comments" #/^\/\/.*error/) (expect:warning in "LogFileBody" = 0 "Any warning" #/warn/i) (expect:error in "LogFileBody" = 0 "Any error" (list #/ERROR/ #/error/i)) ;; but disallow any other errors |
Added tests/installall/tests/mmisc/clone.sh version [a61e06ec47].
> > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 | #!/usr/bin/env bash # Run your step here source $PREFIX/buildsetup.sh fossil clone http://www.kiatoa.com/fossils/$FSLPKG $FSLPKG.fossil mkdir src cd src fossil open ../$FSLPKG.fossil --nested fossil co ${$FSLPKG}_VERSION} |
Added tests/installall/tests/mmisc/install.logpro version [1f5310e869].
> > > > > > > > > | 1 2 3 4 5 6 7 8 9 | ;; You should have at least one expect:required. This ensures that your process ran (expect:required in "LogFileBody" > 0 "Always get a chmod at the end of install" #/chmod.*logpro.setup-info/) ;; You may need ignores to suppress false error or warning hits from the later expects ;; NOTE: Order is important here! (expect:ignore in "LogFileBody" < 99 "Ignore the word error in comments" #/^\/\/.*error/) (expect:ignore in "LogFileBody" < 99 "Ignore the word error in setup-error-handling" #/setup-error-handling/) (expect:warning in "LogFileBody" = 0 "Any warning" #/warn/i) (expect:error in "LogFileBody" = 0 "Any error" (list #/ERROR/ #/error/i)) ;; but disallow any other errors |
Added tests/installall/tests/mmisc/install.sh version [6fa1a37e4b].
> > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | #!/usr/bin/env bash # Run your step here source $PREFIX/buildsetup.sh cd src if [ $FSLPKG == "logpro" ];then chicken-install elif [ $FSLPKG == "stml" ];then cp install.cfg.template install.cfg cp requirements.scm.template requirements.scm make make install else make make install PREFIX=$PREFIX fi |
Added tests/installall/tests/mmisc/testconfig version [e2a1711886].
> > > > > > > > > > > > > > > > > > > > > | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | # Add additional steps here. Format is "stepname script" [ezsteps] clone clone.sh install install.sh # Test requirements are specified here [requirements] waiton eggs setup # Iteration for your tests are controlled by the items section [items] FSLPKG logpro stml megatest # test_meta is a section for storing additional data on your test [test_meta] author matt owner matt description Install the logpro tool tags tagone,tagtwo reviewed never |
Modified utils/mt_ezstep from [87bdfe16d1] to [94c507b08a].
︙ | ︙ | |||
70 71 72 73 74 75 76 | exitstatus=2 elif [ $logprostatus -eq 1 ]; then exitstatus=1 else exitstatus=0 fi | | | 70 71 72 73 74 75 76 77 78 | exitstatus=2 elif [ $logprostatus -eq 1 ]; then exitstatus=1 else exitstatus=0 fi # $MT_MEGATEST -env2file .ezsteps/${stepname} exit $exitstatus |