Sorry to chime in late. It was Chinese new year started yesterday. BTW, happy new year to bigtop:)
A script would be a lot of help for testing, so probably we can have a directory to store some dev tools like this, or put it on wiki first. My origin question is about the patch naming convention. In wiki <https://cwiki.apache.org/confluence/display/BIGTOP/How+to+Contribute> we suggest contributors to upload same name for different patch attempts to better track the version. A problem for this is that there's a scenario which I'd like to vimdiff two different patches to know what has been changed. Same naming for patches would require me to rename patches in different names by myself, which might cause confusing, and probably result in a wrong version being committed. To be picky, named patches the same required tester to know how jira sort the patches(asc or desc), which I think is a little bit non-intuition. To sum up, I think it would be better to name them differently with a simple version number. However, there might be a smarter way to do so. So it would be great if you guys can share your magic how to do the testing:) 2015/2/18 下午9:47 於 "jay vyas" <[email protected]> 寫道: hi bigtop. evans asked me an interesting question about how to maintain patches and test them and so on without getting mixed up in the bigtop patch review process. testing patches is tricky sometimes in bigtop, esp with so many different sections of the code base that we work on, and with needing to do things like create VMs dockerfiles and so on. This is all i do at the moment: A shell script which takes patch URL as argument, creates a new git branch, clears vagrant boxes. If folks have a workflow in their head, we can use this or something similar to expand upon for a unified test flow. or maybe we can think of a creative way to locally leverage and reuse the jenkins work folks are doing? #function to clean vagrant boxes, not in this snippet. delete_vagrant_boxes echo "Bigtop patch tester : $0, wgets the patch, applies in a new unique-named branch" if [ $# -eq 0 ]; then echo "USAGE: Takes patch url as input, applies it in a new branch" exit fi patch="`echo $1 | rev | cut -d'/' -f 1 | rev`" echo "PATCH = $patch" wget $1 -O /tmp/$patch wc -l /tmp/*patch echo "Checkout root branch and clean it?" read x git checkout jay_dev git clean -i echo "apply patch in new branch ?" read x git checkout jay_dev git checkout -b "$patch-`date | tr ' ' '_' | tr ':' '_'`" echo "apply patch now in this branch `git branch` .... ?" read x git am /tmp/$patch # shows the applied patch. git log | head -- jay vyas
