Hi.

        A few times now, we’ve run into issues where we weren’t sure what sort 
of state the surrounding environment was present when a pre commit patch test 
was done.  Additionally, there are times when installing or even updating a 
component was a challenge.   There are some bits that we do not compile or even 
test as part of the Jenkins run as a result.

        After a bit less than a week of work, I’ve managed to get test-patch.sh 
smart enough to launch and re-exec itself inside a docker container.  The 
container definition is part of the source tree.  This effectively means that, 
after HADOOP-11933 is committed, we’ll be able to have a much greater sense of 
control over the exact environment that is running during patch test time.  
We’ll be able to easily add/remove components as necessary.

        Currently, HADOOP-11933 is awaiting review.  But I thought I’d pop this 
message out here so that more people are aware of the patch as well as if there 
are any thoughts/concerns/feature requests/etc prior to any potential commit. 
It should be noted that Jenkins’ precommit has the flags configured such that 
when test-patch.sh re-exec’s itself to test the patch, it does so in a docker 
container. In other words, the docker container patch is testing itself in a 
docker container. :)  (Other patches ignore those flags since this patch isn’t 
live yet.)

Thanks.

Reply via email to