diff --git a/hadoop-ozone/dev-support/checks/acceptance.sh b/hadoop-ozone/dev-support/checks/acceptance.sh index 8de920ff9e5..4a50e089eee 100755 --- a/hadoop-ozone/dev-support/checks/acceptance.sh +++ b/hadoop-ozone/dev-support/checks/acceptance.sh @@ -14,6 +14,10 @@ # See the License for the specific language governing permissions and # limitations under the License. DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" +cd "$DIR/../../.." || exit 1 + export HADOOP_VERSION=3 -"$DIR/../../../hadoop-ozone/dist/target/ozone-*-SNAPSHOT/compose/test-all.sh" +OZONE_VERSION=$(grep "" "$DIR/../../pom.xml" | sed 's/<[^>]*>//g'| sed 's/^[ \t]*//') +cd "$DIR/../../dist/target/ozone-$OZONE_VERSION/compose" || exit 1 +./test-all.sh exit $? diff --git a/hadoop-ozone/dev-support/checks/author.sh b/hadoop-ozone/dev-support/checks/author.sh index 43caa7081f0..d5a469cca16 100755 --- a/hadoop-ozone/dev-support/checks/author.sh +++ b/hadoop-ozone/dev-support/checks/author.sh @@ -13,10 +13,16 @@ # 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. -mkdir -p ./target -grep -r --include="*.java" "@author" . -if [ $? -gt 0 ]; then +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" +cd "$DIR/../../.." || exit 1 + +#hide this tring to not confuse yetus +AUTHOR="uthor" +AUTHOR="@a${AUTHOR}" + +grep -r --include="*.java" "$AUTHOR" . +if grep -r --include="*.java" "$AUTHOR" .; then exit 0 else - exit -1 + exit 1 fi diff --git a/hadoop-ozone/dev-support/checks/build.sh b/hadoop-ozone/dev-support/checks/build.sh index 6a7811ecd7c..11973301b27 100755 --- a/hadoop-ozone/dev-support/checks/build.sh +++ b/hadoop-ozone/dev-support/checks/build.sh @@ -13,6 +13,9 @@ # 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. +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" +cd "$DIR/../../.." || exit 1 + export MAVEN_OPTS="-Xmx4096m" -mvn -am -pl :hadoop-ozone-dist -P hdds -Dmaven.javadoc.skip=true -DskipTests clean install +mvn -B -f pom.ozone.xml -Dmaven.javadoc.skip=true -DskipTests clean install exit $? diff --git a/hadoop-ozone/dev-support/checks/checkstyle.sh b/hadoop-ozone/dev-support/checks/checkstyle.sh index 0d80fbce2c7..c4de5288238 100755 --- a/hadoop-ozone/dev-support/checks/checkstyle.sh +++ b/hadoop-ozone/dev-support/checks/checkstyle.sh @@ -13,11 +13,17 @@ # 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. -mvn -fn checkstyle:check -am -pl :hadoop-ozone-dist -Phdds +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" +cd "$DIR/../../.." || exit 1 + +mvn -B -fn checkstyle:check -f pom.ozone.xml + +#Print out the exact violations with parsing XML results with sed +find "." -name checkstyle-errors.xml -print0 | xargs -0 sed '$!N; //d' violations=$(grep -r error --include checkstyle-errors.xml .| wc -l) if [[ $violations -gt 0 ]]; then echo "There are $violations checkstyle violations" - exit -1 + exit 1 fi exit 0 diff --git a/hadoop-ozone/dev-support/checks/findbugs.sh b/hadoop-ozone/dev-support/checks/findbugs.sh index 13284929b27..545ad9fd7d4 100755 --- a/hadoop-ozone/dev-support/checks/findbugs.sh +++ b/hadoop-ozone/dev-support/checks/findbugs.sh @@ -13,6 +13,8 @@ # 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. +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" +cd "$DIR/../../.." || exit 1 FINDBUGS_ALL_FILE=./target/findbugs-all.txt @@ -20,15 +22,15 @@ mkdir -p ./target rm "$FINDBUGS_ALL_FILE" || true touch "$FINDBUGS_ALL_FILE" -mvn -fn findbugs:check -Dfindbugs.failOnError=false -am -pl :hadoop-ozone-dist -Phdds +mvn -B compile -fn findbugs:check -Dfindbugs.failOnError=false -f pom.ozone.xml -find hadoop-ozone -name findbugsXml.xml | xargs -n1 convertXmlToText | tee -a "${FINDBUGS_ALL_FILE}" -find hadoop-hdds -name findbugsXml.xml | xargs -n1 convertXmlToText | tee -a "${FINDBUGS_ALL_FILE}" +find hadoop-ozone -name findbugsXml.xml -print0 | xargs -0 -n1 convertXmlToText | tee -a "${FINDBUGS_ALL_FILE}" +find hadoop-hdds -name findbugsXml.xml -print0 | xargs -0 -n1 convertXmlToText | tee -a "${FINDBUGS_ALL_FILE}" -bugs=$(cat "$FINDBUGS_ALL_FILE" | wc -l) +bugs=$(wc -l < "$FINDBUGS_ALL_FILE") if [[ ${bugs} -gt 0 ]]; then - exit -1 + exit 1 else exit 0 fi diff --git a/hadoop-ozone/dev-support/checks/integration.sh b/hadoop-ozone/dev-support/checks/integration.sh new file mode 100755 index 00000000000..1aea3d10c18 --- /dev/null +++ b/hadoop-ozone/dev-support/checks/integration.sh @@ -0,0 +1,28 @@ +#!/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. +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" +cd "$DIR/../../.." || exit 1 + +export MAVEN_OPTS="-Xmx4096m" +mvn -B install -f pom.ozone.xml -DskipTests +mvn -B -fn test -f pom.ozone.xml -pl :hadoop-ozone-integration-test,:hadoop-ozone-filesystem +module_failed_tests=$(find "." -name 'TEST*.xml' -print0 \ + | xargs -0 -n1 "grep" -l -E "/dev/null 2>&1 && pwd )" +cd "$DIR/../../.." || exit 1 + +hadooplines=$(git diff --name-only HEAD~1..HEAD | grep -v hadoop-ozone | grep -c -v hadoop-hdds ) if [ "$hadooplines" == "0" ]; then echo "Only ozone/hdds subprojects are changed" exit 0 else echo "Main hadoop projects are changed in an ozone patch." echo "Please do it in a HADOOP/HDFS patch and test it with hadoop precommit tests" - exit -1 + exit 1 fi diff --git a/hadoop-ozone/dev-support/checks/rat.sh b/hadoop-ozone/dev-support/checks/rat.sh index aadb251a294..68ca56ed60e 100755 --- a/hadoop-ozone/dev-support/checks/rat.sh +++ b/hadoop-ozone/dev-support/checks/rat.sh @@ -13,12 +13,21 @@ # 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. +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" +cd "$DIR/../../.." || exit 1 mkdir -p target -rm target/rat-aggregated.txt -mvn -fn org.apache.rat:apache-rat-plugin:0.13:check -am -pl :hadoop-ozone-dist -Phdds -grep -r --include=rat.txt "!????" | tee ./target/rat-aggregated.txt +REPORT_FILE="$DIR/../../../target/rat-aggretaged.txt" +mkdir -p "$(dirname "$REPORT_FILE")" + +cd hadoop-hdds || exit 1 +mvn -B -fn org.apache.rat:apache-rat-plugin:0.13:check +cd ../hadoop-ozone || exit 1 +mvn -B -fn org.apache.rat:apache-rat-plugin:0.13:check + +cd "$DIR/../../.." || exit 1 +grep -r --include=rat.txt "!????" | tee "$REPORT_FILE" if [ "$(cat target/rat-aggregated.txt)" ]; then - exit -1 + exit 1 fi diff --git a/hadoop-ozone/dev-support/checks/shellcheck.sh b/hadoop-ozone/dev-support/checks/shellcheck.sh new file mode 100755 index 00000000000..1284acd2e51 --- /dev/null +++ b/hadoop-ozone/dev-support/checks/shellcheck.sh @@ -0,0 +1,28 @@ +#!/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. +DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" >/dev/null 2>&1 && pwd )" +cd "$DIR/../../.." || exit 1 + +OUTPUT_FILE="$DIR/../../../target/shell-problems.txt" +mkdir -p "$(dirname "$OUTPUT_FILE")" +echo "" > "$OUTPUT_FILE" +find "./hadoop-hdds" -type f -executable | grep -v target | grep -v node_modules | grep -v py | xargs -n1 shellcheck | tee "$OUTPUT_FILE" +find "./hadoop-ozone" -type f -executable | grep -v target | grep -v node_modules | grep -v py | xargs -n1 shellcheck | tee "$OUTPUT_FILE" + + +if [ "$(cat "$OUTPUT_FILE")" ]; then + exit 1 +fi diff --git a/hadoop-ozone/dev-support/checks/unit.sh b/hadoop-ozone/dev-support/checks/unit.sh index d839f227c2b..1c6f2e99fad 100755 --- a/hadoop-ozone/dev-support/checks/unit.sh +++ b/hadoop-ozone/dev-support/checks/unit.sh @@ -14,11 +14,11 @@ # See the License for the specific language governing permissions and # limitations under the License. export MAVEN_OPTS="-Xmx4096m" -mvn -fn test -am -pl :hadoop-ozone-dist -P hdds -module_failed_tests=$(find "." -name 'TEST*.xml'\ - | xargs "grep" -l -E "