RFE: S4 waf "make test" return codes

Andrew Kroeger andrew at id10ts.net
Sat Jun 26 05:20:07 MDT 2010


As waf is now the de-facto build system for S4, I have two requests for
enhancements to the current "make test" behavior.  After diagnosing
three of five make test failures on my local build, I have observed the
following (the first being more cosmetic/documentation related than
anything else):

1)  Running the shell command "TESTS=samba4.rpc.winreg make test"
appears to start a full test run (equivalent to "make test") whereas
running "TESTS=samba4.rpc.winreg make test TESTS=samba4.rpc.winreg" from
the shell only appears to run the winreg tests.

If I am not mistaken, the former syntax used to produce the expected
results in the autoconf build test framework.  I have no problem if the
syntax has changed now that the waf build environment is the primary
focus of the S4 builds.  I just want to ask that if there is a change in
acceptable syntax that any related "howto"'s or other appropriate
documentation are updated accordingly.

I must also admit I have not looked into the documentation on the
testing framework to determine if an change in syntax is required when
using the new waf testing framework - I just expected the previous
syntax to work.

2)  When running specific tests as specified in #1 above (or an overall
"make test"), can the shell-level exit status be modified to exit with a
git-compatible non-zero status (per the man page, between 1 and 127 -
inclusive - except 125 if the "current code is bad").  This requested
change would make scripted "git bisect" runs much more palatable. 
Whether running "make test" as a whole and looking for the cause of
breakage, or running a specific set of tests (regardless of the final
syntax from #1 above), the git bisect could be scripted as opposed to
the manual build/test/good or build/test/pass repetition that I endured
to pinpoint the cause of the three of five "make test" failures that I
mentioned above.

Andrew Kroeger

P.S. - From #2 above, I also believe there would be extreme additional
benefit to such non-zereo exit codes, as future (as in another separate
RFE) builds within the build farm (and also with the new "big" build
machine) could use better targeting of the "broken build" e-mail
notifications if a particular commit can be isolated as the cause of any
new/unexpected test failures.

More information about the samba-technical mailing list