diff --git a/libisoburn/trunk/releng/README.core b/libisoburn/trunk/releng/README.core index 1c313900..7c601614 100644 --- a/libisoburn/trunk/releng/README.core +++ b/libisoburn/trunk/releng/README.core @@ -1,10 +1,10 @@ Release Engineering ~~~~~~~~~~~~~~~~~~~ * SOFTWARE TO TEST - Use latest libburnia libraries code base from svn and bzr - (see README for aditional and autodetected library dependencies) - Alternatively, use latest all-in-one development tarball from: - http://www.gnu.org/software/xorriso/ + + Use latest libburnia libraries code base from svn and bzr + (see top-level README for aditional library dependencies) + + Alternatively, use latest all-in-one development tarball from: + http://www.gnu.org/software/xorriso/ * SETUP THE TEST ENVIRONMENT AND RUN THE TEST SUITE + All tests have to be run from the releng/ directory, within @@ -16,8 +16,8 @@ Release Engineering * DELIVERING A NEW TEST SCRIPT + Start a new test script over the top of template_new_releng - + All filenames start with releng_ prefix - + Self generated data are to be stored in + + Each completed script starts with releng_ prefix + + Each script' self-generated data are to be stored in ./releng_generated_data/scriptname/ directory + Keep the newly added script options in sync with other scripts + Throw FAIL string to stdout if any failure is detected diff --git a/libisoburn/trunk/releng/TODO b/libisoburn/trunk/releng/TODO index bc21a573..22bfb05c 100644 --- a/libisoburn/trunk/releng/TODO +++ b/libisoburn/trunk/releng/TODO @@ -1,27 +1,14 @@ -* Invent an interpreter to read options from config files and sets the variables - or use confget ( http://devel.ringlet.net/textproc/confget/ ) - OR BETTER YET TRY TO DROP the entire concept of config files and - rely solely on cmdline options. -* Write a common configuration facility. - -* Expose ldd and --version of tested binary just once. - -* Also support 'run_all_releng /path/to/xorriso [-keep]' - i.e. without the need to install config files in place. +* Expose xorriso --version of tested binary just once. * Merge 'merge_into_isocontent' into 'releng_isocontent' (former hardlinks) Extend it to use some more demanding directory tree. MD5s should be checked. ACLs and xattr (if we are on Linux). All file types as of stat(2) should be tested. -* Also check trivial operations like --devices, etc. - -* Split off common functionality in common ./lib/ so it can be re-used - by all scripts. This might include cmdline option parsing, some - validation code like releng_isocontent:is_valid_iso9660 - -* We need to give a hint about how much storage space will be consumed. +* Also check as many as possible trivial operations like: + xorriso --devices + xorriso -indev file.iso -pvd_info * We could mark all own stderr messages by a prefix like "===". diff --git a/libisoburn/trunk/releng/run_all_releng b/libisoburn/trunk/releng/run_all_releng index 63de6a73..9859f5c8 100755 --- a/libisoburn/trunk/releng/run_all_releng +++ b/libisoburn/trunk/releng/run_all_releng @@ -26,13 +26,22 @@ done if [ ! "${1}" ]; then cat << HLP +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +${SELF} runs executables from CWD starting +with releng_*, passing them its own options. +stdout/stderr output stored in: + ${CLOG} +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +self generated data are stored in ${GEN_DATA_DIR}. +required space for these data is about 300 megabytes. +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +examples: +# run xorriso and keep the self generated data + $ ./${SELF} -x path/to/xorriso [-k1] -${SELF} runs executables from CWD starting with releng_*, passing them its own options. -stdout/stderr output stored in ${CLOG} - - ${SELF} -x path/to/xorriso [-k1] - ${SELF} -c1 - +# clean up self generated data from previous run + $ ./${SELF} -c1 +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ HLP exit 31 fi @@ -82,12 +91,14 @@ fi printf "\n${SELF}: Removed my own log ${CLOG}.prev." rm -f "${CLOG}".prev fi - printf "\n" else E2=`date '+%s'` - let ES="${E2} - ${E1}" - printf " Total elapsed ${ES} sec." - + if [ ${E2} -eq ${E1} ]; then + printf " Total elapsed 0 sec." + else + let ES="${E2} - ${E1}" + printf " Total elapsed ${ES} sec." + fi ##### printf "\n${SELF}: Std(out|err) logged in ${CLOG}." printf "\n${SELF}: Trivial log file examination:" @@ -126,6 +137,10 @@ fi printf "diff -Naur ${CLOG}.prev ${CLOG} | less" fi fi + + # + printf "\n${SELF}: Leaving the following cruft in ${GEN_DATA_DIR}:\n" + ls -lth "${GEN_DATA_DIR}" # Fin exit 0 diff --git a/libisoburn/trunk/releng/template_new_releng b/libisoburn/trunk/releng/template_new_releng index d901b72b..a4a98a7d 100755 --- a/libisoburn/trunk/releng/template_new_releng +++ b/libisoburn/trunk/releng/template_new_releng @@ -5,6 +5,8 @@ set -e # Include common bits . inc/releng_getopts.inc +printf "\n$0: FAIL: === TEPLATE === RENAME ME TO releng_