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

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


The following commit(s) were added to refs/heads/branch-2 by this push:
     new 67aa0524c3b HBASE-30133 opt-in yetus prerelease testing in GHA 
precommit workflows (#8182)
67aa0524c3b is described below

commit 67aa0524c3be0532f201b1e8633f0302a90dda9f
Author: Nick Dimiduk <[email protected]>
AuthorDate: Mon May 4 11:03:30 2026 +0200

    HBASE-30133 opt-in yetus prerelease testing in GHA precommit workflows 
(#8182)
    
    Signed-off-by: Charles Connell <[email protected]>
    (cherry picked from commit 9119caf5d882aadd0af7ff0a74405b1aef8695a0)
---
 .github/workflows/yetus-general-check.yml          | 37 ++++++++++++++++++++--
 .../yetus-jdk11-hadoop3-compile-check.yml          | 37 ++++++++++++++++++++--
 .../workflows/yetus-jdk11-hadoop3-unit-check.yml   | 37 ++++++++++++++++++++--
 .../yetus-jdk17-hadoop3-compile-check.yml          | 37 ++++++++++++++++++++--
 .../workflows/yetus-jdk17-hadoop3-unit-check.yml   | 37 ++++++++++++++++++++--
 .../workflows/yetus-jdk8-hadoop2-compile-check.yml | 37 ++++++++++++++++++++--
 .../workflows/yetus-jdk8-hadoop2-unit-check.yml    | 37 ++++++++++++++++++++--
 7 files changed, 245 insertions(+), 14 deletions(-)

diff --git a/.github/workflows/yetus-general-check.yml 
b/.github/workflows/yetus-general-check.yml
index 40e9589d402..e0ac6e06a5b 100644
--- a/.github/workflows/yetus-general-check.yml
+++ b/.github/workflows/yetus-general-check.yml
@@ -21,7 +21,7 @@ name: Yetus General Check
 
 "on":
   pull_request:
-    types: [opened, synchronize, reopened]
+    types: [opened, synchronize, reopened, labeled, unlabeled]
 
 permissions: {}
 
@@ -58,7 +58,8 @@ jobs:
           restore-keys: |
             hbase-m2-
 
-      - name: Download Yetus
+      - name: Download Yetus (pinned release)
+        if: ${{ !contains(github.event.pull_request.labels.*.name, 
'test-yetus-prerelease') }}
         run: |
           mkdir -p yetus
           cd yetus
@@ -70,6 +71,38 @@ jobs:
           tar --strip-components=1 -xzf apache-yetus-${{ env.YETUS_VERSION 
}}-bin.tar.gz
           rm apache-yetus-${{ env.YETUS_VERSION }}-bin.tar.gz
 
+      - name: Set up JDK 21 (prerelease, build-only)
+        if: ${{ contains(github.event.pull_request.labels.*.name, 
'test-yetus-prerelease') }}
+        uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # 
v5.2.0
+        with:
+          java-version: '21'
+          distribution: 'temurin'
+
+      - name: Checkout apache/yetus@HEAD (prerelease)
+        if: ${{ contains(github.event.pull_request.labels.*.name, 
'test-yetus-prerelease') }}
+        uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # 
v6.0.2
+        with:
+          repository: apache/yetus
+          path: yetus-src
+          persist-credentials: false
+
+      - name: Build Yetus from source (prerelease)
+        if: ${{ contains(github.event.pull_request.labels.*.name, 
'test-yetus-prerelease') }}
+        run: |
+          set -euo pipefail
+          YETUS_SHA="$(git -C yetus-src rev-parse HEAD)"
+          {
+            echo "## Yetus prerelease build"
+            echo ""
+            echo "- Source: \`apache/yetus@${YETUS_SHA}\`"
+            echo "- Triggered by \`test-yetus-prerelease\` label on this PR"
+          } >> "${GITHUB_STEP_SUMMARY}"
+          (cd yetus-src && mvn -B -DskipTests install)
+          mkdir -p yetus
+          tar --strip-components=1 \
+            -xzf 
yetus-src/yetus-dist/target/artifacts/apache-yetus-*-bin.tar.gz \
+            -C yetus
+
       - name: Run Yetus General Check
         env:
           ARCHIVE_PATTERN_LIST: 
"TEST-*.xml,org.apache.h*.txt,*.dumpstream,*.dump"
diff --git a/.github/workflows/yetus-jdk11-hadoop3-compile-check.yml 
b/.github/workflows/yetus-jdk11-hadoop3-compile-check.yml
index 603066ff5e5..7a1b01e06fc 100644
--- a/.github/workflows/yetus-jdk11-hadoop3-compile-check.yml
+++ b/.github/workflows/yetus-jdk11-hadoop3-compile-check.yml
@@ -21,7 +21,7 @@ name: Yetus JDK11 Hadoop3 Compile Check
 
 "on":
   pull_request:
-    types: [opened, synchronize, reopened]
+    types: [opened, synchronize, reopened, labeled, unlabeled]
 
 permissions: {}
 
@@ -58,7 +58,8 @@ jobs:
           restore-keys: |
             hbase-m2-
 
-      - name: Download Yetus
+      - name: Download Yetus (pinned release)
+        if: ${{ !contains(github.event.pull_request.labels.*.name, 
'test-yetus-prerelease') }}
         run: |
           mkdir -p yetus
           cd yetus
@@ -70,6 +71,38 @@ jobs:
           tar --strip-components=1 -xzf apache-yetus-${{ env.YETUS_VERSION 
}}-bin.tar.gz
           rm apache-yetus-${{ env.YETUS_VERSION }}-bin.tar.gz
 
+      - name: Set up JDK 21 (prerelease, build-only)
+        if: ${{ contains(github.event.pull_request.labels.*.name, 
'test-yetus-prerelease') }}
+        uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # 
v5.2.0
+        with:
+          java-version: '21'
+          distribution: 'temurin'
+
+      - name: Checkout apache/yetus@HEAD (prerelease)
+        if: ${{ contains(github.event.pull_request.labels.*.name, 
'test-yetus-prerelease') }}
+        uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # 
v6.0.2
+        with:
+          repository: apache/yetus
+          path: yetus-src
+          persist-credentials: false
+
+      - name: Build Yetus from source (prerelease)
+        if: ${{ contains(github.event.pull_request.labels.*.name, 
'test-yetus-prerelease') }}
+        run: |
+          set -euo pipefail
+          YETUS_SHA="$(git -C yetus-src rev-parse HEAD)"
+          {
+            echo "## Yetus prerelease build"
+            echo ""
+            echo "- Source: \`apache/yetus@${YETUS_SHA}\`"
+            echo "- Triggered by \`test-yetus-prerelease\` label on this PR"
+          } >> "${GITHUB_STEP_SUMMARY}"
+          (cd yetus-src && mvn -B -DskipTests install)
+          mkdir -p yetus
+          tar --strip-components=1 \
+            -xzf 
yetus-src/yetus-dist/target/artifacts/apache-yetus-*-bin.tar.gz \
+            -C yetus
+
       - name: Run Yetus JDK11 Hadoop3 Compile Check
         env:
           ARCHIVE_PATTERN_LIST: 
"TEST-*.xml,org.apache.h*.txt,*.dumpstream,*.dump"
diff --git a/.github/workflows/yetus-jdk11-hadoop3-unit-check.yml 
b/.github/workflows/yetus-jdk11-hadoop3-unit-check.yml
index 627f610c95f..18d9daf25bc 100644
--- a/.github/workflows/yetus-jdk11-hadoop3-unit-check.yml
+++ b/.github/workflows/yetus-jdk11-hadoop3-unit-check.yml
@@ -21,7 +21,7 @@ name: Yetus JDK11 Hadoop3 Unit Check
 
 "on":
   pull_request:
-    types: [opened, synchronize, reopened]
+    types: [opened, synchronize, reopened, labeled, unlabeled]
 
 permissions: {}
 
@@ -77,7 +77,8 @@ jobs:
           restore-keys: |
             hbase-m2-
 
-      - name: Download Yetus
+      - name: Download Yetus (pinned release)
+        if: ${{ !contains(github.event.pull_request.labels.*.name, 
'test-yetus-prerelease') }}
         run: |
           mkdir -p yetus
           cd yetus
@@ -89,6 +90,38 @@ jobs:
           tar --strip-components=1 -xzf apache-yetus-${{ env.YETUS_VERSION 
}}-bin.tar.gz
           rm apache-yetus-${{ env.YETUS_VERSION }}-bin.tar.gz
 
+      - name: Set up JDK 21 (prerelease, build-only)
+        if: ${{ contains(github.event.pull_request.labels.*.name, 
'test-yetus-prerelease') }}
+        uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # 
v5.2.0
+        with:
+          java-version: '21'
+          distribution: 'temurin'
+
+      - name: Checkout apache/yetus@HEAD (prerelease)
+        if: ${{ contains(github.event.pull_request.labels.*.name, 
'test-yetus-prerelease') }}
+        uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # 
v6.0.2
+        with:
+          repository: apache/yetus
+          path: yetus-src
+          persist-credentials: false
+
+      - name: Build Yetus from source (prerelease)
+        if: ${{ contains(github.event.pull_request.labels.*.name, 
'test-yetus-prerelease') }}
+        run: |
+          set -euo pipefail
+          YETUS_SHA="$(git -C yetus-src rev-parse HEAD)"
+          {
+            echo "## Yetus prerelease build"
+            echo ""
+            echo "- Source: \`apache/yetus@${YETUS_SHA}\`"
+            echo "- Triggered by \`test-yetus-prerelease\` label on this PR"
+          } >> "${GITHUB_STEP_SUMMARY}"
+          (cd yetus-src && mvn -B -DskipTests install)
+          mkdir -p yetus
+          tar --strip-components=1 \
+            -xzf 
yetus-src/yetus-dist/target/artifacts/apache-yetus-*-bin.tar.gz \
+            -C yetus
+
       - name: Run Yetus JDK11 Hadoop3 Unit Check
         env:
           ARCHIVE_PATTERN_LIST: 
"TEST-*.xml,org.apache.h*.txt,*.dumpstream,*.dump"
diff --git a/.github/workflows/yetus-jdk17-hadoop3-compile-check.yml 
b/.github/workflows/yetus-jdk17-hadoop3-compile-check.yml
index 17abf8990d9..a28ff0192f5 100644
--- a/.github/workflows/yetus-jdk17-hadoop3-compile-check.yml
+++ b/.github/workflows/yetus-jdk17-hadoop3-compile-check.yml
@@ -21,7 +21,7 @@ name: Yetus JDK17 Hadoop3 Compile Check
 
 "on":
   pull_request:
-    types: [opened, synchronize, reopened]
+    types: [opened, synchronize, reopened, labeled, unlabeled]
 
 permissions:
   contents: read
@@ -57,7 +57,8 @@ jobs:
           restore-keys: |
             hbase-m2-
 
-      - name: Download Yetus
+      - name: Download Yetus (pinned release)
+        if: ${{ !contains(github.event.pull_request.labels.*.name, 
'test-yetus-prerelease') }}
         run: |
           mkdir -p yetus
           cd yetus
@@ -69,6 +70,38 @@ jobs:
           tar --strip-components=1 -xzf apache-yetus-${{ env.YETUS_VERSION 
}}-bin.tar.gz
           rm apache-yetus-${{ env.YETUS_VERSION }}-bin.tar.gz
 
+      - name: Set up JDK 21 (prerelease, build-only)
+        if: ${{ contains(github.event.pull_request.labels.*.name, 
'test-yetus-prerelease') }}
+        uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # 
v5.2.0
+        with:
+          java-version: '21'
+          distribution: 'temurin'
+
+      - name: Checkout apache/yetus@HEAD (prerelease)
+        if: ${{ contains(github.event.pull_request.labels.*.name, 
'test-yetus-prerelease') }}
+        uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # 
v6.0.2
+        with:
+          repository: apache/yetus
+          path: yetus-src
+          persist-credentials: false
+
+      - name: Build Yetus from source (prerelease)
+        if: ${{ contains(github.event.pull_request.labels.*.name, 
'test-yetus-prerelease') }}
+        run: |
+          set -euo pipefail
+          YETUS_SHA="$(git -C yetus-src rev-parse HEAD)"
+          {
+            echo "## Yetus prerelease build"
+            echo ""
+            echo "- Source: \`apache/yetus@${YETUS_SHA}\`"
+            echo "- Triggered by \`test-yetus-prerelease\` label on this PR"
+          } >> "${GITHUB_STEP_SUMMARY}"
+          (cd yetus-src && mvn -B -DskipTests install)
+          mkdir -p yetus
+          tar --strip-components=1 \
+            -xzf 
yetus-src/yetus-dist/target/artifacts/apache-yetus-*-bin.tar.gz \
+            -C yetus
+
       - name: Run Yetus JDK17 Hadoop3 Compile Check
         env:
           ARCHIVE_PATTERN_LIST: 
"TEST-*.xml,org.apache.h*.txt,*.dumpstream,*.dump"
diff --git a/.github/workflows/yetus-jdk17-hadoop3-unit-check.yml 
b/.github/workflows/yetus-jdk17-hadoop3-unit-check.yml
index 571b6155dc3..95502b1beb8 100644
--- a/.github/workflows/yetus-jdk17-hadoop3-unit-check.yml
+++ b/.github/workflows/yetus-jdk17-hadoop3-unit-check.yml
@@ -21,7 +21,7 @@ name: Yetus JDK17 Hadoop3 Unit Check
 
 "on":
   pull_request:
-    types: [opened, synchronize, reopened]
+    types: [opened, synchronize, reopened, labeled, unlabeled]
 
 permissions:
   contents: read
@@ -76,7 +76,8 @@ jobs:
           restore-keys: |
             hbase-m2-
 
-      - name: Download Yetus
+      - name: Download Yetus (pinned release)
+        if: ${{ !contains(github.event.pull_request.labels.*.name, 
'test-yetus-prerelease') }}
         run: |
           mkdir -p yetus
           cd yetus
@@ -88,6 +89,38 @@ jobs:
           tar --strip-components=1 -xzf apache-yetus-${{ env.YETUS_VERSION 
}}-bin.tar.gz
           rm apache-yetus-${{ env.YETUS_VERSION }}-bin.tar.gz
 
+      - name: Set up JDK 21 (prerelease, build-only)
+        if: ${{ contains(github.event.pull_request.labels.*.name, 
'test-yetus-prerelease') }}
+        uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # 
v5.2.0
+        with:
+          java-version: '21'
+          distribution: 'temurin'
+
+      - name: Checkout apache/yetus@HEAD (prerelease)
+        if: ${{ contains(github.event.pull_request.labels.*.name, 
'test-yetus-prerelease') }}
+        uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # 
v6.0.2
+        with:
+          repository: apache/yetus
+          path: yetus-src
+          persist-credentials: false
+
+      - name: Build Yetus from source (prerelease)
+        if: ${{ contains(github.event.pull_request.labels.*.name, 
'test-yetus-prerelease') }}
+        run: |
+          set -euo pipefail
+          YETUS_SHA="$(git -C yetus-src rev-parse HEAD)"
+          {
+            echo "## Yetus prerelease build"
+            echo ""
+            echo "- Source: \`apache/yetus@${YETUS_SHA}\`"
+            echo "- Triggered by \`test-yetus-prerelease\` label on this PR"
+          } >> "${GITHUB_STEP_SUMMARY}"
+          (cd yetus-src && mvn -B -DskipTests install)
+          mkdir -p yetus
+          tar --strip-components=1 \
+            -xzf 
yetus-src/yetus-dist/target/artifacts/apache-yetus-*-bin.tar.gz \
+            -C yetus
+
       - name: Run Yetus JDK17 Hadoop3 Unit Check
         env:
           ARCHIVE_PATTERN_LIST: 
"TEST-*.xml,org.apache.h*.txt,*.dumpstream,*.dump"
diff --git a/.github/workflows/yetus-jdk8-hadoop2-compile-check.yml 
b/.github/workflows/yetus-jdk8-hadoop2-compile-check.yml
index 26b27d85035..d7aa6dc5b93 100644
--- a/.github/workflows/yetus-jdk8-hadoop2-compile-check.yml
+++ b/.github/workflows/yetus-jdk8-hadoop2-compile-check.yml
@@ -21,7 +21,7 @@ name: Yetus JDK8 Hadoop2 Compile Check
 
 "on":
   pull_request:
-    types: [opened, synchronize, reopened]
+    types: [opened, synchronize, reopened, labeled, unlabeled]
 
 permissions: {}
 
@@ -58,7 +58,8 @@ jobs:
           restore-keys: |
             hbase-m2-
 
-      - name: Download Yetus
+      - name: Download Yetus (pinned release)
+        if: ${{ !contains(github.event.pull_request.labels.*.name, 
'test-yetus-prerelease') }}
         run: |
           mkdir -p yetus
           cd yetus
@@ -70,6 +71,38 @@ jobs:
           tar --strip-components=1 -xzf apache-yetus-${{ env.YETUS_VERSION 
}}-bin.tar.gz
           rm apache-yetus-${{ env.YETUS_VERSION }}-bin.tar.gz
 
+      - name: Set up JDK 21 (prerelease, build-only)
+        if: ${{ contains(github.event.pull_request.labels.*.name, 
'test-yetus-prerelease') }}
+        uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # 
v5.2.0
+        with:
+          java-version: '21'
+          distribution: 'temurin'
+
+      - name: Checkout apache/yetus@HEAD (prerelease)
+        if: ${{ contains(github.event.pull_request.labels.*.name, 
'test-yetus-prerelease') }}
+        uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # 
v6.0.2
+        with:
+          repository: apache/yetus
+          path: yetus-src
+          persist-credentials: false
+
+      - name: Build Yetus from source (prerelease)
+        if: ${{ contains(github.event.pull_request.labels.*.name, 
'test-yetus-prerelease') }}
+        run: |
+          set -euo pipefail
+          YETUS_SHA="$(git -C yetus-src rev-parse HEAD)"
+          {
+            echo "## Yetus prerelease build"
+            echo ""
+            echo "- Source: \`apache/yetus@${YETUS_SHA}\`"
+            echo "- Triggered by \`test-yetus-prerelease\` label on this PR"
+          } >> "${GITHUB_STEP_SUMMARY}"
+          (cd yetus-src && mvn -B -DskipTests install)
+          mkdir -p yetus
+          tar --strip-components=1 \
+            -xzf 
yetus-src/yetus-dist/target/artifacts/apache-yetus-*-bin.tar.gz \
+            -C yetus
+
       - name: Run Yetus JDK8 Hadoop2 Compile Check
         env:
           ARCHIVE_PATTERN_LIST: 
"TEST-*.xml,org.apache.h*.txt,*.dumpstream,*.dump"
diff --git a/.github/workflows/yetus-jdk8-hadoop2-unit-check.yml 
b/.github/workflows/yetus-jdk8-hadoop2-unit-check.yml
index 60f040480db..178f21b9827 100644
--- a/.github/workflows/yetus-jdk8-hadoop2-unit-check.yml
+++ b/.github/workflows/yetus-jdk8-hadoop2-unit-check.yml
@@ -21,7 +21,7 @@ name: Yetus JDK8 Hadoop2 Unit Check
 
 "on":
   pull_request:
-    types: [opened, synchronize, reopened]
+    types: [opened, synchronize, reopened, labeled, unlabeled]
 
 permissions: {}
 
@@ -77,7 +77,8 @@ jobs:
           restore-keys: |
             hbase-m2-
 
-      - name: Download Yetus
+      - name: Download Yetus (pinned release)
+        if: ${{ !contains(github.event.pull_request.labels.*.name, 
'test-yetus-prerelease') }}
         run: |
           mkdir -p yetus
           cd yetus
@@ -89,6 +90,38 @@ jobs:
           tar --strip-components=1 -xzf apache-yetus-${{ env.YETUS_VERSION 
}}-bin.tar.gz
           rm apache-yetus-${{ env.YETUS_VERSION }}-bin.tar.gz
 
+      - name: Set up JDK 21 (prerelease, build-only)
+        if: ${{ contains(github.event.pull_request.labels.*.name, 
'test-yetus-prerelease') }}
+        uses: actions/setup-java@be666c2fcd27ec809703dec50e508c2fdc7f6654 # 
v5.2.0
+        with:
+          java-version: '21'
+          distribution: 'temurin'
+
+      - name: Checkout apache/yetus@HEAD (prerelease)
+        if: ${{ contains(github.event.pull_request.labels.*.name, 
'test-yetus-prerelease') }}
+        uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # 
v6.0.2
+        with:
+          repository: apache/yetus
+          path: yetus-src
+          persist-credentials: false
+
+      - name: Build Yetus from source (prerelease)
+        if: ${{ contains(github.event.pull_request.labels.*.name, 
'test-yetus-prerelease') }}
+        run: |
+          set -euo pipefail
+          YETUS_SHA="$(git -C yetus-src rev-parse HEAD)"
+          {
+            echo "## Yetus prerelease build"
+            echo ""
+            echo "- Source: \`apache/yetus@${YETUS_SHA}\`"
+            echo "- Triggered by \`test-yetus-prerelease\` label on this PR"
+          } >> "${GITHUB_STEP_SUMMARY}"
+          (cd yetus-src && mvn -B -DskipTests install)
+          mkdir -p yetus
+          tar --strip-components=1 \
+            -xzf 
yetus-src/yetus-dist/target/artifacts/apache-yetus-*-bin.tar.gz \
+            -C yetus
+
       - name: Run Yetus JDK8 Hadoop2 Unit Check
         env:
           ARCHIVE_PATTERN_LIST: 
"TEST-*.xml,org.apache.h*.txt,*.dumpstream,*.dump"

Reply via email to