[ https://issues.apache.org/jira/browse/HADOOP-11929?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Allen Wittenauer updated HADOOP-11929: -------------------------------------- Attachment: HADOOP-11929.04.patch -04: * big rebase * includes the current version of HADOOP-11984, just to give the patch some weight hadoop.sh changes: * hadoop personality forces tools to be last * checkstyle should be working now * mvn install run after javac run * removed more stuff out of the linux build to match jenkins capabilities. (we'll build this back up later) * removed bzip out of the mac build due to bzip detection in our cmake files being broken * javadoc pre-reqs now specifically called out * mvn install adds -DskipTests * parallel tests support shellcheck.sh: * fixes for moved modules * checkstyle * significant update to use new per-module framework bits test-patch.sh: * fixes for moved modules. CHANGED_MODULES now recalculated after patch application * New CHANGED_UNFILTERED_MODULES. CHANGED_MODULES has always had non-code modules stripped out of it. CHANGED_UNFILTERED has every module in it. * new clock_display functions pulls code out of add_jira_table so other routines can print elapsed time themselves * jira_footer now has protoc version * maven log files now print the maven command used at the top of the file * mvninstall is now separate test type. (almost, still some todo here) * reordered test lists in determine_tests * lots of bug fixes and API changes to the new mvn_module* routines, primarily so mvn_module_messages can be use for both success and fail, greatly reducing code elsewhere * much of the time handling has been cleaned up, with reported times now mostly being mvn times and not test-patch.sh overhead time. global time reports maven + shell overhead. * even more file name consistency * almost all tests now report for *every* module *every* time rather than giving a blanket +1 for entire chunks > add test-patch plugin points for customizing build layout > --------------------------------------------------------- > > Key: HADOOP-11929 > URL: https://issues.apache.org/jira/browse/HADOOP-11929 > Project: Hadoop Common > Issue Type: Improvement > Reporter: Sean Busbey > Assignee: Allen Wittenauer > Priority: Minor > Attachments: HADOOP-11929.00.patch, HADOOP-11929.01.patch, > HADOOP-11929.02.patch, HADOOP-11929.03.patch, HADOOP-11929.04.patch, hadoop.sh > > > Sean Busbey and I had a chat about this at the Bug Bash. Here's the proposal: > * Introduce the concept of a 'personality module'. > * There can be only one personality. > * Personalities provide a single function that takes as input the name of > the test current being processed > * This function uses two other built-in functions to define two queues: > maven module name and profiles to use against those maven module names > * If something needs to be compiled prior to this test (but not actually > tested), the personality will be responsible for doing that compilation > In hadoop, the classic example is hadoop-hdfs needs common compiled with the > native bits. So prior to the javac tests, the personality would check > CHANGED_MODULES, see hadoop-hdfs, and compile common w/ -Pnative prior to > letting test-patch.sh do the work in hadoop-hdfs. Another example is our lack > of test coverage of various native bits. Since these require profiles to be > defined prior to compilation, the personality could see that something > touches native code, set the appropriate profile, and let test-patch.sh be on > its way. > One way to think of it is some higher order logic on top of the automated > 'figure out what modules and what tests to run' functions. -- This message was sent by Atlassian JIRA (v6.3.4#6332)