This page has some random notes about the fuego transport functions.
|
{{TableOfContents}}
This page has some random notes about the fuego transport functions.
|
These are implemented in base-board.fuegoclass.
|
These are implemented in base-board.fuegoclass.
|
This page describes some of the issues related to these functions.
|
This page describes some of the issues related to these functions.
|
ssh and scp, adb, serio and ttc are candidates for tools that fuego can use for
transport operations. Each of these has peculiarities that are worth
describing.
|
ssh and scp, adb, serio and ttc are candidates for tools that fuego can use for
transport operations. Each of these has peculiarities that are worth
describing.
|
scp supports a -r option to use recursion with a set of files and directories.
|
scp supports a -r option to use recursion with a set of files and directories.
|
scp supports transferring more than one file at a time to a single destination directory
* that is, you can do this: scp foo bar target:/tmp
* can you also do this: scp target:foo target:bar /tmp (this is never done by fuego)
|
scp supports transferring more than one file at a time to a single destination directory
* that is, you can do this: scp foo bar target:/tmp
* can you also do this: scp target:foo target:bar /tmp (this is never done by fuego)
|
|
= table of sub-tool features =
ssh, adb, serio and ttc are candidates for tools that fuego can use for
transport operations.
|
Here is a table of sub-tool features:
{{{#!Table
||tool and command||supports directory recursion||uses -r||supports multiple sources||supports target wildcards||
||scp ||yes ||yes ||yes ||yes||
||ttc ||depends on wrapped command||can pass it through to sub-command||yes||depends on wrapped command||
||serio -g ||no ||no ||no ||no||
||serio -p ||no ||no ||no ||no||
||adb pull ||yes ||no ||yes? ||?||
||adb push ||yes ||no ||no ||no||
|
Here is a table of sub-tool features:
{{{#!Table
||tool and command||supports directory recursion||uses -r||supports multiple sources||supports target wildcards||
||scp ||yes ||yes ||yes ||yes||
||ttc ||depends on wrapped command||can pass it through to sub-command||yes||depends on wrapped command||
||serio -g ||no ||no ||no ||no||
||serio -p ||no ||no ||no ||no||
||adb pull ||yes ||no ||yes? ||?||
||adb push ||yes ||no ||no ||no||
|
}}}
|
}}}
|
|
= places where 'get' is called =
in the system:
* functions.sh - in post_test, to get syslogs.
* get /tmp/fuego.${1}/*.${BUILD_ID}.* $FUEGO_LOGS_PATH/${JOB_NAME}/systemlogs/
* uses wildcards, but not recursion (gets both .before and .after log)
* uses wildcard to avoid having to reference full log name and build number (and suffix: 'before' or 'after')
* dump_syslogs -> ov_rootfs_logread is used to create the syslogs
* filename is: ${NODE_NAME}.${BUILD_ID}.${BUILD_NUMBER}.$2
* where $2 is 'before' or 'after'
* changed to:
* get /tmp/fuego.${1}/${NODE_NAME}.${BUILD_ID}.${BUILD_NUMBER}.before $FUEGO_LOGS_PATH/${JOB_NAME}/systemlogs/
* get /tmp/fuego.${1}/${NODE_NAME}.${BUILD_ID}.${BUILD_NUMBER}.after $FUEGO_LOGS_PATH/${JOB_NAME}/systemlogs/
* functions.sh - in get_testlog, to get the test log
* get ${2} $FUEGO_LOGS_PATH/${JOB_NAME}/testlogs/${NODE_NAME}.${BUILD_ID}.${BUILD_NUMBER}.log
|
in test scripts:
* 'get' is not used in any tests scripts currently
|
in test scripts:
* 'get' is not used in any tests scripts currently
|
|
= places where 'put' is called =
in the system:
* 'put' is not used by the system
|
in test scripts:
*
{{{#!Table
sortby=script:alpha
show_edit_links=0
||test ||script ||command ||uses -r?||uses wildcard||use multiple sources||
||Functional.hello_world ||hello_world.sh ||put hello $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Benchmark.netpipe ||NetPIPE.sh ||put NPtcp $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Functional.aiostress ||aiostress.sh ||put aiostress $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Benchmark.cyclictest ||cyclictest.sh ||put cyclictest $FUEGO_HOME/fuego.$TESTDIR/||no||no||no||
||Benchmark.aim7 ||aim7.sh ||put src/reaim $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Benchmark.aim7 ||aim7.sh ||put -r data $FUEGO_HOME/fuego.$TESTDIR/ ||yes||no||no||
||Benchmark.aim7 ||aim7.sh ||put -r scripts $FUEGO_HOME/fuego.$TESTDIR/||yes||no||no||
||Benchmark.reboot ||reboot.sh ||put $TEST_HOME/$tarball $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Functional.jpeg ||jpeg.sh ||put run-tests.sh test* djpeg cjpeg jpegtran $FUEGO_HOME/fuego.$TESTDIR/;||no||yes||yes||
||Benchmark.tiobench ||tiobench.sh ||put tiotest $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Functional.scifab ||scifab.sh ||put -r ./* $OSV_HOME/osv.$TESTDIR/ ||yes||yes||no||
||Benchmark.bonnie ||bonnie++.sh ||put bonnie++ $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Benchmark.Stream ||stream.sh ||put stream_c.exe $FUEGO_HOME/fuego.$TESTDIR/||no||no||yes||
||Benchmark.ebizzy ||ebizzy.sh ||put ebizzy $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Benchmark.dbench ||dbench.sh ||put dbench client.txt $FUEGO_HOME/fuego.$TESTDIR/||no||no||yes||
||Functional.bzip2 ||bzip2.sh ||put {sample*,run-tests.sh} $FUEGO_HOME/fuego.$TESTDIR/||no||yes||yes?||
||Benchmark.blobsallad ||blobsallad.sh ||put blobsallad $FUEGO_HOME/fuego.$TESTDIR/||no||no||no||
||Benchmark.blobsallad ||blobsallad.sh ||put -r maps $FUEGO_HOME/fuego.$TESTDIR/ ||yes||no||no||
||Functional.synctest ||synctest.sh ||put synctest $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Benchmark.hackbench ||hackbench.sh ||put hackbench $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Functional.posixtestsuite||posixtestsuite.sh||put -r ./* $FUEGO_HOME/fuego.$TESTDIR/ ||yes||yes||no||
||Benchmark.fio ||fio.sh ||put fio examples/fsx-current examples/ssd-test-current $FUEGO_HOME/fuego.$TESTDIR/||no||no||yes||
||OpenSSL ||openssl.sh ||put -r apps util test run-tests.sh $FUEGO_HOME/fuego.$TESTDIR/||yes||no||yes||
||Benchmark.ffsb ||ffsb.sh ||put ffsb $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Benchmark.ffsb ||ffsb.sh ||put examples/profile_everything $FUEGO_HOME/fuego.$TESTDIR/||no||no||no||
||Functional.zlib ||zlib.sh ||put example minigzip $FUEGO_HOME/fuego.$TESTDIR/||no||no||yes||
||Functional.scrashme ||scrashme.sh ||put scrashme $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Benchmark.x11perf ||x11perf.sh ||put x11perf $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||LTP ||ltp.sh ||put -r testcases/kernel/device-drivers/rtc/rtc01 $FUEGO_HOME/fuego.$TESTDIR/||yes||no||no||
||LTP ||ltp.sh ||put -r fs_tests/* $FUEGO_HOME/fuego.$TESTDIR/||yes||yes||no||
||LTP ||ltp.sh ||put -r target_bin /tmp/fuego.$TESTDIR/ ||yes||no||no||
||Benchmark.nbench-byte ||nbench-byte.sh ||put hardware nbench sysinfo.sh *.DAT $FUEGO_HOME/fuego.$TESTDIR/||no||yes||yes||
||Functional.cmt ||cmt.sh ||put -r ./* $FUEGO_HOME/fuego.$TESTDIR/ ||yes||yes||no||
||Functional.ft2demos ||ft2demos.sh ||put ${tarball%.tar*}/bin/.libs/* $FUEGO_HOME/fuego.$TESTDIR/||no||yes||no||
||Functional.ipv6connect ||ipv6connect.sh ||put ipv6connect $FUEGO_HOME/fuego.$TESTDIR/||no||no||no||
||Benchmark.Dhrystone ||Dhrystone.sh ||put dhrystone $FUEGO_HOME/fuego.$TESTDIR/ | | return 1 *||no||no||no||
||Functional.bc ||bc-script.sh ||put bc-device.sh $FUEGO_HOME/fuego.$TESTDIR/||no||no||no||
||Benchmark.signaltest ||signaltest.sh ||put signaltest $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||netperf ||netperf.sh ||put *script $FUEGO_HOME/fuego.$TESTDIR/ ||no||yes||no||
||netperf ||netperf.sh ||put netperf $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Functional.expat ||expat.sh ||put -r XML-Test-Suite.tar tests/.libs/* tests/xmltest.sh $FUEGO_HOME/fuego.$TESTDIR/;||yes||yes||yes||
||Functional.expat ||expat.sh ||put xmlwf/.libs/xmlwf $FUEGO_HOME/xmlwf/xmlwf;||no||no||no||
||Functional.glib ||glib2.sh ||put gio/tests/Makefile.am `find . -name .libs | xargs -IDIRS find DIRS -not -type d -not -name '*.so*' -not -name '*.la*' -perm /u+x` $FUEGO_HOME/fuego.$TESTDIR/||no||no!||yes||
||Benchmark.lmbench2 ||lmbench.sh ||put -r * $FUEGO_HOME/fuego.$TESTDIR/ ||yes||yes||no||
||Benchmark.himeno ||himeno.sh ||put bmt $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Functional.sdhi_0 ||sdhi_0.sh ||put -r ./* $OSV_HOME/osv.$TESTDIR/ ||yes||yes||no||
||Functional.fontconfig ||fontconfig.sh ||put -r test/* $FUEGO_HOME/fuego.$TESTDIR/ ||yes||yes||no||
||Benchmark.IOzone ||iozone.sh ||put fileop iozone pit_server $FUEGO_HOME/fuego.$TESTDIR/||no||no||yes||
||Benchmark.nbench_byte ||nbench_byte.sh ||put hardware nbench sysinfo.sh *.DAT $FUEGO_HOME/fuego.$TESTDIR/||no||yes||yes||
||Benchmark.linpack ||linpack.sh ||put linpack $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Functional.arch_timer ||arch_timer.sh ||put -r ./* $FUEGO_HOME/fuego.$TESTDIR/ ||yes||yes||no||
||Benchmark.iperf ||iperf.sh ||put src/iperf $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Functional.pi_tests ||pi_tests.sh ||put ./pi_stress $FUEGO_HOME/fuego.$TESTDIR/||no||no||no||
||Benchmark.Java ||java_perf.sh ||put *.jar $FUEGO_HOME/fuego.$TESTDIR/ ||no||yes||no||
||Functional.rmaptest ||rmaptest.sh ||put rmap-test $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Benchmark.Interbench ||interbench.sh ||put interbench $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Benchmark.GLMark ||GLMark.sh ||put -r glmark data $FUEGO_HOME/fuego.$TESTDIR/||yes||no||no||
||Functional.linus_stress ||linus_stress.sh||put linus_stress $FUEGO_HOME/fuego.$TESTDIR/||no||no||no||
||Benchmark.gtkperf ||gtkperf.sh ||put src/gtkperf $FUEGO_HOME/fuego.$TESTDIR/||no||no||no||
||Benchmark.gtkperf ||gtkperf.sh ||put pixmaps/*.png $FUEGO_HOME/fuego.$TESTDIR/share/pixmaps||no||yes||no||
||Functional.stress ||stress.sh ||put src/stress $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Functional.crashme ||crashme.sh ||put crashme $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Benchmark.Whetstone ||Whetstone.sh ||put whetstone $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
}}}
|
in test scripts:
*
{{{#!Table
sortby=script:alpha
show_edit_links=0
||test ||script ||command ||uses -r?||uses wildcard||use multiple sources||
||Functional.hello_world ||hello_world.sh ||put hello $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Benchmark.netpipe ||NetPIPE.sh ||put NPtcp $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Functional.aiostress ||aiostress.sh ||put aiostress $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Benchmark.cyclictest ||cyclictest.sh ||put cyclictest $FUEGO_HOME/fuego.$TESTDIR/||no||no||no||
||Benchmark.aim7 ||aim7.sh ||put src/reaim $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Benchmark.aim7 ||aim7.sh ||put -r data $FUEGO_HOME/fuego.$TESTDIR/ ||yes||no||no||
||Benchmark.aim7 ||aim7.sh ||put -r scripts $FUEGO_HOME/fuego.$TESTDIR/||yes||no||no||
||Benchmark.reboot ||reboot.sh ||put $TEST_HOME/$tarball $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Functional.jpeg ||jpeg.sh ||put run-tests.sh test* djpeg cjpeg jpegtran $FUEGO_HOME/fuego.$TESTDIR/;||no||yes||yes||
||Benchmark.tiobench ||tiobench.sh ||put tiotest $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Functional.scifab ||scifab.sh ||put -r ./* $OSV_HOME/osv.$TESTDIR/ ||yes||yes||no||
||Benchmark.bonnie ||bonnie++.sh ||put bonnie++ $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Benchmark.Stream ||stream.sh ||put stream_c.exe $FUEGO_HOME/fuego.$TESTDIR/||no||no||yes||
||Benchmark.ebizzy ||ebizzy.sh ||put ebizzy $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Benchmark.dbench ||dbench.sh ||put dbench client.txt $FUEGO_HOME/fuego.$TESTDIR/||no||no||yes||
||Functional.bzip2 ||bzip2.sh ||put {sample*,run-tests.sh} $FUEGO_HOME/fuego.$TESTDIR/||no||yes||yes?||
||Benchmark.blobsallad ||blobsallad.sh ||put blobsallad $FUEGO_HOME/fuego.$TESTDIR/||no||no||no||
||Benchmark.blobsallad ||blobsallad.sh ||put -r maps $FUEGO_HOME/fuego.$TESTDIR/ ||yes||no||no||
||Functional.synctest ||synctest.sh ||put synctest $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Benchmark.hackbench ||hackbench.sh ||put hackbench $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Functional.posixtestsuite||posixtestsuite.sh||put -r ./* $FUEGO_HOME/fuego.$TESTDIR/ ||yes||yes||no||
||Benchmark.fio ||fio.sh ||put fio examples/fsx-current examples/ssd-test-current $FUEGO_HOME/fuego.$TESTDIR/||no||no||yes||
||OpenSSL ||openssl.sh ||put -r apps util test run-tests.sh $FUEGO_HOME/fuego.$TESTDIR/||yes||no||yes||
||Benchmark.ffsb ||ffsb.sh ||put ffsb $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Benchmark.ffsb ||ffsb.sh ||put examples/profile_everything $FUEGO_HOME/fuego.$TESTDIR/||no||no||no||
||Functional.zlib ||zlib.sh ||put example minigzip $FUEGO_HOME/fuego.$TESTDIR/||no||no||yes||
||Functional.scrashme ||scrashme.sh ||put scrashme $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Benchmark.x11perf ||x11perf.sh ||put x11perf $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||LTP ||ltp.sh ||put -r testcases/kernel/device-drivers/rtc/rtc01 $FUEGO_HOME/fuego.$TESTDIR/||yes||no||no||
||LTP ||ltp.sh ||put -r fs_tests/* $FUEGO_HOME/fuego.$TESTDIR/||yes||yes||no||
||LTP ||ltp.sh ||put -r target_bin /tmp/fuego.$TESTDIR/ ||yes||no||no||
||Benchmark.nbench-byte ||nbench-byte.sh ||put hardware nbench sysinfo.sh *.DAT $FUEGO_HOME/fuego.$TESTDIR/||no||yes||yes||
||Functional.cmt ||cmt.sh ||put -r ./* $FUEGO_HOME/fuego.$TESTDIR/ ||yes||yes||no||
||Functional.ft2demos ||ft2demos.sh ||put ${tarball%.tar*}/bin/.libs/* $FUEGO_HOME/fuego.$TESTDIR/||no||yes||no||
||Functional.ipv6connect ||ipv6connect.sh ||put ipv6connect $FUEGO_HOME/fuego.$TESTDIR/||no||no||no||
||Benchmark.Dhrystone ||Dhrystone.sh ||put dhrystone $FUEGO_HOME/fuego.$TESTDIR/ | | return 1 *||no||no||no||
||Functional.bc ||bc-script.sh ||put bc-device.sh $FUEGO_HOME/fuego.$TESTDIR/||no||no||no||
||Benchmark.signaltest ||signaltest.sh ||put signaltest $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||netperf ||netperf.sh ||put *script $FUEGO_HOME/fuego.$TESTDIR/ ||no||yes||no||
||netperf ||netperf.sh ||put netperf $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Functional.expat ||expat.sh ||put -r XML-Test-Suite.tar tests/.libs/* tests/xmltest.sh $FUEGO_HOME/fuego.$TESTDIR/;||yes||yes||yes||
||Functional.expat ||expat.sh ||put xmlwf/.libs/xmlwf $FUEGO_HOME/xmlwf/xmlwf;||no||no||no||
||Functional.glib ||glib2.sh ||put gio/tests/Makefile.am `find . -name .libs | xargs -IDIRS find DIRS -not -type d -not -name '*.so*' -not -name '*.la*' -perm /u+x` $FUEGO_HOME/fuego.$TESTDIR/||no||no!||yes||
||Benchmark.lmbench2 ||lmbench.sh ||put -r * $FUEGO_HOME/fuego.$TESTDIR/ ||yes||yes||no||
||Benchmark.himeno ||himeno.sh ||put bmt $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Functional.sdhi_0 ||sdhi_0.sh ||put -r ./* $OSV_HOME/osv.$TESTDIR/ ||yes||yes||no||
||Functional.fontconfig ||fontconfig.sh ||put -r test/* $FUEGO_HOME/fuego.$TESTDIR/ ||yes||yes||no||
||Benchmark.IOzone ||iozone.sh ||put fileop iozone pit_server $FUEGO_HOME/fuego.$TESTDIR/||no||no||yes||
||Benchmark.nbench_byte ||nbench_byte.sh ||put hardware nbench sysinfo.sh *.DAT $FUEGO_HOME/fuego.$TESTDIR/||no||yes||yes||
||Benchmark.linpack ||linpack.sh ||put linpack $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Functional.arch_timer ||arch_timer.sh ||put -r ./* $FUEGO_HOME/fuego.$TESTDIR/ ||yes||yes||no||
||Benchmark.iperf ||iperf.sh ||put src/iperf $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Functional.pi_tests ||pi_tests.sh ||put ./pi_stress $FUEGO_HOME/fuego.$TESTDIR/||no||no||no||
||Benchmark.Java ||java_perf.sh ||put *.jar $FUEGO_HOME/fuego.$TESTDIR/ ||no||yes||no||
||Functional.rmaptest ||rmaptest.sh ||put rmap-test $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Benchmark.Interbench ||interbench.sh ||put interbench $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Benchmark.GLMark ||GLMark.sh ||put -r glmark data $FUEGO_HOME/fuego.$TESTDIR/||yes||no||no||
||Functional.linus_stress ||linus_stress.sh||put linus_stress $FUEGO_HOME/fuego.$TESTDIR/||no||no||no||
||Benchmark.gtkperf ||gtkperf.sh ||put src/gtkperf $FUEGO_HOME/fuego.$TESTDIR/||no||no||no||
||Benchmark.gtkperf ||gtkperf.sh ||put pixmaps/*.png $FUEGO_HOME/fuego.$TESTDIR/share/pixmaps||no||yes||no||
||Functional.stress ||stress.sh ||put src/stress $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Functional.crashme ||crashme.sh ||put crashme $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
||Benchmark.Whetstone ||Whetstone.sh ||put whetstone $FUEGO_HOME/fuego.$TESTDIR/ ||no||no||no||
}}}
|
Notes:
* Dhrystone has '|| return 1' - is this needed?
* glib2 has a find|xargs command in the put parameters, for crying out loud!
* only expat and gtkperf put anything outside of $FUEGO_HOME/fuego.$TESTDIR
|
Notes:
* Dhrystone has '|| return 1' - is this needed?
* glib2 has a find|xargs command in the put parameters, for crying out loud!
* only expat and gtkperf put anything outside of $FUEGO_HOME/fuego.$TESTDIR
|
|
= rules =
Here is a list of rules regarding use of 'get' and 'put' in Fuego:
|
- get only ever specifies:
* a single file on the target as the source
* a single directory on the host as the destination
* get never takes wildcards
* get never takes multiple files
|
* get only ever specifies:
* a single file on the target as the source
* a single directory on the host as the destination
* get never takes wildcards
* get never takes multiple files
|
- put can take a leading '-r' argument, which means to recurse directories
* if -r is used, it must be the first argument to 'put'
* put can take wildcards on the host for sources
* put can take multiple files and directories on the host for sources
* put always takes a single directory on the target as the destination
|
* put can take a leading '-r' argument, which means to recurse directories
* if -r is used, it must be the first argument to 'put'
* put can take wildcards on the host for sources
* put can take multiple files and directories on the host for sources
* put always takes a single directory on the target as the destination
|