You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@yetus.apache.org by aw...@apache.org on 2016/04/22 22:25:19 UTC
[01/22] yetus git commit: YETUS-326. Make releasedocmaker.py lint
filters configurable. [Forced Update!]
Repository: yetus
Updated Branches:
refs/heads/YETUS-156 64377ca5a -> b7c187fea (forced update)
YETUS-326. Make releasedocmaker.py lint filters configurable.
Signed-off-by: Sean Busbey <bu...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/yetus/repo
Commit: http://git-wip-us.apache.org/repos/asf/yetus/commit/60022272
Tree: http://git-wip-us.apache.org/repos/asf/yetus/tree/60022272
Diff: http://git-wip-us.apache.org/repos/asf/yetus/diff/60022272
Branch: refs/heads/YETUS-156
Commit: 60022272f24514ea27410e91f994f7bf4a4eb6af
Parents: d4aaa74
Author: Andrew Wang <an...@cloudera.com>
Authored: Mon Apr 4 13:54:37 2016 -0700
Committer: Sean Busbey <bu...@apache.org>
Committed: Thu Apr 21 23:39:39 2016 -0500
----------------------------------------------------------------------
release-doc-maker/releasedocmaker.py | 130 +++++++++++++++++++++++-------
1 file changed, 100 insertions(+), 30 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/yetus/blob/60022272/release-doc-maker/releasedocmaker.py
----------------------------------------------------------------------
diff --git a/release-doc-maker/releasedocmaker.py b/release-doc-maker/releasedocmaker.py
index 5f28a73..f20bfd6 100755
--- a/release-doc-maker/releasedocmaker.py
+++ b/release-doc-maker/releasedocmaker.py
@@ -319,24 +319,6 @@ class Jira(object):
self.important = True
return self.important
- def check_missing_component(self):
- if len(self.fields['components']) > 0:
- return False
- return True
-
- def check_missing_assignee(self):
- if self.fields['assignee'] is not None:
- return False
- return True
-
- def check_version_string(self):
- field = self.parent.field_id_map['Fix Version/s']
- for ver in self.fields[field]:
- found = re.match(r'^((\d+)(\.\d+)*).*$|^(\w+\-\d+)$', ver['name'])
- if not found:
- return True
- return False
-
def get_release_date(self, version):
fix_versions = self.fields['fixVersions']
for j in range(len(fix_versions)):
@@ -462,45 +444,133 @@ class Linter(object):
"""Encapsulates lint-related functionality.
Maintains running lint statistics about JIRAs."""
- def __init__(self, version):
+ _valid_filters = ["incompatible", "important", "version", "component", "assignee"]
+
+ def __init__(self, version, options):
self._warning_count = 0
self._error_count = 0
self._lint_message = ""
self._version = version
+ self._filters = dict(zip(self._valid_filters, [False]*len(self._valid_filters)))
+
+ self.enabled = False
+ self._parse_options(options)
+
+ @staticmethod
+ def add_parser_options(parser):
+ """Add Linter options to passed optparse parser."""
+ filter_string = ", ".join("'" + f + "'" for f in Linter._valid_filters)
+ parser.add_option("-n", "--lint", dest="lint", action="append", type="string",
+ help="Specify lint filters. Valid filters are " + \
+ filter_string + ". " + \
+ "'all' enables all lint filters. " + \
+ "Multiple filters can be specified comma-delimited and " + \
+ "filters can be negated, e.g. 'all,-component'.")
+
+ def _parse_options(self, options):
+ """Parse options from optparse."""
+
+ if options.lint is None or len(options.lint) == 0:
+ return
+ self.enabled = True
+
+ # Valid filter specifications are self._valid_filters, negations, and "all"
+ valid_list = self._valid_filters
+ valid_list += ["-" + v for v in valid_list]
+ valid_list += ["all"]
+ valid = set(valid_list)
+
+ enabled = []
+ disabled = []
+
+ for o in options.lint:
+ for token in o.split(","):
+ if token not in valid:
+ print "Unknown lint filter '%s', valid options are: %s" % \
+ (token, ", ".join(v for v in sorted(valid)))
+ sys.exit(1)
+ if token.startswith("-"):
+ disabled.append(token[1:])
+ else:
+ enabled.append(token)
+
+ for e in enabled:
+ if e == "all":
+ for f in self._valid_filters:
+ self._filters[f] = True
+ else:
+ self._filters[e] = True
+ for d in disabled:
+ self._filters[d] = False
+
def had_errors(self):
"""Returns True if a lint error was encountered, else False."""
return self._error_count > 0
def message(self):
"""Return summary lint message suitable for printing to stdout."""
+ if not self.enabled:
+ return
return self._lint_message + \
"\n=======================================" + \
"\n%s: Error:%d, Warning:%d \n" % \
(self._version, self._error_count, self._warning_count)
+ def _check_missing_component(self, jira):
+ """Return if JIRA has a 'missing component' lint error."""
+ if not self._filters["component"]:
+ return False
+
+ if len(jira.fields['components']) > 0:
+ return False
+ return True
+
+ def _check_missing_assignee(self, jira):
+ """Return if JIRA has a 'missing assignee' lint error."""
+ if not self._filters["assignee"]:
+ return False
+
+ if jira.fields['assignee'] is not None:
+ return False
+ return True
+
+ def _check_version_string(self, jira):
+ """Return if JIRA has a version string lint error."""
+ if not self._filters["version"]:
+ return False
+
+ field = jira.parent.field_id_map['Fix Version/s']
+ for ver in jira.fields[field]:
+ found = re.match(r'^((\d+)(\.\d+)*).*$|^(\w+\-\d+)$', ver['name'])
+ if not found:
+ return True
+ return False
+
def lint(self, jira):
"""Run lint check on a JIRA."""
+ if not self.enabled:
+ return
if len(jira.get_release_note()) == 0:
- if jira.get_incompatible_change():
+ if self._filters["incompatible"] and jira.get_incompatible_change():
self._warning_count += 1
self._lint_message += "\nWARNING: incompatible change %s lacks release notes." % \
(textsanitize(jira.get_id()))
- if jira.get_important():
+ if self._filters["important"] and jira.get_important():
self._warning_count += 1
self._lint_message += "\nWARNING: important issue %s lacks release notes." % \
(textsanitize(jira.get_id()))
- if jira.check_version_string():
+ if self._check_version_string(jira):
self._warning_count += 1
self._lint_message += "\nWARNING: Version string problem for %s " % jira.get_id()
- if jira.check_missing_component() or jira.check_missing_assignee():
+ if self._check_missing_component(jira) or self._check_missing_assignee(jira):
self._error_count += 1
error_message = []
- if jira.check_missing_component():
+ if self._check_missing_component(jira):
error_message.append("component")
- if jira.check_missing_assignee():
+ if self._check_missing_assignee(jira):
error_message.append("assignee")
self._lint_message += "\nERROR: missing %s for %s " \
% (" and ".join(error_message), jira.get_id())
@@ -516,8 +586,6 @@ def parse_args():
default=False, help="build an index file")
parser.add_option("-l", "--license", dest="license", action="store_true",
default=False, help="Add an ASF license")
- parser.add_option("-n", "--lint", dest="lint", action="store_true",
- help="use lint flag to exit on failures")
parser.add_option("-p", "--project", dest="projects",
action="append", type="string",
help="projects in JIRA to include in releasenotes", metavar="PROJECT")
@@ -539,6 +607,9 @@ def parse_args():
help="specify output directory to put release docs to.")
parser.add_option("-B", "--baseurl", dest="base_url", action="append", type="string",
help="specify base URL of the JIRA instance.")
+
+ Linter.add_parser_options(parser)
+
(options, _) = parser.parse_args()
# Validate options
@@ -610,6 +681,7 @@ def main():
for version in versions:
vstr = str(version)
+ linter = Linter(vstr, options)
jlist = sorted(JiraIter(vstr, projects))
if len(jlist) == 0:
print "There is no issue which has the specified version: %s" % version
@@ -646,8 +718,6 @@ def main():
reloutputs.write_all(relhead)
choutputs.write_all(chhead)
- linter = Linter(vstr)
-
incompatlist = []
importantlist = []
buglist = []
@@ -695,7 +765,7 @@ def main():
linter.lint(jira)
- if options.lint is True:
+ if linter.enabled:
print linter.message()
if linter.had_errors():
haderrors = True
[15/22] yetus git commit: YETUS-385. test plugin for author tag
detection should have a way to opt-out of specific instances
Posted by aw...@apache.org.
YETUS-385. test plugin for author tag detection should have a way to opt-out of specific instances
Signed-off-by: Allen Wittenauer <aw...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/yetus/repo
Commit: http://git-wip-us.apache.org/repos/asf/yetus/commit/7501b403
Tree: http://git-wip-us.apache.org/repos/asf/yetus/tree/7501b403
Diff: http://git-wip-us.apache.org/repos/asf/yetus/diff/7501b403
Branch: refs/heads/YETUS-156
Commit: 7501b40367069cc0a15cd898f326b8a0d3dd7568
Parents: daf411f
Author: Allen Wittenauer <aw...@apache.org>
Authored: Mon Apr 18 13:40:37 2016 -0700
Committer: Allen Wittenauer <aw...@apache.org>
Committed: Fri Apr 22 13:25:07 2016 -0700
----------------------------------------------------------------------
precommit/test-patch.d/author.sh | 43 ++++++++++++++++++++++++++++++++---
1 file changed, 40 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/yetus/blob/7501b403/precommit/test-patch.d/author.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.d/author.sh b/precommit/test-patch.d/author.sh
index 0e00c80..dccd504 100755
--- a/precommit/test-patch.d/author.sh
+++ b/precommit/test-patch.d/author.sh
@@ -16,6 +16,32 @@
add_test_type author
+## @description author usage hook
+## @audience private
+## @stability evolving
+## @replaceable no
+function author_usage
+{
+ yetus_add_option "--author-ignore-list=<list>" "list of filenames to ignore (full build mode only)"
+}
+
+## @description author parse args hook
+## @audience private
+## @stability evolving
+## @replaceable no
+function author_parse_args
+{
+ declare i
+
+ for i in "$@"; do
+ case ${i} in
+ --author-ignore-list=*)
+ yetus_comma_to_array AUTHOR_IGNORE_LIST "${i#*=}"
+ ;;
+ esac
+ done
+}
+
## @description helper function for @author tags check
## @audience private
## @stability evolving
@@ -93,7 +119,7 @@ function author_postcompile
{
# shellcheck disable=SC2155
declare -r appname=$(basename "${BASH_SOURCE-$0}")
- declare i
+ declare fn
if [[ "${BUILDMODE}" != full ]]; then
return
@@ -103,9 +129,20 @@ function author_postcompile
start_clock
- "${GIT}" grep -n -I --extended-regexp -i '^[^-].*@author' \
+ "${GIT}" grep -n -I --extended-regexp -i -e '^[^-].*@author' \
| ${GREP} -v "${appname}" \
- >> "${PATCH_DIR}/author-tags.txt"
+ >> "${PATCH_DIR}/author-tags-git.txt"
+
+ if [[ -z "${AUTHOR_IGNORE_LIST[0]}" ]]; then
+ cp -p "${PATCH_DIR}/author-tags-git.txt" "${PATCH_DIR}/author-tags.txt"
+ else
+ cp -p "${PATCH_DIR}/author-tags-git.txt" "${PATCH_DIR}/author-tags.1"
+ for fn in "${AUTHOR_IGNORE_LIST[@]}"; do
+ ${GREP} -v -E "^${fn}" "${PATCH_DIR}/author-tags.1" >> "${PATCH_DIR}/author-tags.2"
+ mv "${PATCH_DIR}/author-tags.2" "${PATCH_DIR}/author-tags.1"
+ done
+ mv "${PATCH_DIR}/author-tags.1" "${PATCH_DIR}/author-tags.txt"
+ fi
author_generic
}
[12/22] yetus git commit: YETUS-353. runtime wrapper for build driver
Posted by aw...@apache.org.
YETUS-353. runtime wrapper for build driver
Signed-off-by: Allen Wittenauer <aw...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/yetus/repo
Commit: http://git-wip-us.apache.org/repos/asf/yetus/commit/d5e00322
Tree: http://git-wip-us.apache.org/repos/asf/yetus/tree/d5e00322
Diff: http://git-wip-us.apache.org/repos/asf/yetus/diff/d5e00322
Branch: refs/heads/YETUS-156
Commit: d5e00322808f626477cc04d0ab52af0c791f81f9
Parents: ce6d4d4
Author: Allen Wittenauer <aw...@apache.org>
Authored: Tue Mar 29 17:12:43 2016 -0700
Committer: Allen Wittenauer <aw...@apache.org>
Committed: Fri Apr 22 13:25:07 2016 -0700
----------------------------------------------------------------------
build.sh | 3 ++-
precommit/test-patch.sh | 8 +++++++-
2 files changed, 9 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/yetus/blob/d5e00322/build.sh
----------------------------------------------------------------------
diff --git a/build.sh b/build.sh
index 9fecbec..d5f3904 100755
--- a/build.sh
+++ b/build.sh
@@ -169,6 +169,7 @@ cp -r shelldocs "${bin_tarball}/lib/"
cp -r release-doc-maker "${bin_tarball}/lib/"
cp -r precommit "${bin_tarball}/lib/"
+ln -s test-patch.sh "${bin_tarball}/lib/precommit/qbt.sh"
mkdir -p "${bin_tarball}/bin"
@@ -204,7 +205,7 @@ exec "\$(dirname -- "\${BASH_SOURCE-0}")/../lib/release-doc-maker/releasedocmake
EOF
chmod +x "${bin_tarball}/bin/releasedocmaker"
-for utility in shelldocs/shelldocs.py \
+for utility in shelldocs/shelldocs.py precommit/qbt.sh \
precommit/smart-apply-patch.sh precommit/test-patch.sh
do
wrapper=${utility##*/}
http://git-wip-us.apache.org/repos/asf/yetus/blob/d5e00322/precommit/test-patch.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.sh b/precommit/test-patch.sh
index 23e7c3a..f3dbc92 100755
--- a/precommit/test-patch.sh
+++ b/precommit/test-patch.sh
@@ -25,6 +25,8 @@ fi
this="${BASH_SOURCE-$0}"
BINDIR=$(cd -P -- "$(dirname -- "${this}")" >/dev/null && pwd -P)
+BINNAME=${this##*/}
+BINNAME=${BINNAME%.sh}
STARTINGDIR=$(pwd)
USER_PARAMS=("$@")
GLOBALTIMER=$(date +"%s")
@@ -3031,7 +3033,11 @@ function import_core
import_core
-initialize "$@"
+if [[ "${BINNAME}" =~ qbt ]]; then
+ initialize --empty-patch "$@"
+else
+ initialize "$@"
+fi
prechecks
[05/22] yetus git commit: YETUS-347. change docker handler to use
arrays
Posted by aw...@apache.org.
YETUS-347. change docker handler to use arrays
Signed-off-by: Allen Wittenauer <aw...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/yetus/repo
Commit: http://git-wip-us.apache.org/repos/asf/yetus/commit/5bd344c4
Tree: http://git-wip-us.apache.org/repos/asf/yetus/tree/5bd344c4
Diff: http://git-wip-us.apache.org/repos/asf/yetus/diff/5bd344c4
Branch: refs/heads/YETUS-156
Commit: 5bd344c4b5ad3625df28d20481ae8c88a53e76a3
Parents: e3ea8a4
Author: Allen Wittenauer <aw...@apache.org>
Authored: Tue Mar 29 13:17:19 2016 -0700
Committer: Allen Wittenauer <aw...@apache.org>
Committed: Fri Apr 22 13:24:06 2016 -0700
----------------------------------------------------------------------
.../in-progress/precommit-buildtools.md | 2 +-
precommit/core.d/docker.sh | 21 +++++++---------
.../test-patch-docker/launch-test-patch.sh | 25 ++++++++++++--------
precommit/test-patch.d/ant.sh | 2 +-
precommit/test-patch.d/gradle.sh | 2 +-
precommit/test-patch.d/maven.sh | 5 ++--
6 files changed, 29 insertions(+), 28 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/yetus/blob/5bd344c4/asf-site-src/source/documentation/in-progress/precommit-buildtools.md
----------------------------------------------------------------------
diff --git a/asf-site-src/source/documentation/in-progress/precommit-buildtools.md b/asf-site-src/source/documentation/in-progress/precommit-buildtools.md
index e800135..bf530ba 100644
--- a/asf-site-src/source/documentation/in-progress/precommit-buildtools.md
+++ b/asf-site-src/source/documentation/in-progress/precommit-buildtools.md
@@ -102,7 +102,7 @@ For example, the gradle build tool does not have a standard way to execute check
* pluginname\_docker\_support
- - If this build tool requires extra settings on the `docker run` command line, this function should be defined and write those options into a file called `${PATCH_DIR}/buildtool-docker-params.txt`. This is particularly useful for things like mounting volumes for repository caches.
+ - If this build tool requires extra settings on the `docker run` command line, this function should be defined and add those options into an array called `${DOCKER_EXTRAARGS[@]}`. This is particularly useful for things like mounting volumes for repository caches.
**WARNING**: Be aware that directories that do not exist MAY be created by root by Docker itself under certain conditions. It is HIGHLY recommend that `pluginname_initialize` be used to create the necessary directories prior to be used in the `docker run` command.
http://git-wip-us.apache.org/repos/asf/yetus/blob/5bd344c4/precommit/core.d/docker.sh
----------------------------------------------------------------------
diff --git a/precommit/core.d/docker.sh b/precommit/core.d/docker.sh
index e0706a3..2d7f550 100755
--- a/precommit/core.d/docker.sh
+++ b/precommit/core.d/docker.sh
@@ -23,6 +23,8 @@ DOCKERFAIL="fallback,continue,fail"
DOCKERSUPPORT=false
DOCKER_ENABLE_PRIVILEGED=true
+declare -a DOCKER_EXTRAARGS
+
####
#### IMPORTANT
####
@@ -531,7 +533,7 @@ function docker_run_image
cleanup_and_exit 1
fi
- big_console_header "Building patch image: ${patchimagename}"
+ big_console_header "Building ${BUILDMODE} image: ${patchimagename}"
start_clock
# using the base image, make one that is patch specific
dockercmd build \
@@ -564,14 +566,8 @@ PatchSpecificDocker
cleanup_and_exit 1
fi
- if [[ -f "${PATCH_DIR}/buildtool-docker-params.txt" ]]; then
- extraargs=$(cat "${PATCH_DIR}/buildtool-docker-params.txt")
- else
- extraargs=""
- fi
-
if [[ "${DOCKER_ENABLE_PRIVILEGED}" = true ]]; then
- extraargs="${extraargs} --privileged "
+ DOCKER_EXTRAARGS=("--privileged" "${DOCKER_EXTRAARGS[@]}")
fi
client=$(docker_version Client)
@@ -579,9 +575,8 @@ PatchSpecificDocker
dockerversion="Client=${client} Server=${server}"
if [[ ${PATCH_DIR} =~ ^/ ]]; then
- # shellcheck disable=SC2086
exec "${DOCKERCMD}" run --rm=true -i \
- ${extraargs} \
+ "${DOCKER_EXTRAARGS[@]}" \
-v "${PWD}:/testptch/${PROJECT_NAME}" \
-v "${PATCH_DIR}:/testptch/patchprocess" \
-u "${USER_NAME}" \
@@ -596,9 +591,8 @@ PatchSpecificDocker
--name "${containername}" \
"${patchimagename}"
else
- # shellcheck disable=SC2086
exec "${DOCKERCMD}" run --rm=true -i \
- ${extraargs} \
+ "${DOCKER_EXTRAARGS[@]}" \
-v "${PWD}:/testptch/${PROJECT_NAME}" \
-u "${USER_NAME}" \
-w "/testptch/${PROJECT_NAME}" \
@@ -612,6 +606,9 @@ PatchSpecificDocker
--name "${containername}" \
"${patchimagename}"
fi
+
+ # this should never get reached, but we put it here just in case
+ cleanup_and_exit 1
}
## @description Switch over to a Docker container
http://git-wip-us.apache.org/repos/asf/yetus/blob/5bd344c4/precommit/test-patch-docker/launch-test-patch.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch-docker/launch-test-patch.sh b/precommit/test-patch-docker/launch-test-patch.sh
index 7daa612..a99f149 100755
--- a/precommit/test-patch-docker/launch-test-patch.sh
+++ b/precommit/test-patch-docker/launch-test-patch.sh
@@ -14,6 +14,12 @@
# See the License for the specific language governing permissions and
# limitations under the License.
+declare -a OVERWRITEARGS
+
+OVERWRITEARGS=("--reexec")
+OVERWRITEARGS=("${OVERWRITEARGS[@]}" "--dockermode")
+OVERWRITEARGS=("${OVERWRITEARGS[@]}" "--basedir=${BASEDIR}")
+
cd "${BASEDIR}" || exit 1
if [[ -n ${JAVA_HOME}
@@ -25,6 +31,10 @@ fi
if [[ -z ${JAVA_HOME} ]]; then
JAVA_HOME=$(find /usr/lib/jvm/ -name "java-*" -type d | tail -1)
export JAVA_HOME
+ if [[ -n "${JAVA_HOME}" ]]; then
+ OVERWRITEARGS=("${OVERWRITEARGS[@]}" "--java-home=${JAVA_HOME}")
+ echo "Setting ${JAVA_HOME} as the JAVA_HOME."
+ fi
fi
# Avoid out of memory errors in builds
@@ -35,9 +45,9 @@ export MAVEN_OPTS
TESTPATCHMODE=${TESTPATCHMODE/--docker }
TESTPATCHMODE=${TESTPATCHMODE%--docker}
-
-cd "${BASEDIR}" || exit 1
PATCH_DIR=$(cd -P -- "${PATCH_DIR}" >/dev/null && pwd -P)
+OVERWRITEARGS=("${OVERWRITEARGS[@]}" "--patch-dir=${PATCH_DIR}")
+OVERWRITEARGS=("${OVERWRITEARGS[@]}" "--user-plugins=${PATCH_DIR}/precommit/user-plugins")
# if patch system is generic, then it's either a local
# patch file or was in some other way not pulled from a bug
@@ -45,16 +55,11 @@ PATCH_DIR=$(cd -P -- "${PATCH_DIR}" >/dev/null && pwd -P)
# test-patch where to find it.
if [[ "${PATCH_SYSTEM}" = generic ]]; then
cp -p "${PATCH_DIR}/patch" /testptch/extras/patch
- patchfile="/testptch/extras/patch"
+ OVERWRITEARGS=("${OVERWRITEARGS[@]}" "/testptch/extras/patch")
fi
cd "${PATCH_DIR}/precommit/" || exit 1
#shellcheck disable=SC2086
"${PATCH_DIR}/precommit/test-patch.sh" \
- --reexec \
- --dockermode ${TESTPATCHMODE} \
- --basedir="${BASEDIR}" \
- --patch-dir="${PATCH_DIR}" \
- --java-home="${JAVA_HOME}" \
- --user-plugins="${PATCH_DIR}/precommit/user-plugins" \
- ${patchfile}
+ ${TESTPATCHMODE} \
+ "${OVERWRITEARGS[@]}"
http://git-wip-us.apache.org/repos/asf/yetus/blob/5bd344c4/precommit/test-patch.d/ant.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.d/ant.sh b/precommit/test-patch.d/ant.sh
index 64c4067..61e13c9 100755
--- a/precommit/test-patch.d/ant.sh
+++ b/precommit/test-patch.d/ant.sh
@@ -200,5 +200,5 @@ function ant_builtin_personality_file_tests
function ant_docker_support
{
- echo "-v ${HOME}/.ivy2:${HOME}/.ivy2" > "${PATCH_DIR}/buildtool-docker-params.txt"
+ DOCKER_EXTRAARGS=("${DOCKER_EXTRAARGS}" "-v" "${HOME}/.ivy2:${HOME}/.ivy2")
}
http://git-wip-us.apache.org/repos/asf/yetus/blob/5bd344c4/precommit/test-patch.d/gradle.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.d/gradle.sh b/precommit/test-patch.d/gradle.sh
index 57e023d..1f971fa 100755
--- a/precommit/test-patch.d/gradle.sh
+++ b/precommit/test-patch.d/gradle.sh
@@ -277,5 +277,5 @@ function gradle_builtin_personality_file_tests
function gradle_docker_support
{
- echo "-v ${HOME}/.gradle:${HOME}/.gradle" > "${PATCH_DIR}/buildtool-docker-params.txt"
+ DOCKER_EXTRAARGS=("${DOCKER_EXTRAARGS[@]}" "-v" "${HOME}/.gradle:${HOME}/.gradle")
}
http://git-wip-us.apache.org/repos/asf/yetus/blob/5bd344c4/precommit/test-patch.d/maven.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.d/maven.sh b/precommit/test-patch.d/maven.sh
index 2e006c1..1a2a86b 100755
--- a/precommit/test-patch.d/maven.sh
+++ b/precommit/test-patch.d/maven.sh
@@ -554,11 +554,10 @@ function maven_precompile
function maven_docker_support
{
- echo "-v ${HOME}/.m2:${HOME}/.m2" > "${PATCH_DIR}/buildtool-docker-params.txt"
+ DOCKER_EXTRAARGS=("${DOCKER_EXTRAARGS[@]}" "-v" "${HOME}/.m2:${HOME}/.m2")
if [[ ${MAVEN_CUSTOM_REPOS} = true ]]; then
- echo "-v ${MAVEN_CUSTOM_REPOS_DIR}:${MAVEN_CUSTOM_REPOS_DIR}" \
- >> "${PATCH_DIR}/buildtool-docker-params.txt"
+ DOCKER_EXTRAARGS=("${DOCKER_EXTRAARGS[@]}" "-v" "${MAVEN_CUSTOM_REPOS_DIR}:${MAVEN_CUSTOM_REPOS_DIR}")
fi
}
[06/22] yetus git commit: YETUS-348. add ability to write console
report to a file
Posted by aw...@apache.org.
YETUS-348. add ability to write console report to a file
Signed-off-by: Allen Wittenauer <aw...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/yetus/repo
Commit: http://git-wip-us.apache.org/repos/asf/yetus/commit/b0dcaf35
Tree: http://git-wip-us.apache.org/repos/asf/yetus/tree/b0dcaf35
Diff: http://git-wip-us.apache.org/repos/asf/yetus/diff/b0dcaf35
Branch: refs/heads/YETUS-156
Commit: b0dcaf35c1c106705fbf87fa1a524646e8fa1a62
Parents: 5bd344c
Author: Allen Wittenauer <aw...@apache.org>
Authored: Tue Mar 29 15:23:33 2016 -0700
Committer: Allen Wittenauer <aw...@apache.org>
Committed: Fri Apr 22 13:24:06 2016 -0700
----------------------------------------------------------------------
precommit/core.d/00-yetuslib.sh | 2 +-
precommit/core.d/builtin-bugsystem.sh | 10 ++++++++++
precommit/core.d/docker.sh | 5 +++++
.../test-patch-docker/launch-test-patch.sh | 4 ++++
precommit/test-patch.sh | 20 +++++++++++++++++---
5 files changed, 37 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/yetus/blob/b0dcaf35/precommit/core.d/00-yetuslib.sh
----------------------------------------------------------------------
diff --git a/precommit/core.d/00-yetuslib.sh b/precommit/core.d/00-yetuslib.sh
index 90ffa16..25118cb 100755
--- a/precommit/core.d/00-yetuslib.sh
+++ b/precommit/core.d/00-yetuslib.sh
@@ -101,7 +101,7 @@ function yetus_run_and_redirect
## @description Given a filename or dir, return the absolute version of it
## @audience public
## @stability stable
-## @param directory
+## @param fsobj
## @replaceable no
## @return 0 success
## @return 1 failure
http://git-wip-us.apache.org/repos/asf/yetus/blob/b0dcaf35/precommit/core.d/builtin-bugsystem.sh
----------------------------------------------------------------------
diff --git a/precommit/core.d/builtin-bugsystem.sh b/precommit/core.d/builtin-bugsystem.sh
index f83e7c9..c7d9a6c 100755
--- a/precommit/core.d/builtin-bugsystem.sh
+++ b/precommit/core.d/builtin-bugsystem.sh
@@ -45,6 +45,11 @@ function console_finalreport
declare seccoladj=0
declare spcfx=${PATCH_DIR}/spcl.txt
+ if [[ -n "${CONSOLE_REPORT_FILE}" ]]; then
+ exec 6>&1
+ exec >"${CONSOLE_REPORT_FILE}"
+ fi
+
if [[ ${result} == 0 ]]; then
if [[ ${ROBOT} == false ]]; then
if declare -f ${PROJECT_NAME}_console_success >/dev/null; then
@@ -154,4 +159,9 @@ function console_finalreport
printf "%s\n" "${comment}"
((i=i+1))
done
+
+ if [[ -n "${CONSOLE_REPORT_FILE}" ]]; then
+ exec 1>&6 6>&-
+ cat "${CONSOLE_REPORT_FILE}"
+ fi
}
http://git-wip-us.apache.org/repos/asf/yetus/blob/b0dcaf35/precommit/core.d/docker.sh
----------------------------------------------------------------------
diff --git a/precommit/core.d/docker.sh b/precommit/core.d/docker.sh
index 2d7f550..062c8c1 100755
--- a/precommit/core.d/docker.sh
+++ b/precommit/core.d/docker.sh
@@ -570,6 +570,11 @@ PatchSpecificDocker
DOCKER_EXTRAARGS=("--privileged" "${DOCKER_EXTRAARGS[@]}")
fi
+ if [[ -n "${CONSOLE_REPORT_FILE}" ]]; then
+ touch "${CONSOLE_REPORT_FILE}"
+ DOCKER_EXTRAARGS=("${DOCKER_EXTRAARGS[@]}" "-v" "${CONSOLE_REPORT_FILE}:/testptch/console.txt")
+ fi
+
client=$(docker_version Client)
server=$(docker_version Server)
http://git-wip-us.apache.org/repos/asf/yetus/blob/b0dcaf35/precommit/test-patch-docker/launch-test-patch.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch-docker/launch-test-patch.sh b/precommit/test-patch-docker/launch-test-patch.sh
index a99f149..f15dbf8 100755
--- a/precommit/test-patch-docker/launch-test-patch.sh
+++ b/precommit/test-patch-docker/launch-test-patch.sh
@@ -58,6 +58,10 @@ if [[ "${PATCH_SYSTEM}" = generic ]]; then
OVERWRITEARGS=("${OVERWRITEARGS[@]}" "/testptch/extras/patch")
fi
+if [[ -f /testptch/console.txt ]]; then
+ OVERWRITEARGS=("${OVERWRITEARGS[@]}" "--console-report-file=/testptch/console.txt")
+fi
+
cd "${PATCH_DIR}/precommit/" || exit 1
#shellcheck disable=SC2086
"${PATCH_DIR}/precommit/test-patch.sh" \
http://git-wip-us.apache.org/repos/asf/yetus/blob/b0dcaf35/precommit/test-patch.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.sh b/precommit/test-patch.sh
index 0260c59..a55bb05 100755
--- a/precommit/test-patch.sh
+++ b/precommit/test-patch.sh
@@ -651,7 +651,6 @@ function relative_dir
## @replaceable no
function yetus_usage
{
-
declare bugsys
declare jdktlist
@@ -725,6 +724,7 @@ function yetus_usage
yetus_add_option "--build-url=<url>" "Set the build location web page (Default: '${BUILD_URL}')"
yetus_add_option "--build-url-console=<location>" "Location relative to --build-url of the console (Default: '${BUILD_URL_CONSOLE}')"
yetus_add_option "--build-url-patchdir=<location>" "Location relative to --build-url of the --patch-dir (Default: '${BUILD_URL_ARTIFACTS}')"
+ yetus_add_option "--console-report-file=<file>" "Save the final console-based report to a file in addition to the screen"
yetus_add_option "--console-urls" "Use the build URL instead of path on the console report"
yetus_add_option "--instance=<string>" "Parallel execution identifier string"
yetus_add_option "--jenkins" "Enable Jenkins-specifc handling (auto: --robot)"
@@ -789,6 +789,9 @@ function parse_args
# shellcheck disable=SC2034
BUILD_URL_CONSOLE=${i#*=}
;;
+ --console-report-file=*)
+ CONSOLE_REPORT_FILE=${i#*=}
+ ;;
--console-urls)
# shellcheck disable=SC2034
CONSOLE_USE_BUILD_URL=true
@@ -940,6 +943,7 @@ function parse_args
PATCH_DIR="${USER_PATCH_DIR}"
fi
+ # we need absolute dir for PATCH_DIR
cd "${STARTINGDIR}" || cleanup_and_exit 1
if [[ ! -d ${PATCH_DIR} ]]; then
mkdir -p "${PATCH_DIR}"
@@ -950,10 +954,20 @@ function parse_args
cleanup_and_exit 1
fi
fi
-
- # we need absolute dir for PATCH_DIR
PATCH_DIR=$(yetus_abs "${PATCH_DIR}")
+ # we need absolute dir for ${CONSOLE_REPORT_FILE}
+ if [[ -n "${CONSOLE_REPORT_FILE}" ]]; then
+ touch "${CONSOLE_REPORT_FILE}"
+ if [[ $? != 0 ]]; then
+ yetus_error "ERROR: cannot write to ${CONSOLE_REPORT_FILE}. Disabling console report file."
+ unset CONSOLE_REPORT_FILE
+ else
+ j="${CONSOLE_REPORT_FILE}"
+ CONSOLE_REPORT_FILE=$(yetus_abs "${j}")
+ fi
+ fi
+
if [[ ${RESETREPO} == "true" ]] ; then
yetus_add_entry EXEC_MODES ResetRepo
fi
[13/22] yetus git commit: YETUS-354. findbugs in build driver has
problems
Posted by aw...@apache.org.
YETUS-354. findbugs in build driver has problems
Signed-off-by: Allen Wittenauer <aw...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/yetus/repo
Commit: http://git-wip-us.apache.org/repos/asf/yetus/commit/a24b5cb1
Tree: http://git-wip-us.apache.org/repos/asf/yetus/tree/a24b5cb1
Diff: http://git-wip-us.apache.org/repos/asf/yetus/diff/a24b5cb1
Branch: refs/heads/YETUS-156
Commit: a24b5cb146aff1c38fbd2b025426eb3d5260d74a
Parents: 4b7443b
Author: Allen Wittenauer <aw...@apache.org>
Authored: Mon Apr 11 10:45:18 2016 -0700
Committer: Allen Wittenauer <aw...@apache.org>
Committed: Fri Apr 22 13:25:07 2016 -0700
----------------------------------------------------------------------
precommit/test-patch.d/findbugs.sh | 14 ++++++++++++--
1 file changed, 12 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/yetus/blob/a24b5cb1/precommit/test-patch.d/findbugs.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.d/findbugs.sh b/precommit/test-patch.d/findbugs.sh
index 152d85f..24ccc95 100755
--- a/precommit/test-patch.d/findbugs.sh
+++ b/precommit/test-patch.d/findbugs.sh
@@ -281,9 +281,19 @@ function findbugs_preapply
if [[ ${module_findbugs_warnings} -gt 0 ]] ; then
msg="${module} in ${PATCH_BRANCH} has ${module_findbugs_warnings} extant Findbugs warnings."
- if [[ "${FINDBUGS_WARNINGS_FAIL_PRECHECK}" == "true" ]]; then
+ if [[ "${FINDBUGS_WARNINGS_FAIL_PRECHECK}" = "true" ]]; then
module_status ${modindex} -1 "branch-findbugs-${fn}-warnings.html" "${msg}"
((result=result+1))
+ elif [[ "${BUILDMODE}" = full ]]; then
+ module_status ${modindex} -1 "branch-findbugs-${fn}-warnings.html" "${msg}"
+ ((result=result+1))
+ populate_test_table FindBugs "module:${module}"
+ #shellcheck disable=SC2162
+ while read line; do
+ firstpart=$(echo "${line}" | cut -f2 -d:)
+ secondpart=$(echo "${line}" | cut -f9- -d' ')
+ add_test_table "" "${firstpart}:${secondpart}"
+ done < <("${FINDBUGS_HOME}/bin/convertXmlToText" "${warnings_file}.xml")
else
module_status ${modindex} 0 "branch-findbugs-${fn}-warnings.html" "${msg}"
fi
@@ -466,7 +476,7 @@ function findbugs_rebuild
{
declare repostatus=$1
- if [[ "${repostatus}" = branch ]]; then
+ if [[ "${repostatus}" = branch || "${BUILDMODE}" = full ]]; then
findbugs_preapply
else
findbugs_postinstall
[08/22] yetus git commit: YETUS-356. build driver: author plug-in
still mentions patches (addendum)
Posted by aw...@apache.org.
YETUS-356. build driver: author plug-in still mentions patches (addendum)
Signed-off-by: Allen Wittenauer <aw...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/yetus/repo
Commit: http://git-wip-us.apache.org/repos/asf/yetus/commit/798428ac
Tree: http://git-wip-us.apache.org/repos/asf/yetus/tree/798428ac
Diff: http://git-wip-us.apache.org/repos/asf/yetus/diff/798428ac
Branch: refs/heads/YETUS-156
Commit: 798428ac6d140efc2f2d17552eeece53cd76cdb7
Parents: 31a6e3a
Author: Allen Wittenauer <aw...@apache.org>
Authored: Tue Apr 12 21:32:46 2016 -0700
Committer: Allen Wittenauer <aw...@apache.org>
Committed: Fri Apr 22 13:25:07 2016 -0700
----------------------------------------------------------------------
precommit/test-patch.d/author.sh | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/yetus/blob/798428ac/precommit/test-patch.d/author.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.d/author.sh b/precommit/test-patch.d/author.sh
index 3d6e393..0e00c80 100755
--- a/precommit/test-patch.d/author.sh
+++ b/precommit/test-patch.d/author.sh
@@ -29,9 +29,9 @@ function author_generic
declare msg
if [[ "${BUILDMODE}" = full ]]; then
- msg="patch"
- else
msg="source tree"
+ else
+ msg="patch"
fi
# shellcheck disable=SC2016
[02/22] yetus git commit: YETUS-326 ADDENDUM script changes to
account for releasedocmaker lint options.
Posted by aw...@apache.org.
YETUS-326 ADDENDUM script changes to account for releasedocmaker lint options.
Signed-off-by: Andrew Wang <an...@cloudera.com>
Project: http://git-wip-us.apache.org/repos/asf/yetus/repo
Commit: http://git-wip-us.apache.org/repos/asf/yetus/commit/e3ea8a46
Tree: http://git-wip-us.apache.org/repos/asf/yetus/tree/e3ea8a46
Diff: http://git-wip-us.apache.org/repos/asf/yetus/diff/e3ea8a46
Branch: refs/heads/YETUS-156
Commit: e3ea8a46382265a36ea4712e74738352834faa34
Parents: 6002227
Author: Sean Busbey <bu...@apache.org>
Authored: Fri Apr 1 23:12:02 2016 -0500
Committer: Sean Busbey <bu...@apache.org>
Committed: Thu Apr 21 23:43:34 2016 -0500
----------------------------------------------------------------------
asf-site-src/config.rb | 2 +-
build.sh | 38 ++++++++++++++++++++++++++++++++++++--
2 files changed, 37 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/yetus/blob/e3ea8a46/asf-site-src/config.rb
----------------------------------------------------------------------
diff --git a/asf-site-src/config.rb b/asf-site-src/config.rb
index 2b1fd27..1dd9814 100644
--- a/asf-site-src/config.rb
+++ b/asf-site-src/config.rb
@@ -95,7 +95,7 @@ def releasenotes(output, version)
# file timestamp
`(cd #{output} && #{RELEASEDOCMAKER} --project=YETUS --version=#{version} \
--projecttitle="Apache Yetus" \
- --usetoday --license --lint)`
+ --usetoday --license --lint=all)`
unless $CHILD_STATUS.exitstatus == 0
abort("releasedocmaker failed to generate release notes for #{version}.")
end
http://git-wip-us.apache.org/repos/asf/yetus/blob/e3ea8a46/build.sh
----------------------------------------------------------------------
diff --git a/build.sh b/build.sh
index 8be3911..9fecbec 100755
--- a/build.sh
+++ b/build.sh
@@ -88,7 +88,9 @@ mkdir -p target
if [ "${offline}" != "true" ]; then
JIRA_VERSION="${YETUS_VERSION%%-SNAPSHOT}"
echo "generating release docs."
- release-doc-maker/releasedocmaker.py --lint --license --outputdir target \
+ # Note that we use the bare python here instead of the wrapper script, since we
+ # create said script.
+ release-doc-maker/releasedocmaker.py --lint=all --license --outputdir target \
--project YETUS "--version=${JIRA_VERSION}" \
--projecttitle="Apache Yetus" --usetoday
mv "target/${JIRA_VERSION}/RELEASENOTES.${JIRA_VERSION}.md" target/RELEASENOTES.md
@@ -170,7 +172,39 @@ cp -r precommit "${bin_tarball}/lib/"
mkdir -p "${bin_tarball}/bin"
-for utility in shelldocs/shelldocs.py release-doc-maker/releasedocmaker.py \
+# Make a special version of the shell wrapper for releasedocmaker
+# that maintains the ability to have '--lint' mean '--lint=all'
+cat >"${bin_tarball}/bin/releasedocmaker" <<EOF
+#!/usr/bin/env bash
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+args=()
+for arg in "\${@}"; do
+ if [ "\${arg}" = "-n" ] || [ "\${arg}" = "--lint" ]; then
+ args=("\${args[@]}" "--lint=all")
+ else
+ args=("\${args[@]}" "\${arg}")
+ fi
+done
+
+exec "\$(dirname -- "\${BASH_SOURCE-0}")/../lib/release-doc-maker/releasedocmaker.py" "\${args[@]}"
+EOF
+chmod +x "${bin_tarball}/bin/releasedocmaker"
+
+for utility in shelldocs/shelldocs.py \
precommit/smart-apply-patch.sh precommit/test-patch.sh
do
wrapper=${utility##*/}
[20/22] yetus git commit: YETUS-375. build driver: maven install
actually needs to be dumber
Posted by aw...@apache.org.
YETUS-375. build driver: maven install actually needs to be dumber
Signed-off-by: Allen Wittenauer <aw...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/yetus/repo
Commit: http://git-wip-us.apache.org/repos/asf/yetus/commit/aa0bd723
Tree: http://git-wip-us.apache.org/repos/asf/yetus/tree/aa0bd723
Diff: http://git-wip-us.apache.org/repos/asf/yetus/diff/aa0bd723
Branch: refs/heads/YETUS-156
Commit: aa0bd7233c23bcb8450ba650eb458ba4c7435f46
Parents: 830620a
Author: Allen Wittenauer <aw...@apache.org>
Authored: Wed Apr 13 06:56:58 2016 -0700
Committer: Allen Wittenauer <aw...@apache.org>
Committed: Fri Apr 22 13:25:07 2016 -0700
----------------------------------------------------------------------
precommit/test-patch.d/maven.sh | 9 +--------
1 file changed, 1 insertion(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/yetus/blob/aa0bd723/precommit/test-patch.d/maven.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.d/maven.sh b/precommit/test-patch.d/maven.sh
index d65aeaa..3d37c37 100755
--- a/precommit/test-patch.d/maven.sh
+++ b/precommit/test-patch.d/maven.sh
@@ -523,14 +523,7 @@ function maven_precompile
fi
if verify_needed_test javac; then
- # if we are in full build mode, then
- # there is no need to do an initial install
- # since we will be doing a full compile from basedir
- # for projects like hadoop, this saves quite a bit
- # of time
- if [[ "${BUILDMODE}" = patch ]]; then
- need=true
- fi
+ need=true
else
# not everything needs a maven install
# but quite a few do ...
[17/22] yetus git commit: YETUS-373. build driver: maven install
should be smarter
Posted by aw...@apache.org.
YETUS-373. build driver: maven install should be smarter
Signed-off-by: Allen Wittenauer <aw...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/yetus/repo
Commit: http://git-wip-us.apache.org/repos/asf/yetus/commit/0c887e48
Tree: http://git-wip-us.apache.org/repos/asf/yetus/tree/0c887e48
Diff: http://git-wip-us.apache.org/repos/asf/yetus/diff/0c887e48
Branch: refs/heads/YETUS-156
Commit: 0c887e484f6c58361dd6145d52eba6854c4c041d
Parents: f89eab9
Author: Allen Wittenauer <aw...@apache.org>
Authored: Tue Apr 12 13:52:33 2016 -0700
Committer: Allen Wittenauer <aw...@apache.org>
Committed: Fri Apr 22 13:25:07 2016 -0700
----------------------------------------------------------------------
precommit/test-patch.d/maven.sh | 13 ++++++++-----
1 file changed, 8 insertions(+), 5 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/yetus/blob/0c887e48/precommit/test-patch.d/maven.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.d/maven.sh b/precommit/test-patch.d/maven.sh
index 77aab32..d65aeaa 100755
--- a/precommit/test-patch.d/maven.sh
+++ b/precommit/test-patch.d/maven.sh
@@ -523,7 +523,14 @@ function maven_precompile
fi
if verify_needed_test javac; then
- need=true
+ # if we are in full build mode, then
+ # there is no need to do an initial install
+ # since we will be doing a full compile from basedir
+ # for projects like hadoop, this saves quite a bit
+ # of time
+ if [[ "${BUILDMODE}" = patch ]]; then
+ need=true
+ fi
else
# not everything needs a maven install
# but quite a few do ...
@@ -542,10 +549,6 @@ function maven_precompile
return 0
fi
- if [[ "${BUILDMODE}" = Full ]]; then
- return 0
- fi
-
if [[ "${repostatus}" = branch ]]; then
big_console_header "maven install: ${PATCH_BRANCH}"
else
[14/22] yetus git commit: YETUS-371. build driver: speed up checkstyle
Posted by aw...@apache.org.
YETUS-371. build driver: speed up checkstyle
Signed-off-by: Allen Wittenauer <aw...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/yetus/repo
Commit: http://git-wip-us.apache.org/repos/asf/yetus/commit/67d32844
Tree: http://git-wip-us.apache.org/repos/asf/yetus/tree/67d32844
Diff: http://git-wip-us.apache.org/repos/asf/yetus/diff/67d32844
Branch: refs/heads/YETUS-156
Commit: 67d3284423d8ee5ff82b8f391faf35416207076a
Parents: a24b5cb
Author: Allen Wittenauer <aw...@apache.org>
Authored: Tue Apr 12 08:53:04 2016 -0700
Committer: Allen Wittenauer <aw...@apache.org>
Committed: Fri Apr 22 13:25:07 2016 -0700
----------------------------------------------------------------------
precommit/test-patch.d/checkstyle.sh | 21 +++++++++++++++------
1 file changed, 15 insertions(+), 6 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/yetus/blob/67d32844/precommit/test-patch.d/checkstyle.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.d/checkstyle.sh b/precommit/test-patch.d/checkstyle.sh
index bba3369..f0b3e57 100755
--- a/precommit/test-patch.d/checkstyle.sh
+++ b/precommit/test-patch.d/checkstyle.sh
@@ -341,12 +341,21 @@ function checkstyle_postapply
module=${MODULE[$i]}
fn=$(module_file_fragment "${module}")
- # call calcdiffs to allow overrides
- calcdiffs \
- "${PATCH_DIR}/branch-checkstyle-${fn}.txt" \
- "${PATCH_DIR}/patch-checkstyle-${fn}.txt" \
- checkstyle \
- > "${PATCH_DIR}/diff-checkstyle-${fn}.txt"
+ # if there is no comparison to be done,
+ # we can speed this up tremendously
+ if [[ "${BUILDMODE}" = full ]]; then
+ touch "${PATCH_DIR}/branch-checkstyle-${fn}.txt"
+ cp -p "${PATCH_DIR}/patch-checkstyle-${fn}.txt" \
+ "${PATCH_DIR}/diff-checkstyle-${fn}.txt"
+ else
+
+ # call calcdiffs to allow overrides
+ calcdiffs \
+ "${PATCH_DIR}/branch-checkstyle-${fn}.txt" \
+ "${PATCH_DIR}/patch-checkstyle-${fn}.txt" \
+ checkstyle \
+ > "${PATCH_DIR}/diff-checkstyle-${fn}.txt"
+ fi
#shellcheck disable=SC2016
numbranch=$(wc -l "${PATCH_DIR}/branch-checkstyle-${fn}.txt" | ${AWK} '{print $1}')
[22/22] yetus git commit: YETUS-378. flink, hbase,
jmeter personalities custom tests need to be made qbt aware
Posted by aw...@apache.org.
YETUS-378. flink, hbase, jmeter personalities custom tests need to be made qbt aware
Signed-off-by: Allen Wittenauer <aw...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/yetus/repo
Commit: http://git-wip-us.apache.org/repos/asf/yetus/commit/b7c187fe
Tree: http://git-wip-us.apache.org/repos/asf/yetus/tree/b7c187fe
Diff: http://git-wip-us.apache.org/repos/asf/yetus/diff/b7c187fe
Branch: refs/heads/YETUS-156
Commit: b7c187feac90370d1ce7a745d4b3c7b326ad138f
Parents: 7501b40
Author: Allen Wittenauer <aw...@apache.org>
Authored: Mon Apr 18 14:18:15 2016 -0700
Committer: Allen Wittenauer <aw...@apache.org>
Committed: Fri Apr 22 13:25:07 2016 -0700
----------------------------------------------------------------------
precommit/personality/flink.sh | 61 +++++++------
precommit/personality/hbase.sh | 166 +++++++++++++++++++++++++++++++----
precommit/personality/jmeter.sh | 3 +
3 files changed, 180 insertions(+), 50 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/yetus/blob/b7c187fe/precommit/personality/flink.sh
----------------------------------------------------------------------
diff --git a/precommit/personality/flink.sh b/precommit/personality/flink.sh
index 6b4f0a8..76fa418 100755
--- a/precommit/personality/flink.sh
+++ b/precommit/personality/flink.sh
@@ -31,6 +31,10 @@ function personality_globals
add_test_type flinklib
+## @description flinklib file filter
+## @audience private
+## @stability evolving
+## @param filename
function flinklib_filefilter
{
local filename=$1
@@ -42,6 +46,9 @@ function flinklib_filefilter
fi
}
+## @description count files in the lib dir
+## @audience private
+## @stability evolving
function flinklib_count
{
find "${BASEDIR}" \
@@ -50,42 +57,46 @@ function flinklib_count
| wc -l
}
-function flinklib_preapply
+## @description check fliblib
+## @audience private
+## @stability evolving
+## @param repostatus
+function flinklib_rebuild
{
+ declare repostatus=$1
+
start_clock
big_console_header "${PATCH_BRANCH} flink library dependencies"
if ! verify_needed_test flinklib; then
- echo "Patch does not need flinklib testing."
+ echo "${BUILDMODEMSG} does not need flinklib testing."
return 0
fi
pushd "${BASEDIR}" >/dev/null
- echo_and_redirect "${PATCH_DIR}/branch-flinklib-root.txt" \
+ echo_and_redirect "${PATCH_DIR}/${repostatus}-flinklib-root.txt" \
"${MAVEN}" "${MAVEN_ARGS[@]}" package -DskipTests -Dmaven.javadoc.skip=true -Ptest-patch
if [[ $? != 0 ]]; then
add_vote_table -1 flinklib "Unable to determine flink libs in ${PATCH_BRANCH}."
fi
- FLINK_PRE_LIB_FILES=$(flinklib_count)
- popd >/dev/null
-}
-function flinklib_postapply
-{
- start_clock
- big_console_header "Patch flink library dependencies"
-
- if ! verify_needed_test flinklib; then
- echo "Patch does not need flinklib testing."
+ if [[ ${repostatus} = branch ]]; then
+ FLINK_PRE_LIB_FILES=$(flinklib_count)
return 0
+ else
+ FLINK_POST_LIB_FILES=$(flinklib_count)
fi
-
- pushd "${BASEDIR}" >/dev/null
- echo_and_redirect "${PATCH_DIR}/patch-flinklib-root.txt" \
- "${MAVEN}" "${MAVEN_ARGS[@]}" package -DskipTests -Dmaven.javadoc.skip=true -Ptest-patch
- FLINK_POST_LIB_FILES=$(flinklib_count)
popd >/dev/null
+ if [[ "${BUILDMODE}" = full ]]; then
+ if [[ ${FLINK_POST_LIB_FILES} -gt 0 ]]; then
+ add_vote_table -1 flinklib "Lib folder dependencies are currently ${FLINK_POST_LIB_FILES}"
+ return 1
+ else
+ add_vote_table +1 flinklib "No lib folder dependencies!"
+ return 0
+ fi
+ fi
if [[ "${FLINK_POST_LIB_FILES}" -gt "${FLINK_PRE_LIB_FILES}" ]]; then
add_vote_table -1 flinklib "Patch increases lib folder dependencies from " \
@@ -99,16 +110,4 @@ function flinklib_postapply
"$((FLINK_PRE_LIB_FILES-FLINK_POST_LIB_FILES))."
fi
return 0
-}
-
-function flinklib_rebuild
-{
- declare repostatus=$1
-
- if [[ "${repostatus}" = branch ]]; then
- flinklib_preapply
- else
- flinklib_postinstall
- fi
-}
-
+}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/yetus/blob/b7c187fe/precommit/personality/hbase.sh
----------------------------------------------------------------------
diff --git a/precommit/personality/hbase.sh b/precommit/personality/hbase.sh
index e9e4ea8..5e6f0dc 100755
--- a/precommit/personality/hbase.sh
+++ b/precommit/personality/hbase.sh
@@ -22,17 +22,23 @@ personality_plugins "all"
function personality_globals
{
#shellcheck disable=SC2034
+ PROJECT_NAME=hbase
+ #shellcheck disable=SC2034
PATCH_BRANCH_DEFAULT=master
#shellcheck disable=SC2034
JIRA_ISSUE_RE='^HBASE-[0-9]+$'
#shellcheck disable=SC2034
GITHUB_REPO="apache/hbase"
+ # TODO use PATCH_BRANCH to select hadoop versions to use.
# All supported Hadoop versions that we want to test the compilation with
- HBASE_HADOOP_VERSIONS="2.4.1 2.5.2 2.6.0"
+ HBASE_HADOOP_VERSIONS="2.4.0 2.4.1 2.5.0 2.5.1 2.5.2 2.6.1 2.6.2 2.6.3 2.7.1"
+
+ # TODO use PATCH_BRANCH to select jdk versions to use.
# Override the maven options
MAVEN_OPTS="${MAVEN_OPTS:-"-Xmx3100M"}"
+
}
## @description Queue up modules for this personality
@@ -54,16 +60,19 @@ function personality_modules
if [[ ${repostatus} == branch
&& ${testtype} == mvninstall ]] ||
- [[ "${BUILDMODE}" == full ]]; then
- personality_enqueue_module . ${extra}
- return
- fi
+ [[ "${BUILDMODE}" == full ]];then
+ personality_enqueue_module . ${extra}
+ return
+ fi
if [[ ${testtype} = findbugs ]]; then
for module in "${CHANGED_MODULES[@]}"; do
- # skip findbugs on hbase-shell
+ # skip findbugs on hbase-shell and hbase-it. hbase-it has nothing
+ # in src/main/java where findbugs goes to look
if [[ ${module} == hbase-shell ]]; then
continue
+ elif [[ ${module} == hbase-it ]]; then
+ continue
else
# shellcheck disable=SC2086
personality_enqueue_module ${module} ${extra}
@@ -72,6 +81,16 @@ function personality_modules
return
fi
+ if [[ ${testtype} = unit ]]; then
+ extra="${extra} -PrunAllTests"
+
+ # Inject the jenkins build-id for our surefire invocations
+ # Used by zombie detection stuff, even though we're not including that yet.
+ if [ -n "${BUILD_ID}" ]; then
+ extra="${extra} -Dbuild.id=${BUILD_ID}"
+ fi
+ fi
+
for module in "${CHANGED_MODULES[@]}"; do
# shellcheck disable=SC2086
personality_enqueue_module ${module} ${extra}
@@ -79,9 +98,19 @@ function personality_modules
}
###################################################
+# Below here are our one-off tests specific to hbase.
+# TODO break them into individual files so it's easier to maintain them?
+
+# TODO line length check? could ignore all java files since checkstyle gets them.
+
+###################################################
add_test_type hadoopcheck
+## @description hadoopcheck file filter
+## @audience private
+## @stability evolving
+## @param filename
function hadoopcheck_filefilter
{
local filename=$1
@@ -91,6 +120,10 @@ function hadoopcheck_filefilter
fi
}
+## @description hadoopcheck test
+## @audience private
+## @stability evolving
+## @param repostatus
function hadoopcheck_rebuild
{
local repostatus=$1
@@ -114,7 +147,7 @@ function hadoopcheck_rebuild
-Dhadoop-two.version="${hadoopver}"
count=$(${GREP} -c ERROR "${logfile}")
if [[ ${count} -gt 0 ]]; then
- add_vote_table -1 hadoopcheck "Patch causes ${count} errors with Hadoop v${hadoopver}."
+ add_vote_table -1 hadoopcheck "${BUILDMODEMSG} causes ${count} errors with Hadoop v${hadoopver}."
((result=result+1))
fi
done
@@ -123,14 +156,19 @@ function hadoopcheck_rebuild
return 1
fi
- add_vote_table +1 hadoopcheck "Patch does not cause any errors with Hadoop ${HBASE_HADOOP_VERSIONS}."
+ add_vote_table +1 hadoopcheck "${BUILDMODEMSG} does not cause any errors with Hadoop ${HBASE_HADOOP_VERSIONS}."
return 0
}
######################################
+# TODO if we need the protoc check, we probably need to check building all the modules that rely on hbase-protocol
add_test_type hbaseprotoc
+## @description hbaseprotoc file filter
+## @audience private
+## @stability evolving
+## @param filename
function hbaseprotoc_filefilter
{
local filename=$1
@@ -140,33 +178,38 @@ function hbaseprotoc_filefilter
fi
}
+## @description hadoopcheck test
+## @audience private
+## @stability evolving
+## @param repostatus
function hbaseprotoc_rebuild
{
- local i=0
- local fn
- local module
- local logfile
- local count
- local result
+ declare repostatus=$1
+ declare i=0
+ declare fn
+ declare module
+ declare logfile
+ declare count
+ declare result
if [[ "${repostatus}" = branch ]]; then
return 0
fi
- if ! verify_needed_test hbaseprotoc; then
+ verify_needed_test hbaseprotoc
+ if [[ $? == 0 ]]; then
return 0
fi
- big_console_header "Patch HBase protoc plugin"
+ big_console_header "HBase protoc plugin: ${BUILDMODE}"
start_clock
-
personality_modules patch hbaseprotoc
modules_workers patch hbaseprotoc compile -DskipTests -Pcompile-protobuf -X -DHBasePatchProcess
# shellcheck disable=SC2153
- until [[ $i -eq ${#MODULE[@]} ]]; do
+ until [[ $i -eq "${#MODULE[@]}" ]]; do
if [[ ${MODULE_STATUS[${i}]} == -1 ]]; then
((result=result+1))
((i=i+1))
@@ -197,6 +240,10 @@ function hbaseprotoc_rebuild
add_test_type hbaseanti
+## @description hbaseanti file filter
+## @audience private
+## @stability evolving
+## @param filename
function hbaseanti_filefilter
{
local filename=$1
@@ -206,13 +253,22 @@ function hbaseanti_filefilter
fi
}
+## @description hbaseanti patch file check
+## @audience private
+## @stability evolving
+## @param filename
function hbaseanti_patchfile
{
local patchfile=$1
local warnings
local result
- if ! verify_needed_test hbaseanti; then
+ if [[ "${BUILDMODE}" = full ]]; then
+ return 0
+ fi
+
+ verify_needed_test hbaseanti
+ if [[ $? == 0 ]]; then
return 0
fi
@@ -239,3 +295,75 @@ function hbaseanti_patchfile
add_vote_table +1 hbaseanti "" "Patch does not have any anti-patterns."
return 0
}
+
+
+## @description hbase custom mvnsite file filter. See HBASE-15042
+## @audience private
+## @stability evolving
+## @param filename
+function mvnsite_filefilter
+{
+ local filename=$1
+
+ if [[ ${BUILDTOOL} = maven ]]; then
+ if [[ ${filename} =~ src/main/site || ${filename} =~ src/main/asciidoc ]]; then
+ yetus_debug "tests/mvnsite: ${filename}"
+ add_test mvnsite
+ fi
+ fi
+}
+
+## This is named so that yetus will check us right after running tests.
+## Essentially, we check for normal failures and then we look for zombies.
+#function hbase_unit_logfilter
+#{
+# declare testtype="unit"
+# declare input=$1
+# declare output=$2
+# declare processes
+# declare process_output
+# declare zombies
+# declare zombie_count=0
+# declare zombie_process
+#
+# yetus_debug "in hbase-specific unit logfilter."
+#
+# # pass-through to whatever is counting actual failures
+# if declare -f ${BUILDTOOL}_${testtype}_logfilter >/dev/null; then
+# "${BUILDTOOL}_${testtype}_logfilter" "${input}" "${output}"
+# elif declare -f ${testtype}_logfilter >/dev/null; then
+# "${testtype}_logfilter" "${input}" "${output}"
+# fi
+#
+# start_clock
+# if [ -n "${BUILD_ID}" ]; then
+# yetus_debug "Checking for zombie test processes."
+# processes=$(jps -v | "${GREP}" surefirebooter | "${GREP}" -e "hbase.build.id=${BUILD_ID}")
+# if [ -n "${processes}" ] && [ "$(echo "${processes}" | wc -l)" -gt 0 ]; then
+# yetus_warn "Found some suspicious process(es). Waiting a bit to see if they're just slow to stop."
+# yetus_debug "${processes}"
+# sleep 30
+# #shellcheck disable=SC2016
+# for pid in $(echo "${processes}"| ${AWK} '{print $1}'); do
+# # Test our zombie still running (and that it still an hbase build item)
+# process_output=$(ps -p "${pid}" | tail +2 | "${GREP}" -e "hbase.build.id=${BUILD_ID}")
+# if [[ -n "${process_output}" ]]; then
+# yetus_error "Zombie: ${process_output}"
+# ((zombie_count = zombie_count + 1))
+# zombie_process=$(jstack "${pid}" | "${GREP}" -e "\.Test" | "${GREP}" -e "\.java"| head -3)
+# zombies="${zombies} ${zombie_process}"
+# fi
+# done
+# fi
+# if [ "${zombie_count}" -ne 0 ]; then
+# add_vote_table -1 zombies "There are ${zombie_count} zombie test(s)"
+# populate_test_table "zombie unit tests" "${zombies}"
+# else
+# yetus_info "Zombie check complete. All test runs exited normally."
+# stop_clock
+# fi
+# else
+# add_vote_table -0 zombies "There is no BUILD_ID env variable; can't check for zombies."
+# fi
+#
+#}
http://git-wip-us.apache.org/repos/asf/yetus/blob/b7c187fe/precommit/personality/jmeter.sh
----------------------------------------------------------------------
diff --git a/precommit/personality/jmeter.sh b/precommit/personality/jmeter.sh
index 194fc4f..b4e61b5 100755
--- a/precommit/personality/jmeter.sh
+++ b/precommit/personality/jmeter.sh
@@ -58,6 +58,9 @@ function jmeter_parse_args
done
}
+## @description Download jmetere dependencies
+## @audience private
+## @stability evolving
function jmeter_precheck
{
if [[ ${JMETER_DOWNLOAD_JARS} = true ]]; then
[10/22] yetus git commit: YETUS-356. build driver: author plug-in
still mentions patches
Posted by aw...@apache.org.
YETUS-356. build driver: author plug-in still mentions patches
Signed-off-by: Allen Wittenauer <aw...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/yetus/repo
Commit: http://git-wip-us.apache.org/repos/asf/yetus/commit/31a6e3aa
Tree: http://git-wip-us.apache.org/repos/asf/yetus/tree/31a6e3aa
Diff: http://git-wip-us.apache.org/repos/asf/yetus/diff/31a6e3aa
Branch: refs/heads/YETUS-156
Commit: 31a6e3aaf44549afae9d48a4d59c457b9fdc9106
Parents: 0c887e4
Author: Allen Wittenauer <aw...@apache.org>
Authored: Tue Apr 12 13:55:17 2016 -0700
Committer: Allen Wittenauer <aw...@apache.org>
Committed: Fri Apr 22 13:25:07 2016 -0700
----------------------------------------------------------------------
precommit/test-patch.d/author.sh | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/yetus/blob/31a6e3aa/precommit/test-patch.d/author.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.d/author.sh b/precommit/test-patch.d/author.sh
index 2e148d8..3d6e393 100755
--- a/precommit/test-patch.d/author.sh
+++ b/precommit/test-patch.d/author.sh
@@ -26,10 +26,17 @@ function author_generic
{
declare authortags
declare i
+ declare msg
+
+ if [[ "${BUILDMODE}" = full ]]; then
+ msg="patch"
+ else
+ msg="source tree"
+ fi
# shellcheck disable=SC2016
authortags=$(wc -l "${PATCH_DIR}/author-tags.txt" | "${AWK}" '{print $1}')
- echo "There appear to be ${authortags} @author tags in the patch."
+ echo "There appear to be ${authortags} @author tags in the ${msg}."
if [[ ${authortags} != 0 ]] ; then
add_vote_table -1 @author \
"${BUILDMODEMSG} appears to contain ${authortags} @author tags which the" \
[04/22] yetus git commit: YETUS-349. core engine changes for build
driver
Posted by aw...@apache.org.
YETUS-349. core engine changes for build driver
Signed-off-by: Allen Wittenauer <aw...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/yetus/repo
Commit: http://git-wip-us.apache.org/repos/asf/yetus/commit/4682fc38
Tree: http://git-wip-us.apache.org/repos/asf/yetus/tree/4682fc38
Diff: http://git-wip-us.apache.org/repos/asf/yetus/diff/4682fc38
Branch: refs/heads/YETUS-156
Commit: 4682fc38ec671d5e2bba64ed42b085fd73503c14
Parents: b0dcaf3
Author: Allen Wittenauer <aw...@apache.org>
Authored: Tue Mar 29 16:30:27 2016 -0700
Committer: Allen Wittenauer <aw...@apache.org>
Committed: Fri Apr 22 13:24:06 2016 -0700
----------------------------------------------------------------------
precommit/core.d/01-common.sh | 22 +++++
precommit/test-patch.sh | 163 ++++++++++++++++++++++++-------------
2 files changed, 130 insertions(+), 55 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/yetus/blob/4682fc38/precommit/core.d/01-common.sh
----------------------------------------------------------------------
diff --git a/precommit/core.d/01-common.sh b/precommit/core.d/01-common.sh
index 0661f6e..f31d613 100755
--- a/precommit/core.d/01-common.sh
+++ b/precommit/core.d/01-common.sh
@@ -536,6 +536,9 @@ function verify_command
yetus_error "executable for '${cmd_name}' was not specified."
return 1
fi
+ if [[ ! "${cmd_path}" =~ / ]]; then
+ cmd_path=$(command -v "${cmd_path}")
+ fi
if [[ ! -f ${cmd_path} ]]; then
yetus_error "executable '${cmd_path}' for '${cmd_name}' does not exist."
return 1
@@ -546,3 +549,22 @@ function verify_command
fi
return 0
}
+
+## @description Faster dirname, given the assumption that
+## @description dirs are always absolute (e.g., start with /)
+## @description DO NOT USE with relative paths or where
+## @description assumption may not be valid!
+## @audience private
+## @stability evolving
+## @replaceable no
+## @param fileobj
+function faster_dirname
+{
+ declare o=$1
+
+ if [[ "${o}" =~ / ]]; then
+ echo "${o%/*}"
+ else
+ echo .
+ fi
+}
http://git-wip-us.apache.org/repos/asf/yetus/blob/4682fc38/precommit/test-patch.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.sh b/precommit/test-patch.sh
index a55bb05..23e7c3a 100755
--- a/precommit/test-patch.sh
+++ b/precommit/test-patch.sh
@@ -91,6 +91,9 @@ function setup_defaults
CHANGED_UNION_MODULES=""
REEXECED=false
RESETREPO=false
+ BUILDMODE=patch
+ # shellcheck disable=SC2034
+ BUILDMODEMSG="The patch"
ISSUE=""
TIMER=$(date +"%s")
BUILDTOOL=maven
@@ -664,10 +667,14 @@ function yetus_usage
jdktlist=$(echo ${JDK_TEST_LIST})
jdktlist=${jdktlist// /,}
- echo "test-patch.sh [OPTIONS] patch"
- echo ""
- echo "Where:"
- echo " patch is a file, URL, or bugsystem-compatible location of the patch file"
+ if [[ "${BUILDMODE}" = patch ]]; then
+ echo "${BINNAME} [OPTIONS] patch"
+ echo ""
+ echo "Where:"
+ echo " patch is a file, URL, or bugsystem-compatible location of the patch file"
+ else
+ echo "${BINNAME} [OPTIONS]"
+ fi
echo ""
echo "Options:"
echo ""
@@ -681,6 +688,7 @@ function yetus_usage
yetus_add_option "--contrib-guide=<url>" "URL to point new users towards project conventions. (default: ${PATCH_NAMING_RULE} )"
yetus_add_option "--debug" "If set, then output some extra stuff to stderr"
yetus_add_option "--dirty-workspace" "Allow the local git workspace to have uncommitted changes"
+ yetus_add_option "--empty-patch" "Create a summary of the current source tree"
yetus_add_option "--java-home=<path>" "Set JAVA_HOME (In Docker mode, this should be local to the image)"
yetus_add_option "--linecomments=<bug>" "Only write line comments to this comma delimited list (defaults to bugcomments)"
yetus_add_option "--list-plugins" "List all installed plug-ins and then exit"
@@ -805,6 +813,11 @@ function parse_args
--instance=*)
INSTANCE=${i#*=}
;;
+ --empty-patch)
+ BUILDMODE=full
+ # shellcheck disable=SC2034
+ BUILDMODEMSG="The source tree"
+ ;;
--java-home=*)
JAVA_HOME=${i#*=}
;;
@@ -895,7 +908,8 @@ function parse_args
docker_parse_args "$@"
- if [[ -z "${PATCH_OR_ISSUE}" ]]; then
+ if [[ -z "${PATCH_OR_ISSUE}"
+ && "${BUILDMODE}" = patch ]]; then
yetus_usage
exit 1
fi
@@ -1014,7 +1028,7 @@ function find_buildfile_dir
yetus_debug "ERROR: ${buildfile} is not found."
return 1
else
- dir=$(dirname "${dir}")
+ dir=$(faster_dirname "${dir}")
fi
done
}
@@ -1027,17 +1041,29 @@ function find_buildfile_dir
function find_changed_files
{
declare line
+ declare oldifs
- # get a list of all of the files that have been changed,
- # except for /dev/null (which would be present for new files).
- # Additionally, remove any a/ b/ patterns at the front of the patch filenames.
- # shellcheck disable=SC2016
- while read -r line; do
- CHANGED_FILES=("${CHANGED_FILES[@]}" "${line}")
- done < <(
- ${AWK} 'function p(s){sub("^[ab]/","",s); if(s!~"^/dev/null"){print s}}
- /^diff --git / { p($3); p($4) }
- /^(\+\+\+|---) / { p($2) }' "${PATCH_DIR}/patch" | sort -u)
+ case "${BUILDMODE}" in
+ full)
+ echo "Building a list of all files in the source tree"
+ oldifs=${IFS}
+ IFS=$'\n'
+ CHANGED_FILES=($(git ls-files))
+ IFS=${oldifs}
+ ;;
+ patch)
+ # get a list of all of the files that have been changed,
+ # except for /dev/null (which would be present for new files).
+ # Additionally, remove any a/ b/ patterns at the front of the patch filenames.
+ # shellcheck disable=SC2016
+ while read -r line; do
+ CHANGED_FILES=("${CHANGED_FILES[@]}" "${line}")
+ done < <(
+ ${AWK} 'function p(s){sub("^[ab]/","",s); if(s!~"^/dev/null"){print s}}
+ /^diff --git / { p($3); p($4) }
+ /^(\+\+\+|---) / { p($2) }' "${PATCH_DIR}/patch" | sort -u)
+ ;;
+ esac
}
## @description Check for directories to skip during
@@ -1070,7 +1096,7 @@ function module_skipdir
if [[ ${dir} == "." || ${dir} == "/" ]]; then
return 0
else
- dir=$(dirname "${dir}")
+ dir=$(faster_dirname "${dir}")
yetus_debug "Trying to skip: ${dir}"
fi
done
@@ -1107,8 +1133,15 @@ function find_changed_modules
if [[ -z ${buildfile} ]]; then
tmpmods=(".")
else
+
# Now find all the modules that were changed
for i in "${CHANGED_FILES[@]}"; do
+
+ # TODO: optimize this
+ if [[ "${BUILDMODE}" = full && ! "${i}" =~ ${buildfile} ]]; then
+ continue
+ fi
+
dirt=$(dirname "${i}")
module_skipdir "${dirt}"
@@ -1277,8 +1310,10 @@ function git_checkout
currentbranch=$(${GIT} rev-parse --abbrev-ref HEAD)
if [[ "${currentbranch}" != "${PATCH_BRANCH}" ]];then
- echo "WARNING: Current git branch is ${currentbranch} but patch is built for ${PATCH_BRANCH}."
- echo "WARNING: Continuing anyway..."
+ if [[ "${BUILDMODE}" = patch ]]; then
+ echo "WARNING: Current git branch is ${currentbranch} but patch is built for ${PATCH_BRANCH}."
+ echo "WARNING: Continuing anyway..."
+ fi
PATCH_BRANCH=${currentbranch}
fi
fi
@@ -1403,8 +1438,11 @@ function determine_issue
## @replaceable no
function determine_needed_tests
{
- local i
- local plugin
+ declare i
+ declare plugin
+
+ big_console_header "Determining needed tests"
+ echo "(Depending upon input size and number of plug-ins, this may take a while)"
for i in "${CHANGED_FILES[@]}"; do
yetus_debug "Determining needed tests for ${i}"
@@ -1597,7 +1635,7 @@ function check_reexec
fi
done
- if [[ ${copy} == true ]]; then
+ if [[ ${copy} == true && "${BUILDMODE}" != full ]]; then
big_console_header "precommit patch detected"
if [[ ${RESETREPO} == false ]]; then
@@ -1740,8 +1778,10 @@ function modules_messages
declare statusjdk
declare multijdkmode=false
- if [[ ${repostatus} == branch ]]; then
+ if [[ "${repostatus}" == branch ]]; then
repo=${PATCH_BRANCH}
+ elif [[ "${BUILDMODE}" == full ]]; then
+ repo="the source"
else
repo="the patch"
fi
@@ -2382,12 +2422,16 @@ function generic_calcdiff_status
((samepatch=numpatch-addpatch))
((fixedpatch=numbranch-numpatch+addpatch))
- printf "generated %i new + %i unchanged - %i fixed = %i total (was %i)" \
- "${addpatch}" \
- "${samepatch}" \
- "${fixedpatch}" \
- "${numpatch}" \
- "${numbranch}"
+ if [[ "${BUILDMODE}" = full ]]; then
+ printf "has %i issues." "${addpatch}"
+ else
+ printf "generated %i new + %i unchanged - %i fixed = %i total (was %i)" \
+ "${addpatch}" \
+ "${samepatch}" \
+ "${fixedpatch}" \
+ "${numpatch}" \
+ "${numbranch}"
+ fi
}
## @description Helper routine for plugins to ask projects, etc
@@ -2595,7 +2639,7 @@ function generic_post_handler
return 0
fi
- big_console_header "Patch ${testtype} verification"
+ big_console_header "${testtype} verification: ${BUILDMODE}"
for jdkindex in ${JDK_DIR_LIST}; do
if [[ ${multijdkmode} == true ]]; then
@@ -2719,9 +2763,9 @@ function compile
fi
if [[ ${codebase} = "branch" ]]; then
- big_console_header "Pre-patch ${PATCH_BRANCH} compilation"
+ big_console_header "${PATCH_BRANCH} compilation: pre-patch"
else
- big_console_header "Patch compilation"
+ big_console_header "${PATCH_BRANCH} compilation: ${BUILDMODE}"
fi
yetus_debug "Is JVM Required? ${JVM_REQUIRED}"
@@ -2894,26 +2938,33 @@ function initialize
echo "Modes: ${EXEC_MODES}"
- locate_patch
+ if [[ "${BUILDMODE}" = patch ]]; then
+ locate_patch
+
+ # from here on out, we'll be in ${BASEDIR} for cwd
+ # plugins need to pushd/popd if they change.
+ git_checkout
- # from here on out, we'll be in ${BASEDIR} for cwd
- # plugins need to pushd/popd if they change.
- git_checkout
+ determine_issue
+ if [[ "${ISSUE}" == 'Unknown' ]]; then
+ echo "Testing patch on ${PATCH_BRANCH}."
+ else
+ echo "Testing ${ISSUE} patch on ${PATCH_BRANCH}."
+ fi
+
+ patchfile_dryrun_driver "${PATCH_DIR}/patch"
+ if [[ $? != 0 ]]; then
+ ((RESULT = RESULT + 1))
+ yetus_error "ERROR: ${PATCH_OR_ISSUE} does not apply to ${PATCH_BRANCH}."
+ add_vote_table -1 patch "${PATCH_OR_ISSUE} does not apply to ${PATCH_BRANCH}. Rebase required? Wrong Branch? See ${PATCH_NAMING_RULE} for help."
+ bugsystem_finalreport 1
+ cleanup_and_exit 1
+ fi
- determine_issue
- if [[ "${ISSUE}" == 'Unknown' ]]; then
- echo "Testing patch on ${PATCH_BRANCH}."
else
- echo "Testing ${ISSUE} patch on ${PATCH_BRANCH}."
- fi
- patchfile_dryrun_driver "${PATCH_DIR}/patch"
- if [[ $? != 0 ]]; then
- ((RESULT = RESULT + 1))
- yetus_error "ERROR: ${PATCH_OR_ISSUE} does not apply to ${PATCH_BRANCH}."
- add_vote_table -1 patch "${PATCH_OR_ISSUE} does not apply to ${PATCH_BRANCH}. Rebase required? Wrong Branch? See ${PATCH_NAMING_RULE} for help."
- bugsystem_finalreport 1
- cleanup_and_exit 1
+ git_checkout
+
fi
find_changed_files
@@ -2984,17 +3035,19 @@ initialize "$@"
prechecks
-patchfiletests
-((RESULT=RESULT+$?))
+if [[ "${BUILDMODE}" = patch ]]; then
+ patchfiletests
+ ((RESULT=RESULT+$?))
-compile_cycle branch
-((RESULT=RESULT+$?))
+ compile_cycle branch
+ ((RESULT=RESULT+$?))
-distclean
+ distclean
-apply_patch_file
+ apply_patch_file
-compute_gitdiff
+ compute_gitdiff
+fi
compile_cycle patch
((RESULT=RESULT+$?))
[18/22] yetus git commit: YETUS-374. need a way to ignore results
from a list of tests
Posted by aw...@apache.org.
YETUS-374. need a way to ignore results from a list of tests
Signed-off-by: Allen Wittenauer <aw...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/yetus/repo
Commit: http://git-wip-us.apache.org/repos/asf/yetus/commit/830620ad
Tree: http://git-wip-us.apache.org/repos/asf/yetus/tree/830620ad
Diff: http://git-wip-us.apache.org/repos/asf/yetus/diff/830620ad
Branch: refs/heads/YETUS-156
Commit: 830620ad9c4b8b1ab1ab4b6e8c48dbdc634162a6
Parents: 798428a
Author: Allen Wittenauer <aw...@apache.org>
Authored: Tue Apr 12 14:35:26 2016 -0700
Committer: Allen Wittenauer <aw...@apache.org>
Committed: Fri Apr 22 13:25:07 2016 -0700
----------------------------------------------------------------------
precommit/test-patch.sh | 32 +++++++++++++++++++++-----------
1 file changed, 21 insertions(+), 11 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/yetus/blob/830620ad/precommit/test-patch.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.sh b/precommit/test-patch.sh
index d4ee8ed..6d36819 100755
--- a/precommit/test-patch.sh
+++ b/precommit/test-patch.sh
@@ -236,12 +236,15 @@ function add_header_line
## @return Elapsed time display
function add_vote_table
{
- local value=$1
- local subsystem=$2
+ declare value=$1
+ declare subsystem=$2
shift 2
- local calctime
- local -r elapsed=$(stop_clock)
+ declare calctime
+ # apparently shellcheck doesn't know about declare -r
+ #shellcheck disable=SC2155
+ declare -r elapsed=$(stop_clock)
+ declare filt
yetus_debug "add_vote_table ${value} ${subsystem} ${*}"
@@ -251,6 +254,12 @@ function add_vote_table
value="+1"
fi
+ for filt in "${VOTE_FILTER[@]}"; do
+ if [[ "${subsystem}" = "${filt}" ]]; then
+ value=0
+ fi
+ done
+
if [[ -z ${value} ]]; then
# shellcheck disable=SC2034
TP_VOTE_TABLE[${TP_VOTE_COUNTER}]="| | ${subsystem} | | ${*:-} |"
@@ -259,6 +268,10 @@ function add_vote_table
TP_VOTE_TABLE[${TP_VOTE_COUNTER}]="| ${value} | ${subsystem} | ${calctime} | $* |"
fi
((TP_VOTE_COUNTER=TP_VOTE_COUNTER+1))
+
+ if [[ "${value}" = -1 ]]; then
+ ((RESULT = RESULT + 1))
+ fi
}
## @description Report the JVM version of the given directory
@@ -709,6 +722,7 @@ function yetus_usage
yetus_add_option "--summarize=<bool>" "Allow tests to summarize results"
yetus_add_option "--test-parallel=<bool>" "Run multiple tests in parallel (default false in developer mode, true in Jenkins mode)"
yetus_add_option "--test-threads=<int>" "Number of tests to run in parallel (default defined in ${PROJECT_NAME} build)"
+ yetus_add_option "--tests-filter=<list>" "Lists of tests to turn failures into warnings"
yetus_add_option "--user-plugins=<dir>" "A directory of user provided plugins. see test-patch.d for examples (default empty)"
yetus_add_option "--version" "Print release version information and exit"
@@ -884,6 +898,9 @@ function parse_args
# shellcheck disable=SC2034
TEST_THREADS=${i#*=}
;;
+ --tests-filter=*)
+ yetus_comma_to_array VOTE_FILTER "${i#*=}"
+ ;;
--tpglobaltimer=*)
GLOBALTIMER=${i#*=}
;;
@@ -2272,8 +2289,6 @@ function runtests
verify_patchdir_still_exists
check_unittests
-
- (( RESULT = RESULT + $? ))
fi
for plugin in ${TESTTYPES}; do
@@ -2283,7 +2298,6 @@ function runtests
yetus_debug "Running ${plugin}_tests"
#shellcheck disable=SC2086
${plugin}_tests
- (( RESULT = RESULT + $? ))
fi
done
}
@@ -3045,10 +3059,8 @@ prechecks
if [[ "${BUILDMODE}" = patch ]]; then
patchfiletests
- ((RESULT=RESULT+$?))
compile_cycle branch
- ((RESULT=RESULT+$?))
distclean
@@ -3058,10 +3070,8 @@ if [[ "${BUILDMODE}" = patch ]]; then
fi
compile_cycle patch
-((RESULT=RESULT+$?))
runtests
-((RESULT=RESULT+$?))
finish_vote_table
[16/22] yetus git commit: YETUS-372. build driver: unit tests still
mentions patches
Posted by aw...@apache.org.
YETUS-372. build driver: unit tests still mentions patches
Signed-off-by: Allen Wittenauer <aw...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/yetus/repo
Commit: http://git-wip-us.apache.org/repos/asf/yetus/commit/f89eab97
Tree: http://git-wip-us.apache.org/repos/asf/yetus/tree/f89eab97
Diff: http://git-wip-us.apache.org/repos/asf/yetus/diff/f89eab97
Branch: refs/heads/YETUS-156
Commit: f89eab9711fecb0f55b2f4bc4cf692dc728ba6fd
Parents: b7722bd
Author: Allen Wittenauer <aw...@apache.org>
Authored: Tue Apr 12 13:50:54 2016 -0700
Committer: Allen Wittenauer <aw...@apache.org>
Committed: Fri Apr 22 13:25:07 2016 -0700
----------------------------------------------------------------------
precommit/test-patch.sh | 10 ++++++----
1 file changed, 6 insertions(+), 4 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/yetus/blob/f89eab97/precommit/test-patch.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.sh b/precommit/test-patch.sh
index f3dbc92..d4ee8ed 100755
--- a/precommit/test-patch.sh
+++ b/precommit/test-patch.sh
@@ -1780,10 +1780,10 @@ function modules_messages
declare statusjdk
declare multijdkmode=false
- if [[ "${repostatus}" == branch ]]; then
- repo=${PATCH_BRANCH}
- elif [[ "${BUILDMODE}" == full ]]; then
+ if [[ "${BUILDMODE}" == full ]]; then
repo="the source"
+ elif [[ "${repostatus}" == branch ]]; then
+ repo=${PATCH_BRANCH}
else
repo="the patch"
fi
@@ -1899,7 +1899,9 @@ function modules_workers
declare result=0
declare argv
- if [[ ${repostatus} == branch ]]; then
+ if [[ "${BUILDMODE}" = full ]]; then
+ repo="the source"
+ elif [[ ${repostatus} == branch ]]; then
repo=${PATCH_BRANCH}
else
repo="the patch"
[19/22] yetus git commit: YETUS-376. add ability to write report to
an HTML formatted file
Posted by aw...@apache.org.
YETUS-376. add ability to write report to an HTML formatted file
Signed-off-by: Allen Wittenauer <aw...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/yetus/repo
Commit: http://git-wip-us.apache.org/repos/asf/yetus/commit/2fe2b360
Tree: http://git-wip-us.apache.org/repos/asf/yetus/tree/2fe2b360
Diff: http://git-wip-us.apache.org/repos/asf/yetus/diff/2fe2b360
Branch: refs/heads/YETUS-156
Commit: 2fe2b360fae5cda7d5ea7cf698a742c4f8eecefc
Parents: aa0bd72
Author: Allen Wittenauer <aw...@apache.org>
Authored: Wed Apr 13 21:40:13 2016 -0700
Committer: Allen Wittenauer <aw...@apache.org>
Committed: Fri Apr 22 13:25:07 2016 -0700
----------------------------------------------------------------------
.../in-progress/precommit-advanced.md | 5 +
precommit/test-patch.d/htmlout.sh | 231 +++++++++++++++++++
precommit/test-patch.sh | 9 +-
3 files changed, 242 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/yetus/blob/2fe2b360/asf-site-src/source/documentation/in-progress/precommit-advanced.md
----------------------------------------------------------------------
diff --git a/asf-site-src/source/documentation/in-progress/precommit-advanced.md b/asf-site-src/source/documentation/in-progress/precommit-advanced.md
index d64392a..953b44e 100644
--- a/asf-site-src/source/documentation/in-progress/precommit-advanced.md
+++ b/asf-site-src/source/documentation/in-progress/precommit-advanced.md
@@ -80,6 +80,9 @@ Similarly, there are other functions that may be defined during the test-patch r
* pluginname\_initialize
- After argument parsing and prior to any other work, the initialize step allows a plug-in to do any precursor work, set internal defaults, etc.
+* pluginname\_docker\_support
+ - Perform any necessary setup to configure Docker support for the given plugin. Typically this means adding parameters to the docker run command line via adding to the DOCKER\_EXTRAARGS array.
+
* pluginname\_precheck
- executed prior to the patch being applied but after the git repository is setup. Returning a fail status here will exit test-patch.
@@ -253,6 +256,8 @@ There are a handful of extremely important system variables that make life easie
* CHANGED\_MODULES[@] is an array of all modules that house all of the CHANGED\_FILES[@]. Be aware that the root of the source tree is reported as '.'.
+* DOCKER\_EXTRAARGS[@] is an array of command line arguments to apply to the `docker run` command.
+
* GITHUB\_REPO is to help test-patch when talking to Github. If test-patch is given just a number on the command line, it will default to using this repo to determine the pull request.
* JIRA\_ISSUE\_RE is to help test-patch when talking to JIRA. It helps determine if the given project is appropriate for the given JIRA issue.
http://git-wip-us.apache.org/repos/asf/yetus/blob/2fe2b360/precommit/test-patch.d/htmlout.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.d/htmlout.sh b/precommit/test-patch.d/htmlout.sh
new file mode 100755
index 0000000..29af898
--- /dev/null
+++ b/precommit/test-patch.d/htmlout.sh
@@ -0,0 +1,231 @@
+#!/usr/bin/env bash
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# This bug system provides github integration
+
+add_bugsystem htmlout
+
+## @description Usage info for htmlout plugin
+## @audience private
+## @stability evolving
+## @replaceable no
+function htmlout_usage
+{
+ yetus_add_option "--html-report-file=<file>" "Save the final report to an HTML-formated file"
+}
+
+## @description Option parsing for htmlout plugin
+## @audience private
+## @stability evolving
+## @replaceable no
+function htmlout_parse_args
+{
+ declare i
+ declare fn
+
+ for i in "$@"; do
+ case ${i} in
+ --html-report-file=*)
+ fn=${i#*=}
+ ;;
+ esac
+ done
+
+ if [[ -n "${fn}" ]]; then
+ touch "${fn}" 2>/dev/null
+ if [[ $? != 0 ]]; then
+ yetus_error "WARNING: cannot create ${fn}. Ignoring."
+ else
+ HTMLOUT_REPORTFILE=$(yetus_abs "${fn}")
+ fi
+ fi
+}
+
+## @description Give access to the HTML report file in docker mode
+## @audience private
+## @stability evolving
+## @replaceable no
+function htmlout_docker_support
+{
+ if [[ -n ${HTMLOUT_REPORTFILE} ]]; then
+ DOCKER_EXTRAARGS=("${DOCKER_EXTRAARGS[@]}" "-v" "${HTMLOUT_REPORTFILE}:${HTMLOUT_REPORTFILE}")
+ fi
+}
+
+
+## @description Write out an HTML version of the final report to a file
+## @audience private
+## @stability evolving
+## @replaceable no
+## @param runresult
+function htmlout_finalreport
+{
+ declare result=$1
+ declare i
+ declare commentfile="${HTMLOUT_REPORTFILE}"
+ declare comment
+ declare vote
+ declare ourstring
+ declare ela
+ declare subs
+ declare color
+ declare comment
+
+ rm "${commentfile}" 2>/dev/null
+
+ if [[ -z "${HTMLOUT_REPORTFILE}" ]]; then
+ return
+ fi
+
+ big_console_header "Writing HTML to ${commentfile}"
+
+ {
+ echo "<table><tbody>"
+
+ if [[ ${result} == 0 ]]; then
+ echo "<tr><th><font color=\"green\">+1 overall</font></th></tr>"
+ else
+ echo "<tr><th><font color=\"red\">-1 overall</font></th></tr>"
+ fi
+ echo "</table></tbody>"
+ echo "<p></p>"
+ } > "${commentfile}"
+
+ i=0
+ until [[ $i -eq ${#TP_HEADER[@]} ]]; do
+ ourstring=$(echo "${TP_HEADER[${i}]}" | tr -s ' ')
+ comment=$(echo "${ourstring}" | cut -f2 -d\|)
+ printf "<tr><td>%s</td></tr>\n" "${comment}"
+ ((i=i+1))
+ done
+
+ {
+ echo "<table><tbody>"
+ echo "<tr>"
+ echo "<th>Vote</th>"
+ echo "<th>Subsystem</th>"
+ echo "<th>Runtime</th>"
+ echo "<th>Comment</th>"
+ echo "</tr>"
+ } >> "${commentfile}"
+
+ i=0
+ until [[ $i -eq ${#TP_VOTE_TABLE[@]} ]]; do
+ ourstring=$(echo "${TP_VOTE_TABLE[${i}]}" | tr -s ' ')
+ vote=$(echo "${ourstring}" | cut -f2 -d\| | tr -d ' ')
+ subs=$(echo "${ourstring}" | cut -f3 -d\|)
+ ela=$(echo "${ourstring}" | cut -f4 -d\|)
+ comment=$(echo "${ourstring}" | cut -f5 -d\|)
+
+ # summary line
+ if [[ -z ${vote}
+ && -n ${ela} ]]; then
+ color="black"
+ elif [[ -z ${vote} ]]; then
+ # keep same color
+ true
+ else
+ # new vote line
+ case ${vote} in
+ 1|"+1")
+ color="green"
+ ;;
+ -1)
+ color="red"
+ ;;
+ 0)
+ color="blue"
+ ;;
+ *)
+ color="black"
+ ;;
+ esac
+ fi
+
+ {
+ echo "<tr>"
+ printf "<td><font color=\"%s\">%s</font></td>" "${color}" "${vote}"
+ printf "<td><font color=\"%s\">%s</font></td>" "${color}" "${subs}"
+ printf "<td><font color=\"%s\">%s</font></td>" "${color}" "${ela}"
+ printf "<td><font color=\"%s\">%s</font></td>" "${color}" "${comment}"
+ echo "</tr>"
+ } >> "${commentfile}"
+ ((i=i+1))
+ done
+ {
+ echo "</tbody></table>"
+ echo "<p></p>"
+ } >> "${commentfile}"
+
+ if [[ ${#TP_TEST_TABLE[@]} -gt 0 ]]; then
+ {
+ echo "<table><tbody>"
+ echo "<tr>"
+ echo "<th>Reason</th>"
+ echo "<th>Tests</th>"
+ echo "</tr>"
+ } >> "${commentfile}"
+
+ i=0
+ until [[ $i -eq ${#TP_TEST_TABLE[@]} ]]; do
+ ourstring=$(echo "${TP_TEST_TABLE[${i}]}" | tr -s ' ')
+ subs=$(echo "${ourstring}" | cut -f2 -d\|)
+ comment=$(echo "${ourstring}" | cut -f3 -d\|)
+ {
+ echo "<tr>"
+ printf "<td><font color=\"%s\">%s</font></td>" "${color}" "${subs}"
+ printf "<td><font color=\"%s\">%s</font></td>" "${color}" "${comment}"
+ echo "</tr>"
+ } >> "${commentfile}"
+ ((i=i+1))
+ done
+
+ {
+ echo "</tbody></table>"
+ echo "<p></p>"
+ } >> "${commentfile}"
+ fi
+
+ {
+ echo "<table><tbody>"
+ echo "<tr>"
+ echo "<th>Subsystem</th>"
+ echo "<th>Report/Notes</th>"
+ echo "</tr>"
+ } >> "${commentfile}"
+
+ i=0
+ until [[ $i -eq ${#TP_FOOTER_TABLE[@]} ]]; do
+ ourstring=$(echo "${TP_FOOTER_TABLE[${i}]}" |
+ ${SED} -e "s,@@BASE@@,${BUILD_URL}${BUILD_URL_ARTIFACTS},g" |
+ tr -s ' ')
+ subs=$(echo "${ourstring}" | cut -f2 -d\|)
+ comment=$(echo "${ourstring}" | cut -f3 -d\|)
+ {
+ echo "<tr>"
+ printf "<td><font color=\"%s\">%s</font></td>" "${color}" "${subs}"
+ printf "<td><font color=\"%s\">%s</font></td>" "${color}" "${comment}"
+ echo "</tr>"
+ } >> "${commentfile}"
+ ((i=i+1))
+ done
+ {
+ echo "</tbody></table>"
+ echo "<p></p>"
+ } >> "${commentfile}"
+
+ printf "<p>This message was automatically generated.</p>" >> "${commentfile}"
+}
http://git-wip-us.apache.org/repos/asf/yetus/blob/2fe2b360/precommit/test-patch.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.sh b/precommit/test-patch.sh
index 6d36819..05a075e 100755
--- a/precommit/test-patch.sh
+++ b/precommit/test-patch.sh
@@ -1633,6 +1633,7 @@ function check_reexec
declare tpdir
declare copy=false
declare testdir
+ declare plugin
if [[ ${REEXECED} == true ]]; then
big_console_header "Re-exec mode detected. Continuing."
@@ -1693,9 +1694,11 @@ function check_reexec
# if we are doing docker, then we re-exec, but underneath the
# container
- if declare -f ${BUILDTOOL}_docker_support >/dev/null; then
- "${BUILDTOOL}_docker_support"
- fi
+ for plugin in ${PROJECT_NAME} ${BUILDTOOL} ${BUGSYSTEMS} ${TESTTYPES} ${TESTFORMATS}; do
+ if declare -f ${plugin}_docker_support >/dev/null; then
+ "${plugin}_docker_support"
+ fi
+ done
TESTPATCHMODE="${USER_PARAMS[*]}"
if [[ -n "${BUILD_URL}" ]]; then
[11/22] yetus git commit: YETUS-352. hadoop and hbase personality
changes for build driver
Posted by aw...@apache.org.
YETUS-352. hadoop and hbase personality changes for build driver
Signed-off-by: Allen Wittenauer <aw...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/yetus/repo
Commit: http://git-wip-us.apache.org/repos/asf/yetus/commit/4b7443bd
Tree: http://git-wip-us.apache.org/repos/asf/yetus/tree/4b7443bd
Diff: http://git-wip-us.apache.org/repos/asf/yetus/diff/4b7443bd
Branch: refs/heads/YETUS-156
Commit: 4b7443bd6b18208653bbf5bcea1487115e36249e
Parents: 231eb78
Author: Allen Wittenauer <aw...@apache.org>
Authored: Tue Mar 29 17:33:14 2016 -0700
Committer: Allen Wittenauer <aw...@apache.org>
Committed: Fri Apr 22 13:25:07 2016 -0700
----------------------------------------------------------------------
precommit/personality/hadoop.sh | 4 ++--
precommit/personality/hbase.sh | 3 ++-
2 files changed, 4 insertions(+), 3 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/yetus/blob/4b7443bd/precommit/personality/hadoop.sh
----------------------------------------------------------------------
diff --git a/precommit/personality/hadoop.sh b/precommit/personality/hadoop.sh
index 59dfd2c..d23b6be 100755
--- a/precommit/personality/hadoop.sh
+++ b/precommit/personality/hadoop.sh
@@ -205,7 +205,7 @@ function personality_modules
ordering=.
fi
- if [[ ${repostatus} = patch ]]; then
+ if [[ "${repostatus}" = patch && "${BUILDMODE}" = patch ]]; then
echo "javadoc pre-reqs:"
for i in hadoop-project \
hadoop-common-project/hadoop-annotations; do
@@ -226,7 +226,7 @@ function personality_modules
;;
mvninstall)
extra="-DskipTests"
- if [[ ${repostatus} = branch ]]; then
+ if [[ "${repostatus}" = branch || "${BUILDMODE}" = full ]]; then
ordering=.
fi
;;
http://git-wip-us.apache.org/repos/asf/yetus/blob/4b7443bd/precommit/personality/hbase.sh
----------------------------------------------------------------------
diff --git a/precommit/personality/hbase.sh b/precommit/personality/hbase.sh
index 352d2e3..e9e4ea8 100755
--- a/precommit/personality/hbase.sh
+++ b/precommit/personality/hbase.sh
@@ -53,7 +53,8 @@ function personality_modules
extra="-DHBasePatchProcess"
if [[ ${repostatus} == branch
- && ${testtype} == mvninstall ]];then
+ && ${testtype} == mvninstall ]] ||
+ [[ "${BUILDMODE}" == full ]]; then
personality_enqueue_module . ${extra}
return
fi
[03/22] yetus git commit: YETUS-350. plug-in changes for build driver
Posted by aw...@apache.org.
YETUS-350. plug-in changes for build driver
Signed-off-by: Allen Wittenauer <aw...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/yetus/repo
Commit: http://git-wip-us.apache.org/repos/asf/yetus/commit/ce6d4d49
Tree: http://git-wip-us.apache.org/repos/asf/yetus/tree/ce6d4d49
Diff: http://git-wip-us.apache.org/repos/asf/yetus/diff/ce6d4d49
Branch: refs/heads/YETUS-156
Commit: ce6d4d49713f794e2ccffaee2f99e2d74ee39863
Parents: 4682fc3
Author: Allen Wittenauer <aw...@apache.org>
Authored: Tue Mar 29 16:57:57 2016 -0700
Committer: Allen Wittenauer <aw...@apache.org>
Committed: Fri Apr 22 13:24:06 2016 -0700
----------------------------------------------------------------------
precommit/test-patch.d/asflicense.sh | 8 ++--
precommit/test-patch.d/author.sh | 74 +++++++++++++++++++++++++------
precommit/test-patch.d/autoconf.sh | 14 +++---
precommit/test-patch.d/checkstyle.sh | 25 +++++------
precommit/test-patch.d/cmake.sh | 4 +-
precommit/test-patch.d/findbugs.sh | 15 ++++---
precommit/test-patch.d/gradle.sh | 4 +-
precommit/test-patch.d/maven.sh | 32 +++++++++----
precommit/test-patch.d/perlcritic.sh | 8 ++--
precommit/test-patch.d/pylint.sh | 12 ++---
precommit/test-patch.d/rubocop.sh | 8 ++--
precommit/test-patch.d/ruby-lint.sh | 8 ++--
precommit/test-patch.d/shellcheck.sh | 8 ++--
precommit/test-patch.d/shelldocs.sh | 8 ++--
precommit/test-patch.d/test4tests.sh | 4 ++
precommit/test-patch.d/whitespace.sh | 38 +++++++++++-----
precommit/test-patch.d/xml.sh | 6 +--
17 files changed, 177 insertions(+), 99 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/yetus/blob/ce6d4d49/precommit/test-patch.d/asflicense.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.d/asflicense.sh b/precommit/test-patch.d/asflicense.sh
index edf7a7f..593e4af 100755
--- a/precommit/test-patch.d/asflicense.sh
+++ b/precommit/test-patch.d/asflicense.sh
@@ -61,7 +61,7 @@ function asflicense_tests
local numpatch
local btfails=true
- big_console_header "Determining number of patched ASF License errors"
+ big_console_header "Determining number of ASF License errors"
start_clock
@@ -105,7 +105,7 @@ function asflicense_tests
# RAT fails the build if there are license problems.
# so let's take advantage of that a bit.
if [[ $? == 0 && ${btfails} = true ]]; then
- add_vote_table 1 asflicense "Patch does not generate ASF License warnings."
+ add_vote_table 1 asflicense "${BUILDMODEMSG} does not generate ASF License warnings."
return 0
fi
@@ -134,7 +134,7 @@ function asflicense_tests
echo "There appear to be ${numpatch} ASF License warnings after applying the patch."
if [[ -n ${numpatch}
&& ${numpatch} -gt 0 ]] ; then
- add_vote_table -1 asflicense "Patch generated ${numpatch} ASF License warnings."
+ add_vote_table -1 asflicense "${BUILDMODEMSG} generated ${numpatch} ASF License warnings."
echo "Lines that start with ????? in the ASF License "\
"report indicate files that do not have an Apache license header:" \
@@ -146,7 +146,7 @@ function asflicense_tests
add_footer_table asflicense "@@BASE@@/patch-asflicense-problems.txt"
return 1
fi
- add_vote_table 1 asflicense "Patch does not generate ASF License warnings."
+ add_vote_table 1 asflicense "${BUILDMODEMSG} does not generate ASF License warnings."
return 0
}
http://git-wip-us.apache.org/repos/asf/yetus/blob/ce6d4d49/precommit/test-patch.d/author.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.d/author.sh b/precommit/test-patch.d/author.sh
index 4497d03..2e148d8 100755
--- a/precommit/test-patch.d/author.sh
+++ b/precommit/test-patch.d/author.sh
@@ -16,21 +16,50 @@
add_test_type author
-## @description Check the current directory for @author tags
+## @description helper function for @author tags check
## @audience private
## @stability evolving
## @replaceable no
## @return 0 on success
## @return 1 on failure
+function author_generic
+{
+ declare authortags
+ declare i
+
+ # shellcheck disable=SC2016
+ authortags=$(wc -l "${PATCH_DIR}/author-tags.txt" | "${AWK}" '{print $1}')
+ echo "There appear to be ${authortags} @author tags in the patch."
+ if [[ ${authortags} != 0 ]] ; then
+ add_vote_table -1 @author \
+ "${BUILDMODEMSG} appears to contain ${authortags} @author tags which the" \
+ " community has agreed to not allow in code contributions."
+ add_footer_table @author "@@BASE@@/author-tags.txt"
+ return 1
+ fi
+ add_vote_table +1 @author "${BUILDMODEMSG} does not contain any @author tags."
+ return 0
+}
+
+## @description Check the current patchfile for @author tags
+## @audience private
+## @stability evolving
+## @replaceable no
+## @return 0 on success
+## @return 1 on failure
+## @param patchfile
function author_patchfile
{
declare patchfile=$1
- declare authorTags
# shellcheck disable=SC2155
declare -r appname=$(basename "${BASH_SOURCE-$0}")
declare i
- big_console_header "Checking there are no @author tags in the patch."
+ if [[ "${BUILDMODE}" != patch ]]; then
+ return
+ fi
+
+ big_console_header "Checking for @author tags: ${BUILDMODE}"
start_clock
@@ -43,16 +72,33 @@ function author_patchfile
done
${GREP} -i -n '^[^-].*@author' "${patchfile}" >> "${PATCH_DIR}/author-tags.txt"
- # shellcheck disable=SC2016
- authorTags=$(wc -l "${PATCH_DIR}/author-tags.txt" | "${AWK}" '{print $1}')
- echo "There appear to be ${authorTags} @author tags in the patch."
- if [[ ${authorTags} != 0 ]] ; then
- add_vote_table -1 @author \
- "The patch appears to contain ${authorTags} @author tags which the" \
- " community has agreed to not allow in code contributions."
- add_footer_table @author "@@BASE@@/author-tags.txt"
- return 1
+ author_generic
+}
+
+
+## @description Check the current directory for @author tags
+## @audience private
+## @stability evolving
+## @replaceable no
+## @return 0 on success
+## @return 1 on failure
+function author_postcompile
+{
+ # shellcheck disable=SC2155
+ declare -r appname=$(basename "${BASH_SOURCE-$0}")
+ declare i
+
+ if [[ "${BUILDMODE}" != full ]]; then
+ return
fi
- add_vote_table +1 @author "The patch does not contain any @author tags."
- return 0
+
+ big_console_header "Checking for @author tags: ${BUILDMODE}"
+
+ start_clock
+
+ "${GIT}" grep -n -I --extended-regexp -i '^[^-].*@author' \
+ | ${GREP} -v "${appname}" \
+ >> "${PATCH_DIR}/author-tags.txt"
+
+ author_generic
}
http://git-wip-us.apache.org/repos/asf/yetus/blob/ce6d4d49/precommit/test-patch.d/autoconf.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.d/autoconf.sh b/precommit/test-patch.d/autoconf.sh
index 2937e72..933a8c0 100755
--- a/precommit/test-patch.d/autoconf.sh
+++ b/precommit/test-patch.d/autoconf.sh
@@ -91,9 +91,9 @@ function autoconf_precompile
fi
if [[ "${repostatus}" = branch ]]; then
- big_console_header "Pre-patch ${PATCH_BRANCH} autoconf verification"
+ big_console_header "autoconf verification: ${PATCH_BRANCH}"
else
- big_console_header "Patch autoconf verification"
+ big_console_header "autoconf verification: ${BUILDMODE}"
fi
personality_modules "${repostatus}" autoreconf
@@ -108,7 +108,7 @@ function autoconf_precompile
# shellcheck disable=SC2153
add_vote_table -1 autoreconf "${PATCH_BRANCH} unable to autoreconf"
else
- add_vote_table -1 autoreconf "${repostatus} unable to autoreconf"
+ add_vote_table -1 autoreconf "${BUILDMODEMSG} is unable to autoreconf"
fi
add_footer_table "autoreconf" "@@BASE@@/${repostatus}-autoconf-autoreconf"
return 1
@@ -117,7 +117,7 @@ function autoconf_precompile
# shellcheck disable=SC2153
add_vote_table +1 autoreconf "${PATCH_BRANCH} autoreconf successful"
else
- add_vote_table +1 autoreconf "${repostatus} autoreconf successful"
+ add_vote_table +1 autoreconf "${BUILDMODEMSG} can autoreconf"
fi
fi
@@ -138,7 +138,7 @@ function autoconf_precompile
# shellcheck disable=SC2153
add_vote_table -1 configure "${PATCH_BRANCH} unable to configure"
else
- add_vote_table -1 configure "${repostatus} unable to configure"
+ add_vote_table -1 configure "${BUILDMODEMSG} is unable to configure"
fi
add_footer_table "configure" "@@BASE@@/${repostatus}-autoconf-configure"
return 1
@@ -147,7 +147,7 @@ function autoconf_precompile
# shellcheck disable=SC2153
add_vote_table +1 configure "${PATCH_BRANCH} configure successful"
else
- add_vote_table +1 configure "${repostatus} configure successful"
+ add_vote_table +1 configure "${BUILDMODEMSG} can configure"
fi
fi
return 0
@@ -201,4 +201,4 @@ function autoconf_builtin_personality_file_tests
else
make_builtin_personality_file_tests "${filename}"
fi
-}
\ No newline at end of file
+}
http://git-wip-us.apache.org/repos/asf/yetus/blob/ce6d4d49/precommit/test-patch.d/checkstyle.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.d/checkstyle.sh b/precommit/test-patch.d/checkstyle.sh
index 4363e4d..bba3369 100755
--- a/precommit/test-patch.d/checkstyle.sh
+++ b/precommit/test-patch.d/checkstyle.sh
@@ -140,7 +140,6 @@ function checkstyle_runner
declare savestop
declare output
declare logfile
- declare repo
declare modulesuffix
declare cmd
declare logline
@@ -151,12 +150,6 @@ function checkstyle_runner
# first, let's clear out any previous run information
modules_reset
- if [[ ${repostatus} == branch ]]; then
- repo=${PATCH_BRANCH}
- else
- repo="the patch"
- fi
-
# loop through the modules we've been given
#shellcheck disable=SC2153
until [[ $i -eq ${#MODULE[@]} ]]; do
@@ -200,14 +193,14 @@ function checkstyle_runner
> "${tmp}"
if [[ $? == 0 ]] ; then
- module_status ${i} +1 "${logfile}" "${modulesuffix} in ${repo} passed checkstyle"
+ module_status ${i} +1 "${logfile}" "${BUILDMODEMSG} ${modulesuffix} passed checkstyle"
else
- module_status ${i} -1 "${logfile}" "${modulesuffix} in ${repo} failed checkstyle"
+ module_status ${i} -1 "${logfile}" "${BUILDMODEMSG} ${modulesuffix} failed checkstyle"
((result = result + 1))
fi
# if we have some output, we need to do more work:
- if [[ -s ${tmp} ]]; then
+ if [[ -s ${tmp} && "${BUILDMODE}" = patch ]]; then
# first, let's pull out all of the files that
# we actually care about, esp since that run
@@ -219,6 +212,7 @@ function checkstyle_runner
${GREP} "${j}" "${tmp}" >> "${tmp}.1"
done
+
# now that we have just the files we care about,
# let's unscrew it. You see...
@@ -248,7 +242,8 @@ function checkstyle_runner
popd >/dev/null
# later on, calcdiff will turn this into code(:column):error
# compare, and then put the file:line back onto it.
-
+ else
+ cp -p "${tmp}" "${output}"
fi
rm "${tmp}" "${tmp}.1" 2>/dev/null
@@ -288,7 +283,7 @@ function checkstyle_preapply
return 0
fi
- big_console_header "${PATCH_BRANCH} checkstyle"
+ big_console_header "checkstyle: ${PATCH_BRANCH}"
start_clock
@@ -321,7 +316,7 @@ function checkstyle_postapply
return 0
fi
- big_console_header "Patch checkstyle plugin"
+ big_console_header "checkstyle: ${BUILDMODE}"
start_clock
@@ -371,9 +366,9 @@ function checkstyle_postapply
if [[ ${addpatch} -gt 0 ]] ; then
((result = result + 1))
- module_status ${i} -1 "diff-checkstyle-${fn}.txt" "${mod}: patch ${statstring}"
+ module_status ${i} -1 "diff-checkstyle-${fn}.txt" "${mod}: ${BUILDMODEMSG} ${statstring}"
elif [[ ${fixedpatch} -gt 0 ]]; then
- module_status ${i} +1 "diff-checkstyle-${fn}.txt" "${mod}: patch ${statstring}"
+ module_status ${i} +1 "diff-checkstyle-${fn}.txt" "${mod}: ${BUILDMODEMSG} ${statstring}"
summarize=false
fi
((i=i+1))
http://git-wip-us.apache.org/repos/asf/yetus/blob/ce6d4d49/precommit/test-patch.d/cmake.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.d/cmake.sh b/precommit/test-patch.d/cmake.sh
index 9b5f265..7e68a4d 100755
--- a/precommit/test-patch.d/cmake.sh
+++ b/precommit/test-patch.d/cmake.sh
@@ -128,9 +128,9 @@ function cmake_precompile
if [[ "${repostatus}" = branch ]]; then
# shellcheck disable=SC2153
- big_console_header "${PATCH_BRANCH} cmake CMakeLists.txt"
+ big_console_header "cmake CMakeLists.txt: ${PATCH_BRANCH}"
else
- big_console_header "Patch cmake CMakeLists.txt"
+ big_console_header "cmake CMakeLists.txt: ${BUILDMODE}"
fi
personality_modules "${repostatus}" CMakeLists.txt
http://git-wip-us.apache.org/repos/asf/yetus/blob/ce6d4d49/precommit/test-patch.d/findbugs.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.d/findbugs.sh b/precommit/test-patch.d/findbugs.sh
index e4399fc..152d85f 100755
--- a/precommit/test-patch.d/findbugs.sh
+++ b/precommit/test-patch.d/findbugs.sh
@@ -95,10 +95,8 @@ function findbugs_precheck
## @audience private
## @stability evolving
## @replaceable no
-## @param repostatus
function findbugs_maven_skipper
{
- declare repostat=$1
declare -i i=0
declare skiplist=()
declare modname
@@ -122,7 +120,11 @@ function findbugs_maven_skipper
done
if [[ -n "${modname}" ]]; then
- add_vote_table 0 findbugs "Skipped ${repostat} modules with no Java source: ${skiplist[*]}"
+ if [[ "${BUILDMODE}" = patch ]]; then
+ add_vote_table 0 findbugs "Skipped patched modules with no Java source: ${skiplist[*]}"
+ else
+ add_vote_table 0 findbugs "Skipped ${#skiplist[@]} modules in the source tree with no Java source."
+ fi
fi
}
@@ -132,6 +134,7 @@ function findbugs_maven_skipper
## @replaceable no
## @return 0 on success
## @return 1 on failure
+## @param repostatus
function findbugs_runner
{
local name=$1
@@ -147,7 +150,7 @@ function findbugs_runner
# strip out any modules that aren't actually java modules
# this can save a lot of time during testing
if [[ "${BUILDTOOL}" = maven ]]; then
- findbugs_maven_skipper "${name}"
+ findbugs_maven_skipper
fi
"${BUILDTOOL}_modules_worker" "${name}" findbugs
@@ -248,7 +251,7 @@ function findbugs_preapply
return 0
fi
- big_console_header "Pre-patch findbugs detection"
+ big_console_header "findbugs detection: ${PATCH_BRANCH}"
findbugs_runner branch
result=$?
@@ -329,7 +332,7 @@ function findbugs_postinstall
return 0
fi
- big_console_header "Patch findbugs detection"
+ big_console_header "findbugs detection: ${BUILDMODE}"
findbugs_runner patch
http://git-wip-us.apache.org/repos/asf/yetus/blob/ce6d4d49/precommit/test-patch.d/gradle.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.d/gradle.sh b/precommit/test-patch.d/gradle.sh
index 1f971fa..e809465 100755
--- a/precommit/test-patch.d/gradle.sh
+++ b/precommit/test-patch.d/gradle.sh
@@ -106,9 +106,9 @@ function gradle_precompile
if [[ "${repostatus}" = branch ]]; then
# shellcheck disable=SC2153
- big_console_header "${PATCH_BRANCH} gradle bootstrap"
+ big_console_header "gradle boostrap: ${PATCH_BRANCH}"
else
- big_console_header "Patch gradle bootstrap"
+ big_console_header "gradle bootstrap: ${BUILDMODE}"
fi
personality_modules "${repostatus}" gradleboot
http://git-wip-us.apache.org/repos/asf/yetus/blob/ce6d4d49/precommit/test-patch.d/maven.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.d/maven.sh b/precommit/test-patch.d/maven.sh
index 1a2a86b..32f4b37 100755
--- a/precommit/test-patch.d/maven.sh
+++ b/precommit/test-patch.d/maven.sh
@@ -95,6 +95,11 @@ function maven_parse_args
function maven_initialize
{
+ if ! verify_command "maven" "${MAVEN}"; then
+ return 1
+ fi
+
+ # we need to do this before docker does it as root
maven_add_install mvneclipse
maven_add_install mvnsite
@@ -139,7 +144,7 @@ function maven_precheck
fi
if [[ ${MAVEN_CUSTOM_REPOS} = true ]]; then
- MAVEN_LOCAL_REPO="${MAVEN_CUSTOM_REPOS_DIR}/${PROJECT_NAME}-${PATCH_BRANCH}-${INSTANCE}"
+ MAVEN_LOCAL_REPO="${MAVEN_CUSTOM_REPOS_DIR}/${PROJECT_NAME}-${PATCH_BRANCH}-${BUILDMODE}-${INSTANCE}"
if [[ -e "${MAVEN_LOCAL_REPO}"
&& ! -d "${MAVEN_LOCAL_REPO}" ]]; then
yetus_error "ERROR: ${MAVEN_LOCAL_REPO} is not a directory."
@@ -369,7 +374,8 @@ function maven_builtin_personality_modules
# this always makes sure the local repo has a fresh
# copy of everything per pom rules.
if [[ ${repostatus} == branch
- && ${testtype} == mvninstall ]];then
+ && ${testtype} == mvninstall ]] ||
+ [[ "${BUILDMODE}" = full ]];then
personality_enqueue_module "${CHANGED_UNION_MODULES}"
return
fi
@@ -450,9 +456,9 @@ function mvnsite_postcompile
fi
if [[ "${repostatus}" = branch ]]; then
- big_console_header "Pre-patch ${PATCH_BRANCH} maven site verification"
+ big_console_header "maven site verification: ${PATCH_BRANCH}"
else
- big_console_header "Patch maven site verification"
+ big_console_header "maven site verification: ${BUILDMODE}"
fi
personality_modules "${repostatus}" mvnsite
@@ -485,9 +491,9 @@ function mvneclipse_postcompile
fi
if [[ "${repostatus}" = branch ]]; then
- big_console_header "Pre-patch ${PATCH_BRANCH} maven eclipse verification"
+ big_console_header "maven eclipse verification: ${PATCH_BRANCH}"
else
- big_console_header "Patch maven eclipse verification"
+ big_console_header "maven eclipse verification: ${BUILDMODE}"
fi
personality_modules "${repostatus}" mvneclipse
@@ -536,10 +542,14 @@ function maven_precompile
return 0
fi
+ if [[ "${BUILDMODE}" = Full ]]; then
+ return 0
+ fi
+
if [[ "${repostatus}" = branch ]]; then
- big_console_header "Pre-patch ${PATCH_BRANCH} maven install"
+ big_console_header "maven install: ${PATCH_BRANCH}"
else
- big_console_header "Patch maven install"
+ big_console_header "maven install: ${BUILDMODE}"
fi
personality_modules "${repostatus}" mvninstall
@@ -675,5 +685,9 @@ function maven_reorder_modules
yetus_debug "Maven: finish re-ordering modules"
yetus_debug "Finished list: ${CHANGED_MODULES[*]}"
- add_vote_table 0 mvndep "Maven dependency ordering for ${repostatus}"
+ if [[ "${BUILDMODE}" = patch ]]; then
+ add_vote_table 0 mvndep "Maven dependency ordering for ${repostatus}"
+ else
+ add_vote_table 0 mvndep "Maven dependency ordering"
+ fi
}
http://git-wip-us.apache.org/repos/asf/yetus/blob/ce6d4d49/precommit/test-patch.d/perlcritic.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.d/perlcritic.sh b/precommit/test-patch.d/perlcritic.sh
index 8297f46..b376347 100755
--- a/precommit/test-patch.d/perlcritic.sh
+++ b/precommit/test-patch.d/perlcritic.sh
@@ -64,7 +64,7 @@ function perlcritic_preapply
return 0
fi
- big_console_header "Perl::Critic plugin: prepatch"
+ big_console_header "Perl::Critic plugin: ${PATCH_BRANCH}"
start_clock
@@ -106,7 +106,7 @@ function perlcritic_postapply
return 0
fi
- big_console_header "Perl::Critic plugin: postpatch"
+ big_console_header "Perl::Critic plugin: ${BUILDMODE}"
start_clock
@@ -147,11 +147,11 @@ function perlcritic_postapply
statstring=$(generic_calcdiff_status "${numPrepatch}" "${numPostpatch}" "${diffPostpatch}" )
if [[ ${diffPostpatch} -gt 0 ]]; then
- add_vote_table -1 perlcritic "The applied patch ${statstring}"
+ add_vote_table -1 perlcritic "${BUILDMODEMSG} ${statstring}"
add_footer_table perlcritic "@@BASE@@/diff-patch-perlcritic.txt"
return 1
elif [[ ${fixedpatch} -gt 0 ]]; then
- add_vote_table +1 perlcritic "The applied patch ${statstring}"
+ add_vote_table +1 perlcritic "${BUILDMODEMSG} ${statstring}"
return 0
fi
http://git-wip-us.apache.org/repos/asf/yetus/blob/ce6d4d49/precommit/test-patch.d/pylint.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.d/pylint.sh b/precommit/test-patch.d/pylint.sh
index 2a9e1f8..0f1790f 100755
--- a/precommit/test-patch.d/pylint.sh
+++ b/precommit/test-patch.d/pylint.sh
@@ -71,7 +71,7 @@ function pylint_preapply
return 0
fi
- big_console_header "pylint plugin: prepatch"
+ big_console_header "pylint plugin: ${PATCH_BRANCH}"
start_clock
@@ -87,7 +87,7 @@ function pylint_preapply
if [[ -f ${PATCH_DIR}/${pylintStderr} ]]; then
count=$(${GREP} -vc "^No config file found" "${PATCH_DIR}/${pylintStderr}")
if [[ ${count} -gt 0 ]]; then
- add_footer_table pylint "prepatch stderr: @@BASE@@/${pylintStderr}"
+ add_footer_table pylint "${PATCH_BRANCH} stderr: @@BASE@@/${pylintStderr}"
return 1
fi
fi
@@ -113,7 +113,7 @@ function pylint_postapply
return 0
fi
- big_console_header "pylint plugin: postpatch"
+ big_console_header "pylint plugin: ${BUILDMODE}"
start_clock
@@ -135,7 +135,7 @@ function pylint_postapply
count=$(${GREP} -vc "^No config file found" "${PATCH_DIR}/${pylintStderr}")
if [[ ${count} -gt 0 ]]; then
add_vote_table -1 pylint "Something bad seems to have happened in running pylint. Please check pylint stderr files."
- add_footer_table pylint "postpatch stderr: @@BASE@@/${pylintStderr}"
+ add_footer_table pylint "${BUILDMODEMSG} stderr: @@BASE@@/${pylintStderr}"
return 1
fi
fi
@@ -158,11 +158,11 @@ function pylint_postapply
statstring=$(generic_calcdiff_status "${numPrepatch}" "${numPostpatch}" "${diffPostpatch}" )
if [[ ${diffPostpatch} -gt 0 ]] ; then
- add_vote_table -1 pylint "The applied patch ${statstring}"
+ add_vote_table -1 pylint "${BUILDMODEMSG} ${statstring}"
add_footer_table pylint "@@BASE@@/diff-patch-pylint.txt"
return 1
elif [[ ${fixedpatch} -gt 0 ]]; then
- add_vote_table +1 pylint "The applied patch ${statstring}"
+ add_vote_table +1 pylint "${BUILDMODEMSG} ${statstring}"
return 0
fi
http://git-wip-us.apache.org/repos/asf/yetus/blob/ce6d4d49/precommit/test-patch.d/rubocop.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.d/rubocop.sh b/precommit/test-patch.d/rubocop.sh
index 8e1d5b8..f73c073 100755
--- a/precommit/test-patch.d/rubocop.sh
+++ b/precommit/test-patch.d/rubocop.sh
@@ -64,7 +64,7 @@ function rubocop_preapply
return 0
fi
- big_console_header "rubocop plugin: prepatch"
+ big_console_header "rubocop plugin: ${PATCH_BRANCH}"
start_clock
@@ -106,7 +106,7 @@ function rubocop_postapply
return 0
fi
- big_console_header "rubocop plugin: postpatch"
+ big_console_header "rubocop plugin: ${BUILDMODE}"
start_clock
@@ -146,11 +146,11 @@ function rubocop_postapply
statstring=$(generic_calcdiff_status "${numPrepatch}" "${numPostpatch}" "${diffPostpatch}" )
if [[ ${diffPostpatch} -gt 0 ]] ; then
- add_vote_table -1 rubocop "The applied patch ${statstring}"
+ add_vote_table -1 rubocop "${BUILDMODEMSG} ${statstring}"
add_footer_table rubocop "@@BASE@@/diff-patch-rubocop.txt"
return 1
elif [[ ${fixedpatch} -gt 0 ]]; then
- add_vote_table +1 rubocop "The applied patch ${statstring}"
+ add_vote_table +1 rubocop "${BUILDMODEMSG} ${statstring}"
return 0
fi
http://git-wip-us.apache.org/repos/asf/yetus/blob/ce6d4d49/precommit/test-patch.d/ruby-lint.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.d/ruby-lint.sh b/precommit/test-patch.d/ruby-lint.sh
index 94d4f53..c57887b 100755
--- a/precommit/test-patch.d/ruby-lint.sh
+++ b/precommit/test-patch.d/ruby-lint.sh
@@ -63,7 +63,7 @@ function ruby_lint_preapply
return 0
fi
- big_console_header "ruby-lint plugin: prepatch"
+ big_console_header "ruby-lint plugin: ${PATCH_BRANCH}"
start_clock
@@ -136,7 +136,7 @@ function ruby_lint_postapply
return 0
fi
- big_console_header "ruby-lint plugin: postpatch"
+ big_console_header "ruby-lint plugin: ${BUILDMODE}"
start_clock
@@ -176,11 +176,11 @@ function ruby_lint_postapply
statstring=$(generic_calcdiff_status "${numPrepatch}" "${numPostpatch}" "${diffPostpatch}" )
if [[ ${diffPostpatch} -gt 0 ]] ; then
- add_vote_table -1 ruby-lint "The applied patch ${statstring}"
+ add_vote_table -1 ruby-lint "${BUILDMODEMSG} ${statstring}"
add_footer_table ruby-lint "@@BASE@@/diff-patch-ruby-lint.txt"
return 1
elif [[ ${fixedpatch} -gt 0 ]]; then
- add_vote_table +1 ruby-lint "The applied patch ${statstring}"
+ add_vote_table +1 ruby-lint "${BUILDMODEMSG} ${statstring}"
return 0
fi
http://git-wip-us.apache.org/repos/asf/yetus/blob/ce6d4d49/precommit/test-patch.d/shellcheck.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.d/shellcheck.sh b/precommit/test-patch.d/shellcheck.sh
index e9a7e15..0e053e3 100755
--- a/precommit/test-patch.d/shellcheck.sh
+++ b/precommit/test-patch.d/shellcheck.sh
@@ -106,7 +106,7 @@ function shellcheck_preapply
return 0
fi
- big_console_header "shellcheck plugin: prepatch"
+ big_console_header "shellcheck plugin: ${PATCH_BRANCH}"
start_clock
@@ -157,7 +157,7 @@ function shellcheck_postapply
return 0
fi
- big_console_header "shellcheck plugin: postpatch"
+ big_console_header "shellcheck plugin: ${BUILDMODE}"
start_clock
@@ -194,12 +194,12 @@ function shellcheck_postapply
statstring=$(generic_calcdiff_status "${numPrepatch}" "${numPostpatch}" "${diffPostpatch}" )
if [[ ${diffPostpatch} -gt 0 ]] ; then
- add_vote_table -1 shellcheck "The applied patch ${statstring}"
+ add_vote_table -1 shellcheck "${BUILDMODEMSG} ${statstring}"
add_footer_table shellcheck "@@BASE@@/diff-patch-shellcheck.txt"
bugsystem_linecomments "shellcheck" "${PATCH_DIR}/diff-patch-shellcheck.txt"
return 1
elif [[ ${fixedpatch} -gt 0 ]]; then
- add_vote_table +1 shellcheck "The applied patch ${statstring}"
+ add_vote_table +1 shellcheck "${BUILDMODEMSG} ${statstring}"
return 0
fi
http://git-wip-us.apache.org/repos/asf/yetus/blob/ce6d4d49/precommit/test-patch.d/shelldocs.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.d/shelldocs.sh b/precommit/test-patch.d/shelldocs.sh
index fea982a..d52fa6b 100755
--- a/precommit/test-patch.d/shelldocs.sh
+++ b/precommit/test-patch.d/shelldocs.sh
@@ -103,7 +103,7 @@ function shelldocs_preapply
return 0
fi
- big_console_header "shelldocs plugin: prepatch"
+ big_console_header "shelldocs plugin: ${PATCH_BRANCH}"
start_clock
@@ -134,7 +134,7 @@ function shelldocs_postapply
return 0
fi
- big_console_header "shelldocs plugin: postpatch"
+ big_console_header "shelldocs plugin: ${BUILDMODE}"
start_clock
@@ -170,12 +170,12 @@ function shelldocs_postapply
statstring=$(generic_calcdiff_status "${numPrepatch}" "${numPostpatch}" "${diffPostpatch}" )
if [[ ${diffPostpatch} -gt 0 ]] ; then
- add_vote_table -1 shelldocs "The applied patch ${statstring}"
+ add_vote_table -1 shelldocs "${BUILDMODEMSG} ${statstring}"
add_footer_table shelldocs "@@BASE@@/diff-patch-shelldocs.txt"
bugsystem_linecomments "shelldocs" "${PATCH_DIR}/diff-patch-shelldocs.txt"
return 1
elif [[ ${fixedpatch} -gt 0 ]]; then
- add_vote_table +1 shelldocs "The applied patch ${statstring}"
+ add_vote_table +1 shelldocs "${BUILDMODEMSG} ${statstring}"
return 0
fi
http://git-wip-us.apache.org/repos/asf/yetus/blob/ce6d4d49/precommit/test-patch.d/test4tests.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.d/test4tests.sh b/precommit/test-patch.d/test4tests.sh
index 644fbf9..6c3230c 100755
--- a/precommit/test-patch.d/test4tests.sh
+++ b/precommit/test-patch.d/test4tests.sh
@@ -27,6 +27,10 @@ function test4tests_patchfile
declare testReferences=0
declare i
+ if [[ "${BUILDMODE}" = full ]]; then
+ return
+ fi
+
big_console_header "Checking there are new or changed tests in the patch."
if ! verify_needed_test unit; then
http://git-wip-us.apache.org/repos/asf/yetus/blob/ce6d4d49/precommit/test-patch.d/whitespace.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.d/whitespace.sh b/precommit/test-patch.d/whitespace.sh
index a613d81..da0789b 100755
--- a/precommit/test-patch.d/whitespace.sh
+++ b/precommit/test-patch.d/whitespace.sh
@@ -49,21 +49,37 @@ function whitespace_postcompile
start_clock
pushd "${BASEDIR}" >/dev/null
- # shellcheck disable=SC2016
- ${AWK} '/\t/ {print $0}' \
- "${GITDIFFCONTENT}" \
- | ${GREP} -v Makefile: >> "${PATCH_DIR}/whitespace-tabs.txt"
- ${GREP} -E '[[:blank:]]$' \
- "${GITDIFFCONTENT}" \
- >> "${PATCH_DIR}/whitespace-eol.txt"
+ case "${BUILDMODE}" in
+ patch)
+ # shellcheck disable=SC2016
+ ${AWK} '/\t/ {print $0}' \
+ "${GITDIFFCONTENT}" \
+ | ${GREP} -v Makefile: >> "${PATCH_DIR}/whitespace-tabs.txt"
+
+ ${GREP} -E '[[:blank:]]$' \
+ "${GITDIFFCONTENT}" \
+ >> "${PATCH_DIR}/whitespace-eol.txt"
+ ;;
+ full)
+ ${GIT} grep -n -I --extended-regexp '[[:blank:]]$' \
+ >> "${PATCH_DIR}/whitespace-eol.txt"
+ ${GIT} grep -n -I $'\t' \
+ | "${GREP}" -v Makefile \
+ >> "${PATCH_DIR}/whitespace-tabs.txt"
+ ;;
+ esac
# shellcheck disable=SC2016
count=$(wc -l "${PATCH_DIR}/whitespace-eol.txt" | ${AWK} '{print $1}')
if [[ ${count} -gt 0 ]]; then
- add_vote_table -1 whitespace "The patch has ${count}"\
- " line(s) that end in whitespace. Use git apply --whitespace=fix."
+ if [[ "${BUILDMODE}" = full ]]; then
+ add_vote_table -1 whitespace "${BUILDMODEMSG} has ${count} line(s) that end in whitespace."
+ else
+ add_vote_table -1 whitespace \
+ "${BUILDMODEMSG} has ${count} line(s) that end in whitespace. Use git apply --whitespace=fix."
+ fi
whitespace_linecomment_reporter "${PATCH_DIR}/whitespace-eol.txt" "end of line"
add_footer_table whitespace "@@BASE@@/whitespace-eol.txt"
@@ -74,7 +90,7 @@ function whitespace_postcompile
count=$(wc -l "${PATCH_DIR}/whitespace-tabs.txt" | ${AWK} '{print $1}')
if [[ ${count} -gt 0 ]]; then
- add_vote_table -1 whitespace "The patch has ${count}"\
+ add_vote_table -1 whitespace "${BUILDMODEMSG} ${count}"\
" line(s) with tabs."
add_footer_table whitespace "@@BASE@@/whitespace-tabs.txt"
whitespace_linecomment_reporter "${PATCH_DIR}/whitespace-tabs.txt" "tabs in line"
@@ -87,6 +103,6 @@ function whitespace_postcompile
fi
popd >/dev/null
- add_vote_table +1 whitespace "Patch has no whitespace issues."
+ add_vote_table +1 whitespace "${BUILDMODEMSG} has no whitespace issues."
return 0
}
http://git-wip-us.apache.org/repos/asf/yetus/blob/ce6d4d49/precommit/test-patch.d/xml.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.d/xml.sh b/precommit/test-patch.d/xml.sh
index 08e0a61..6460522 100755
--- a/precommit/test-patch.d/xml.sh
+++ b/precommit/test-patch.d/xml.sh
@@ -48,7 +48,7 @@ function xml_postcompile
return 0
fi
- big_console_header "Checking if XML files are well-formed"
+ big_console_header "XML verification: ${BUILDMODE}"
js="${JAVA_HOME}/bin/jrunscript"
@@ -65,13 +65,13 @@ function xml_postcompile
done
if [[ ${count} -gt 0 ]]; then
- add_vote_table -1 xml "The patch has ${count} ill-formed XML file(s)."
+ add_vote_table -1 xml "${BUILDMODEMSG} has ${count} ill-formed XML file(s)."
add_footer_table xml "@@BASE@@/xml.txt"
popd >/dev/null
return 1
fi
popd >/dev/null
- add_vote_table +1 xml "The patch has no ill-formed XML file."
+ add_vote_table +1 xml "${BUILDMODEMSG} has no ill-formed XML file."
return 0
}
[21/22] yetus git commit: YETUS-357. build driver for hadoop
shouldn't union unit tests
Posted by aw...@apache.org.
YETUS-357. build driver for hadoop shouldn't union unit tests
Signed-off-by: Allen Wittenauer <aw...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/yetus/repo
Commit: http://git-wip-us.apache.org/repos/asf/yetus/commit/b7722bd5
Tree: http://git-wip-us.apache.org/repos/asf/yetus/tree/b7722bd5
Diff: http://git-wip-us.apache.org/repos/asf/yetus/diff/b7722bd5
Branch: refs/heads/YETUS-156
Commit: b7722bd5b7e72997faa880b6c8715dbdec8e3169
Parents: 67d3284
Author: Allen Wittenauer <aw...@apache.org>
Authored: Tue Apr 12 09:03:20 2016 -0700
Committer: Allen Wittenauer <aw...@apache.org>
Committed: Fri Apr 22 13:25:07 2016 -0700
----------------------------------------------------------------------
precommit/personality/hadoop.sh | 10 ++++++++--
precommit/test-patch.d/maven.sh | 10 ++++++++++
2 files changed, 18 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/yetus/blob/b7722bd5/precommit/personality/hadoop.sh
----------------------------------------------------------------------
diff --git a/precommit/personality/hadoop.sh b/precommit/personality/hadoop.sh
index d23b6be..5b96994 100755
--- a/precommit/personality/hadoop.sh
+++ b/precommit/personality/hadoop.sh
@@ -46,8 +46,12 @@ function hadoop_order
if [[ ${ordering} = normal ]]; then
hadoopm="${CHANGED_MODULES[*]}"
- elif [[ ${ordering} = union ]]; then
+ elif [[ ${ordering} = union ]]; then
hadoopm="${CHANGED_UNION_MODULES}"
+ elif [[ ${ordering} = mvnsrc ]]; then
+ hadoopm="${MAVEN_SRC_MODULES[*]}"
+ elif [[ ${ordering} = mvnsrctest ]]; then
+ hadoopm="${MAVEN_SRCTEST_MODULES[*]}"
else
hadoopm="${ordering}"
fi
@@ -236,7 +240,9 @@ function personality_modules
fi
;;
unit)
- if [[ "${CHANGED_MODULES[*]}" =~ \. ]]; then
+ if [[ "${BUILDMODE}" = full ]]; then
+ ordering=mvnsrc
+ elif [[ "${CHANGED_MODULES[*]}" =~ \. ]]; then
ordering=.
fi
http://git-wip-us.apache.org/repos/asf/yetus/blob/b7722bd5/precommit/test-patch.d/maven.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.d/maven.sh b/precommit/test-patch.d/maven.sh
index 32f4b37..77aab32 100755
--- a/precommit/test-patch.d/maven.sh
+++ b/precommit/test-patch.d/maven.sh
@@ -685,6 +685,16 @@ function maven_reorder_modules
yetus_debug "Maven: finish re-ordering modules"
yetus_debug "Finished list: ${CHANGED_MODULES[*]}"
+ # build some utility module lists for maven modules
+ for index in "${CHANGED_MODULES[@]}"; do
+ if [[ -d "${index}/src" ]]; then
+ MAVEN_SRC_MODULES=("${MAVEN_SRC_MODULES[@]}" "${index}")
+ if [[ -d "${index}/src/test" ]]; then
+ MAVEN_SRCTEST_MODULES=("${MAVEN_SRCTEST_MODULES[@]}" "${index}")
+ fi
+ fi
+ done
+
if [[ "${BUILDMODE}" = patch ]]; then
add_vote_table 0 mvndep "Maven dependency ordering for ${repostatus}"
else
[09/22] yetus git commit: YETUS-351. documentation changes for build
driver
Posted by aw...@apache.org.
YETUS-351. documentation changes for build driver
Signed-off-by: Allen Wittenauer <aw...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/yetus/repo
Commit: http://git-wip-us.apache.org/repos/asf/yetus/commit/231eb785
Tree: http://git-wip-us.apache.org/repos/asf/yetus/tree/231eb785
Diff: http://git-wip-us.apache.org/repos/asf/yetus/diff/231eb785
Branch: refs/heads/YETUS-156
Commit: 231eb78519a842e33ed38beccdb396c1deb55d08
Parents: d5e0032
Author: Allen Wittenauer <aw...@apache.org>
Authored: Tue Mar 29 17:19:41 2016 -0700
Committer: Allen Wittenauer <aw...@apache.org>
Committed: Fri Apr 22 13:25:07 2016 -0700
----------------------------------------------------------------------
.../documentation/in-progress/precommit-qbt.md | 37 ++++++++++++++++++++
1 file changed, 37 insertions(+)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/yetus/blob/231eb785/asf-site-src/source/documentation/in-progress/precommit-qbt.md
----------------------------------------------------------------------
diff --git a/asf-site-src/source/documentation/in-progress/precommit-qbt.md b/asf-site-src/source/documentation/in-progress/precommit-qbt.md
new file mode 100644
index 0000000..2cb8036
--- /dev/null
+++ b/asf-site-src/source/documentation/in-progress/precommit-qbt.md
@@ -0,0 +1,37 @@
+<!---
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (the
+ "License"); you may not use this file except in compliance
+ with the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+-->
+
+qbt
+===
+
+`qbt` is a command to execute test-patch without a patch. It uses
+the same plug-ins and the same options as test-patch. The only
+difference is that no patch file, location, etc should be supplied.
+It is meant to be a way to easily get test-patch's output on your
+current source tree. It is suitable to be run as a regularly
+scheduled build as part of your overall development strategy.
+
+When using an automation tool, it may be useful to use the
+`--console-report-file` option to send the summary email to a
+file. This can then be used with systems like Jenkin's
+email-ext plug-in to send the output as an emailed report:
+
+```
+${FILE,path="<report-file-path>"}
+```
[07/22] yetus git commit: YETUS-384. In build driver mode,
some plugins have misleading status text
Posted by aw...@apache.org.
YETUS-384. In build driver mode, some plugins have misleading status text
Signed-off-by: Allen Wittenauer <aw...@apache.org>
Project: http://git-wip-us.apache.org/repos/asf/yetus/repo
Commit: http://git-wip-us.apache.org/repos/asf/yetus/commit/daf411fa
Tree: http://git-wip-us.apache.org/repos/asf/yetus/tree/daf411fa
Diff: http://git-wip-us.apache.org/repos/asf/yetus/diff/daf411fa
Branch: refs/heads/YETUS-156
Commit: daf411fadbbd1e2d33907acb1fa73af25fded54e
Parents: 2fe2b36
Author: Allen Wittenauer <aw...@apache.org>
Authored: Mon Apr 18 13:44:58 2016 -0700
Committer: Allen Wittenauer <aw...@apache.org>
Committed: Fri Apr 22 13:25:07 2016 -0700
----------------------------------------------------------------------
precommit/test-patch.d/perlcritic.sh | 4 ++--
precommit/test-patch.d/pylint.sh | 4 ++--
precommit/test-patch.d/rubocop.sh | 4 ++--
precommit/test-patch.d/ruby-lint.sh | 4 ++--
4 files changed, 8 insertions(+), 8 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/yetus/blob/daf411fa/precommit/test-patch.d/perlcritic.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.d/perlcritic.sh b/precommit/test-patch.d/perlcritic.sh
index b376347..291e94e 100755
--- a/precommit/test-patch.d/perlcritic.sh
+++ b/precommit/test-patch.d/perlcritic.sh
@@ -68,7 +68,7 @@ function perlcritic_preapply
start_clock
- echo "Running perlcritic against modified perl scripts/modules."
+ echo "Running perlcritic against identified perl scripts/modules."
pushd "${BASEDIR}" >/dev/null
for i in "${CHANGED_FILES[@]}"; do
if [[ ${i} =~ \.p[lm]$ && -f ${i} ]]; then
@@ -114,7 +114,7 @@ function perlcritic_postapply
# by setting the clock back
offset_clock "${PERLCRITIC_TIMER}"
- echo "Running perlcritic against modified perl scripts/modules."
+ echo "Running perlcritic against identified perl scripts/modules."
# we re-check this in case one has been added
pushd "${BASEDIR}" >/dev/null
for i in "${CHANGED_FILES[@]}"; do
http://git-wip-us.apache.org/repos/asf/yetus/blob/daf411fa/precommit/test-patch.d/pylint.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.d/pylint.sh b/precommit/test-patch.d/pylint.sh
index 0f1790f..7decb96 100755
--- a/precommit/test-patch.d/pylint.sh
+++ b/precommit/test-patch.d/pylint.sh
@@ -75,7 +75,7 @@ function pylint_preapply
start_clock
- echo "Running pylint against modified python scripts."
+ echo "Running pylint against identified python scripts."
pushd "${BASEDIR}" >/dev/null
for i in "${CHANGED_FILES[@]}"; do
if [[ ${i} =~ \.py$ && -f ${i} ]]; then
@@ -121,7 +121,7 @@ function pylint_postapply
# by setting the clock back
offset_clock "${PYLINT_TIMER}"
- echo "Running pylint against modified python scripts."
+ echo "Running pylint against identified python scripts."
# we re-check this in case one has been added
pushd "${BASEDIR}" >/dev/null
for i in "${CHANGED_FILES[@]}"; do
http://git-wip-us.apache.org/repos/asf/yetus/blob/daf411fa/precommit/test-patch.d/rubocop.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.d/rubocop.sh b/precommit/test-patch.d/rubocop.sh
index f73c073..828bea1 100755
--- a/precommit/test-patch.d/rubocop.sh
+++ b/precommit/test-patch.d/rubocop.sh
@@ -68,7 +68,7 @@ function rubocop_preapply
start_clock
- echo "Running rubocop against modified ruby scripts."
+ echo "Running rubocop against identified ruby scripts."
pushd "${BASEDIR}" >/dev/null
for i in "${CHANGED_FILES[@]}"; do
if [[ ${i} =~ \.rb$ && -f ${i} ]]; then
@@ -114,7 +114,7 @@ function rubocop_postapply
# by setting the clock back
offset_clock "${RUBOCOP_TIMER}"
- echo "Running rubocop against modified ruby scripts."
+ echo "Running rubocop against identified ruby scripts."
# we re-check this in case one has been added
pushd "${BASEDIR}" >/dev/null
for i in "${CHANGED_FILES[@]}"; do
http://git-wip-us.apache.org/repos/asf/yetus/blob/daf411fa/precommit/test-patch.d/ruby-lint.sh
----------------------------------------------------------------------
diff --git a/precommit/test-patch.d/ruby-lint.sh b/precommit/test-patch.d/ruby-lint.sh
index c57887b..78be7b6 100755
--- a/precommit/test-patch.d/ruby-lint.sh
+++ b/precommit/test-patch.d/ruby-lint.sh
@@ -67,7 +67,7 @@ function ruby_lint_preapply
start_clock
- echo "Running ruby-lint against modified ruby scripts."
+ echo "Running ruby-lint against identified ruby scripts."
pushd "${BASEDIR}" >/dev/null
for i in "${CHANGED_FILES[@]}"; do
if [[ ${i} =~ \.rb$ && -f ${i} ]]; then
@@ -144,7 +144,7 @@ function ruby_lint_postapply
# by setting the clock back
offset_clock "${RUBY_LINT_TIMER}"
- echo "Running ruby-lint against modified ruby scripts."
+ echo "Running ruby-lint against identified ruby scripts."
# we re-check this in case one has been added
pushd "${BASEDIR}" >/dev/null
for i in "${CHANGED_FILES[@]}"; do