This is an automated email from the ASF dual-hosted git repository.

bbeaudreault pushed a commit to branch hubspot-2
in repository https://gitbox.apache.org/repos/asf/hbase.git

commit 3fa920c885340e3795767ea8fc5f34cc20c78820
Author: Sean Busbey <bus...@apache.org>
AuthorDate: Sat Mar 26 11:02:08 2022 -0500

    HubSpot Backport: HBASE-26871 shaded mapreduce and shaded byo-hadoop client 
artifacts contain no classes (#4279)
    
    - revert poms for both modules
    - add a test to the shaded artifact validation that checks for java classes
    
    Signed-off-by: Andrew Purtell <apurt...@apache.org>
---
 .../src/test/resources/ensure-jars-have-correct-contents.sh           | 4 ++++
 .../src/test/resources/ensure-jars-have-correct-contents.sh           | 4 ++++
 2 files changed, 8 insertions(+)

diff --git 
a/hbase-shaded/hbase-shaded-check-invariants/src/test/resources/ensure-jars-have-correct-contents.sh
 
b/hbase-shaded/hbase-shaded-check-invariants/src/test/resources/ensure-jars-have-correct-contents.sh
index b8a2d6cad4c..171ed31a1a3 100644
--- 
a/hbase-shaded/hbase-shaded-check-invariants/src/test/resources/ensure-jars-have-correct-contents.sh
+++ 
b/hbase-shaded/hbase-shaded-check-invariants/src/test/resources/ensure-jars-have-correct-contents.sh
@@ -114,6 +114,10 @@ declare -i bad_artifacts=0
 declare -a bad_contents
 for artifact in "${artifact_list[@]}"; do
   bad_contents=($(jar tf "${artifact}" | grep -v -E "${allowed_expr}" || true))
+  class_count=$(jar tf "${artifact}" | grep -c -E '\.class$' || true)
+  if [ ${#bad_contents[@]} -eq 0 ] && [ "${class_count}" -lt 1 ]; then
+    bad_contents=("The artifact contains no java class files.")
+  fi
   if [ ${#bad_contents[@]} -gt 0 ]; then
     echo "[ERROR] Found artifact with unexpected contents: '${artifact}'"
     echo "    Please check the following and either correct the build or 
update"
diff --git 
a/hbase-shaded/hbase-shaded-with-hadoop-check-invariants/src/test/resources/ensure-jars-have-correct-contents.sh
 
b/hbase-shaded/hbase-shaded-with-hadoop-check-invariants/src/test/resources/ensure-jars-have-correct-contents.sh
index b8a2d6cad4c..171ed31a1a3 100755
--- 
a/hbase-shaded/hbase-shaded-with-hadoop-check-invariants/src/test/resources/ensure-jars-have-correct-contents.sh
+++ 
b/hbase-shaded/hbase-shaded-with-hadoop-check-invariants/src/test/resources/ensure-jars-have-correct-contents.sh
@@ -114,6 +114,10 @@ declare -i bad_artifacts=0
 declare -a bad_contents
 for artifact in "${artifact_list[@]}"; do
   bad_contents=($(jar tf "${artifact}" | grep -v -E "${allowed_expr}" || true))
+  class_count=$(jar tf "${artifact}" | grep -c -E '\.class$' || true)
+  if [ ${#bad_contents[@]} -eq 0 ] && [ "${class_count}" -lt 1 ]; then
+    bad_contents=("The artifact contains no java class files.")
+  fi
   if [ ${#bad_contents[@]} -gt 0 ]; then
     echo "[ERROR] Found artifact with unexpected contents: '${artifact}'"
     echo "    Please check the following and either correct the build or 
update"

Reply via email to