From ce9dce389aa5cd0b75a26deb9dc20e909251e608 Mon Sep 17 00:00:00 2001 From: Stuti Ravikiran Wali Date: Wed, 1 Apr 2026 15:46:11 +0530 Subject: [PATCH 01/12] Update pr-build.yaml --- .github/workflows/pr-build.yaml | 516 ++++++++++++++++++++++++++++++-- 1 file changed, 497 insertions(+), 19 deletions(-) diff --git a/.github/workflows/pr-build.yaml b/.github/workflows/pr-build.yaml index d392615213..d5aefd7314 100644 --- a/.github/workflows/pr-build.yaml +++ b/.github/workflows/pr-build.yaml @@ -1,3 +1,4 @@ + name: PR build on: @@ -27,13 +28,16 @@ run-name: > || github.event.pull_request.title }} jobs: - validate: + + build_info: runs-on: ${{ github.event_name == 'pull_request' && 'ubuntu-24.04-ppc64le-p10' || inputs.large-runner }} steps: - name: Checkout code (Pull Request) if: github.event_name == 'pull_request' uses: actions/checkout@v6 + with: + fetch-depth: 0 - name: Checkout code (Workflow Dispatch) if: github.event_name == 'workflow_dispatch' @@ -44,7 +48,7 @@ jobs: - name: Install required packages run: | sudo apt update -y - sudo apt-get install -y file + sudo apt-get install -y file jq - name: Install Python dependencies run: | @@ -59,23 +63,497 @@ jobs: python3 -u gha-script/validate_builds.py ${PR_NUMBER:-false} 2>&1 | tee build_log my_pid_status=${PIPESTATUS[0]} - build_size=$(stat -c %s build_log) - if [ "$my_pid_status" -ne 0 ]; then - echo "Script failed for PR #${PR_NUMBER}" - if [ "$build_size" -lt 1800000 ]; then - cat build_log - else - echo "Build log too large, showing last 100 lines" - tail -100 build_log - fi - exit 1 + echo "Script failed for PR #${PR_NUMBER}" + echo "::group::Validation Logs" + tail -200 build_log + echo "::endgroup::" + exit 1 + else + echo "Script completed successfully for PR #${PR_NUMBER}" + fi + + - name: Fetch base branch + run: git fetch origin ${{ github.base_ref }} --depth=1 + + - name: Locate and parse build_info.json + run: | + + CHANGED_FILES=$(git diff --name-only origin/${{ github.base_ref }}...HEAD) + + BUILD_INFO_FILE=$(echo "$CHANGED_FILES" | grep 'build_info.json' | head -n 1) + + if [ -z "$BUILD_INFO_FILE" ]; then + echo "No build_info.json modified, trying to detect from changed files..." + + PACKAGE_DIR=$(echo "$CHANGED_FILES" | head -n 1 | cut -d'/' -f1-2) + + BUILD_INFO_FILE="$PACKAGE_DIR/build_info.json" + + if [ ! -f "$BUILD_INFO_FILE" ]; then + echo "Could not locate build_info.json!" + exit 1 + fi + + echo "Using fallback build_info: $BUILD_INFO_FILE" + fi + + PACKAGE_NAME=$(jq -r '.package_name // ""' $BUILD_INFO_FILE) + VERSION=$(jq -r '.version // ""' $BUILD_INFO_FILE) + + echo "BUILD_INFO_FILE=$BUILD_INFO_FILE" >> $GITHUB_ENV + echo "PACKAGE_NAME=$PACKAGE_NAME" >> $GITHUB_ENV + echo "VERSION=$VERSION" >> $GITHUB_ENV + + - name: Read build_info.json + run: | + chmod +x ./gha-script/read_buildinfo.sh + bash ./gha-script/read_buildinfo.sh + + - name: Create scanner-env.sh + run: | + mkdir -p package-cache + + PACKAGE_DIR=$(jq -r '.package_dir // ""' $BUILD_INFO_FILE) + WHEEL_BUILD=$(jq -r '.wheel_build // "false"' $BUILD_INFO_FILE) + + # Robust docker_build extraction + if jq -e '.docker_build == true or .docker_build == "true"' "$BUILD_INFO_FILE" > /dev/null; then + DOCKER_BUILD="true" else - echo "Script completed successfully for PR #${PR_NUMBER}" - if [ "$build_size" -lt 1800000 ]; then - cat build_log - else - echo "Build log too large, showing last 100 lines" - tail -100 build_log - fi + DOCKER_BUILD="false" + fi + + cat < package-cache/scanner-env.sh + export PACKAGE_NAME=$PACKAGE_NAME + export VERSION=$VERSION + export PACKAGE_DIR=$PACKAGE_DIR + export WHEEL_BUILD=$WHEEL_BUILD + export BUILD_DOCKER=$DOCKER_BUILD + EOF + + mv variable.sh package-cache/ + + - name: Archive package cache + run: tar -czf package-cache.tar.gz package-cache/ + + - name: Upload package cache + uses: actions/upload-artifact@v6 + with: + name: package-cache + path: package-cache.tar.gz + + build: + needs: build_info + runs-on: ${{ github.event_name == 'pull_request' && 'ubuntu-24.04-ppc64le-p10' || inputs.large-runner }} + + steps: + - uses: actions/checkout@v6 + + - name: Download package-cache + uses: actions/download-artifact@v7 + with: + name: package-cache + + - name: Extract package cache + run: tar -xzf package-cache.tar.gz + + - name: Build Package + run: | + source package-cache/variable.sh + source package-cache/scanner-env.sh + + echo "------------------- variable.sh -----------------------------" + cat package-cache/variable.sh + echo "------------------- scanner-env.sh -----------------------------" + cat package-cache/scanner-env.sh + + chmod +x ./gha-script/build_package.sh + bash ./gha-script/build_package.sh + +# ===================== WHEEL JOBS ===================== + + + wheel_build_py39: + needs: build_info + if: ${{ success() }} + runs-on: ${{ github.event_name == 'pull_request' && 'ubuntu-24.04-ppc64le-p10' || inputs.large-runner }} + continue-on-error: true + env: + GHA_CURRENCY_SERVICE_ID_API_KEY: ${{ secrets.GHA_CURRENCY_SERVICE_ID_API_KEY }} + GHA_CURRENCY_SERVICE_ID: ${{ secrets.GHA_CURRENCY_SERVICE_ID }} + PYTHON_VERSION: "3.9" + + steps: + - name: Checkout code + uses: actions/checkout@v6 + with: + fetch-depth: 0 + + - name: Install system dependencies + run: | + sudo apt update -y + + - name: Download package-cache from previous step + uses: actions/download-artifact@v7 + with: + name: package-cache + + - name: Extract package cache + run: tar -xzf package-cache.tar.gz + + - name: Run build_wheels.sh + run: | + ls + echo "---------------------updated cache-----------------------" + ls package-cache + + chmod +x package-cache/variable.sh + chmod +x package-cache/scanner-env.sh + source package-cache/variable.sh + source package-cache/scanner-env.sh + + # CONTROL FLAG HERE + if [ "$WHEEL_BUILD" != "true" ]; then + echo "Skipping wheel build as WHEEL_BUILD=false" + exit 0 + fi + + chmod +x ./gha-script/build_wheels.sh + bash ./gha-script/build_wheels.sh + + echo "===========after execution ==================" + sudo apt update -y + sudo lsb_release -a 2>/dev/null || echo "lsb_release not available" + sudo uname -a + + + wheel_build_py310: + needs: build_info + if: ${{ success() }} + runs-on: ${{ github.event_name == 'pull_request' && 'ubuntu-24.04-ppc64le-p10' || inputs.large-runner }} + continue-on-error: false + env: + GHA_CURRENCY_SERVICE_ID_API_KEY: ${{ secrets.GHA_CURRENCY_SERVICE_ID_API_KEY }} + GHA_CURRENCY_SERVICE_ID: ${{ secrets.GHA_CURRENCY_SERVICE_ID }} + PYTHON_VERSION: "3.10" + + steps: + - name: Checkout code + uses: actions/checkout@v6 + with: + fetch-depth: 0 + + - name: Install system dependencies + run: | + sudo apt update -y + + - name: Download package-cache from previous step + uses: actions/download-artifact@v7 + with: + name: package-cache + + - name: Extract package cache + run: tar -xzf package-cache.tar.gz + + - name: Run build_wheels.sh + run: | + ls + echo "---------------------updated cache-----------------------" + ls package-cache + + chmod +x package-cache/variable.sh + chmod +x package-cache/scanner-env.sh + source package-cache/variable.sh + source package-cache/scanner-env.sh + + # CONTROL FLAG HERE + if [ "$WHEEL_BUILD" != "true" ]; then + echo "Skipping wheel build as WHEEL_BUILD=false" + exit 0 + fi + + chmod +x ./gha-script/build_wheels.sh + bash ./gha-script/build_wheels.sh + + echo "===========after execution ==================" + sudo apt update -y + sudo lsb_release -a 2>/dev/null || echo "lsb_release not available" + sudo uname -a + + + wheel_build_py311: + needs: build_info + if: ${{ success() }} + runs-on: ${{ github.event_name == 'pull_request' && 'ubuntu-24.04-ppc64le-p10' || inputs.large-runner }} + continue-on-error: false + env: + GHA_CURRENCY_SERVICE_ID_API_KEY: ${{ secrets.GHA_CURRENCY_SERVICE_ID_API_KEY }} + GHA_CURRENCY_SERVICE_ID: ${{ secrets.GHA_CURRENCY_SERVICE_ID }} + PYTHON_VERSION: "3.11" + + steps: + - name: Checkout code + uses: actions/checkout@v6 + with: + fetch-depth: 0 + + - name: Install system dependencies + run: | + sudo apt update -y + + - name: Download package-cache from previous step + uses: actions/download-artifact@v7 + with: + name: package-cache + + - name: Extract package cache + run: tar -xzf package-cache.tar.gz + + - name: Run build_wheels.sh + run: | + ls + echo "---------------------updated cache-----------------------" + ls package-cache + + chmod +x package-cache/variable.sh + chmod +x package-cache/scanner-env.sh + source package-cache/variable.sh + source package-cache/scanner-env.sh + + # CONTROL FLAG HERE + if [ "$WHEEL_BUILD" != "true" ]; then + echo "Skipping wheel build as WHEEL_BUILD=false" + exit 0 + fi + + chmod +x ./gha-script/build_wheels.sh + bash ./gha-script/build_wheels.sh + + echo "===========after execution ==================" + sudo apt update -y + sudo lsb_release -a 2>/dev/null || echo "lsb_release not available" + sudo uname -a + + + + wheel_build_py312: + needs: build_info + if: ${{ success() }} + runs-on: ${{ github.event_name == 'pull_request' && 'ubuntu-24.04-ppc64le-p10' || inputs.large-runner }} + continue-on-error: false + env: + GHA_CURRENCY_SERVICE_ID_API_KEY: ${{ secrets.GHA_CURRENCY_SERVICE_ID_API_KEY }} + GHA_CURRENCY_SERVICE_ID: ${{ secrets.GHA_CURRENCY_SERVICE_ID }} + PYTHON_VERSION: "3.12" + + steps: + - name: Checkout code + uses: actions/checkout@v6 + with: + fetch-depth: 0 + + - name: Install system dependencies + run: | + sudo apt update -y + + - name: Download package-cache from previous step + uses: actions/download-artifact@v7 + with: + name: package-cache + + - name: Extract package cache + run: tar -xzf package-cache.tar.gz + + - name: Run build_wheels.sh + run: | + ls + echo "---------------------updated cache-----------------------" + ls package-cache + + chmod +x package-cache/variable.sh + chmod +x package-cache/scanner-env.sh + source package-cache/variable.sh + source package-cache/scanner-env.sh + + # CONTROL FLAG HERE + if [ "$WHEEL_BUILD" != "true" ]; then + echo "Skipping wheel build as WHEEL_BUILD=false" + exit 0 fi + + chmod +x ./gha-script/build_wheels.sh + bash ./gha-script/build_wheels.sh + + echo "===========after execution ==================" + sudo apt update -y + sudo lsb_release -a 2>/dev/null || echo "lsb_release not available" + sudo uname -a + + wheel_build_py313: + needs: build_info + if: ${{ success() }} + runs-on: ${{ github.event_name == 'pull_request' && 'ubuntu-24.04-ppc64le-p10' || inputs.large-runner }} + continue-on-error: true + env: + GHA_CURRENCY_SERVICE_ID_API_KEY: ${{ secrets.GHA_CURRENCY_SERVICE_ID_API_KEY }} + GHA_CURRENCY_SERVICE_ID: ${{ secrets.GHA_CURRENCY_SERVICE_ID }} + PYTHON_VERSION: "3.13" + + steps: + - name: Checkout code + uses: actions/checkout@v6 + with: + fetch-depth: 0 + + - name: Install system dependencies + run: | + sudo apt update -y + + - name: Download package-cache from previous step + uses: actions/download-artifact@v7 + with: + name: package-cache + + - name: Extract package cache + run: tar -xzf package-cache.tar.gz + + - name: Run build_wheels.sh + run: | + ls + echo "---------------------updated cache-----------------------" + ls package-cache + + chmod +x package-cache/variable.sh + chmod +x package-cache/scanner-env.sh + source package-cache/variable.sh + source package-cache/scanner-env.sh + + # CONTROL FLAG HERE + if [ "$WHEEL_BUILD" != "true" ]; then + echo "Skipping wheel build as WHEEL_BUILD=false" + exit 0 + fi + + chmod +x ./gha-script/build_wheels.sh + bash ./gha-script/build_wheels.sh + + echo "===========after execution ==================" + sudo apt update -y + sudo lsb_release -a 2>/dev/null || echo "lsb_release not available" + sudo uname -a + + + + wheel_build_py314: + needs: build_info + if: ${{ success() }} + runs-on: ${{ github.event_name == 'pull_request' && 'ubuntu-24.04-ppc64le-p10' || inputs.large-runner }} + continue-on-error: true + env: + GHA_CURRENCY_SERVICE_ID_API_KEY: ${{ secrets.GHA_CURRENCY_SERVICE_ID_API_KEY }} + GHA_CURRENCY_SERVICE_ID: ${{ secrets.GHA_CURRENCY_SERVICE_ID }} + PYTHON_VERSION: "3.14" + + steps: + - name: Checkout code + uses: actions/checkout@v6 + with: + fetch-depth: 0 + + - name: Install system dependencies + run: | + sudo apt update -y + + - name: Download package-cache from previous step + uses: actions/download-artifact@v7 + with: + name: package-cache + + - name: Extract package cache + run: tar -xzf package-cache.tar.gz + + - name: Run build_wheels.sh + run: | + ls + echo "---------------------updated cache-----------------------" + ls package-cache + + chmod +x package-cache/variable.sh + chmod +x package-cache/scanner-env.sh + source package-cache/variable.sh + source package-cache/scanner-env.sh + + # CONTROL FLAG HERE + if [ "$WHEEL_BUILD" != "true" ]; then + echo "Skipping wheel build as WHEEL_BUILD=false" + exit 0 + fi + + chmod +x ./gha-script/build_wheels.sh + bash ./gha-script/build_wheels.sh + + echo "===========after execution ==================" + sudo apt update -y + sudo lsb_release -a 2>/dev/null || echo "lsb_release not available" + sudo uname -a + + + + build_docker: + needs: build_info + if: ${{ success() }} + runs-on: ${{ github.event_name == 'pull_request' && 'ubuntu-24.04-ppc64le-p10' || inputs.large-runner }} + + steps: + - name: Checkout code + uses: actions/checkout@v6 + + - name: Download package-cache + uses: actions/download-artifact@v7 + with: + name: package-cache + + - name: Extract package cache + run: tar -xzf package-cache.tar.gz + + - name: Build Docker Image + run: | + echo "===== Sourcing environment =====" + ls package-cache + + chmod +x package-cache/variable.sh + chmod +x package-cache/scanner-env.sh + source package-cache/variable.sh + source package-cache/scanner-env.sh + + BUILD_DOCKER=$(echo "$BUILD_DOCKER" | tr -d '[:space:]' | tr '[:upper:]' '[:lower:]') + + if [[ "$BUILD_DOCKER" != "true" ]]; then + echo "Skipping Docker build as BUILD_DOCKER=$BUILD_DOCKER" + exit 0 + fi + + echo "===== Starting Docker build =====" + chmod +x ./gha-script/build_docker.sh + bash ./gha-script/build_docker.sh + + echo "===== Docker images after build =====" + docker images + + echo "===== Saving Docker image =====" + docker save -o package-cache/image.tar "$IMAGE_NAME" + + ls -lh package-cache/image.tar + + + + + + + + + + + + From be4d9cf6ea1b575b0bd0906e5717983cbfe32f7c Mon Sep 17 00:00:00 2001 From: Stuti Ravikiran Wali Date: Wed, 1 Apr 2026 15:52:02 +0530 Subject: [PATCH 02/12] Update pr-build.yaml --- .github/workflows/pr-build.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/pr-build.yaml b/.github/workflows/pr-build.yaml index d5aefd7314..eedc8f57e5 100644 --- a/.github/workflows/pr-build.yaml +++ b/.github/workflows/pr-build.yaml @@ -37,6 +37,8 @@ jobs: if: github.event_name == 'pull_request' uses: actions/checkout@v6 with: + repository: ${{ github.event.pull_request.head.repo.full_name }} + ref: ${{ github.event.pull_request.head.ref }} fetch-depth: 0 - name: Checkout code (Workflow Dispatch) From 493b0bd4fd6f4393068f16408fb071c110b0dfb5 Mon Sep 17 00:00:00 2001 From: Stuti Ravikiran Wali Date: Wed, 1 Apr 2026 16:03:46 +0530 Subject: [PATCH 03/12] Update pr-build.yaml --- .github/workflows/pr-build.yaml | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/.github/workflows/pr-build.yaml b/.github/workflows/pr-build.yaml index eedc8f57e5..c2015f8b36 100644 --- a/.github/workflows/pr-build.yaml +++ b/.github/workflows/pr-build.yaml @@ -444,10 +444,9 @@ jobs: sudo apt update -y sudo lsb_release -a 2>/dev/null || echo "lsb_release not available" sudo uname -a - - - - wheel_build_py314: + + + wheel_build_py314: needs: build_info if: ${{ success() }} runs-on: ${{ github.event_name == 'pull_request' && 'ubuntu-24.04-ppc64le-p10' || inputs.large-runner }} From edb8e0e9ced9df0828f1c419471083c4e4aa7e60 Mon Sep 17 00:00:00 2001 From: Stuti Ravikiran Wali Date: Wed, 1 Apr 2026 16:19:05 +0530 Subject: [PATCH 04/12] Update pr-build.yaml --- .github/workflows/pr-build.yaml | 133 -------------------------------- 1 file changed, 133 deletions(-) diff --git a/.github/workflows/pr-build.yaml b/.github/workflows/pr-build.yaml index c2015f8b36..6d356cac10 100644 --- a/.github/workflows/pr-build.yaml +++ b/.github/workflows/pr-build.yaml @@ -26,7 +26,6 @@ run-name: > ${{ github.event_name == 'workflow_dispatch' && format('Retriggered build on {0} for PR {1}', inputs.large-runner, inputs.pr_number) || github.event.pull_request.title }} - jobs: build_info: @@ -51,12 +50,10 @@ jobs: run: | sudo apt update -y sudo apt-get install -y file jq - - name: Install Python dependencies run: | pip3 install --force-reinstall -v "requests==2.31.0" pip3 install --upgrade docker - - name: Set PR number run: echo "PR_NUMBER=${{ github.event.pull_request.number || inputs.pr_number }}" >> $GITHUB_ENV @@ -64,7 +61,6 @@ jobs: run: | python3 -u gha-script/validate_builds.py ${PR_NUMBER:-false} 2>&1 | tee build_log my_pid_status=${PIPESTATUS[0]} - if [ "$my_pid_status" -ne 0 ]; then echo "Script failed for PR #${PR_NUMBER}" echo "::group::Validation Logs" @@ -74,58 +70,43 @@ jobs: else echo "Script completed successfully for PR #${PR_NUMBER}" fi - - name: Fetch base branch run: git fetch origin ${{ github.base_ref }} --depth=1 - name: Locate and parse build_info.json run: | - CHANGED_FILES=$(git diff --name-only origin/${{ github.base_ref }}...HEAD) - BUILD_INFO_FILE=$(echo "$CHANGED_FILES" | grep 'build_info.json' | head -n 1) - if [ -z "$BUILD_INFO_FILE" ]; then echo "No build_info.json modified, trying to detect from changed files..." - PACKAGE_DIR=$(echo "$CHANGED_FILES" | head -n 1 | cut -d'/' -f1-2) - BUILD_INFO_FILE="$PACKAGE_DIR/build_info.json" - if [ ! -f "$BUILD_INFO_FILE" ]; then echo "Could not locate build_info.json!" exit 1 fi - echo "Using fallback build_info: $BUILD_INFO_FILE" fi - PACKAGE_NAME=$(jq -r '.package_name // ""' $BUILD_INFO_FILE) VERSION=$(jq -r '.version // ""' $BUILD_INFO_FILE) - echo "BUILD_INFO_FILE=$BUILD_INFO_FILE" >> $GITHUB_ENV echo "PACKAGE_NAME=$PACKAGE_NAME" >> $GITHUB_ENV echo "VERSION=$VERSION" >> $GITHUB_ENV - - name: Read build_info.json run: | chmod +x ./gha-script/read_buildinfo.sh bash ./gha-script/read_buildinfo.sh - - name: Create scanner-env.sh run: | mkdir -p package-cache - PACKAGE_DIR=$(jq -r '.package_dir // ""' $BUILD_INFO_FILE) WHEEL_BUILD=$(jq -r '.wheel_build // "false"' $BUILD_INFO_FILE) - # Robust docker_build extraction if jq -e '.docker_build == true or .docker_build == "true"' "$BUILD_INFO_FILE" > /dev/null; then DOCKER_BUILD="true" else DOCKER_BUILD="false" fi - cat < package-cache/scanner-env.sh export PACKAGE_NAME=$PACKAGE_NAME export VERSION=$VERSION @@ -133,9 +114,7 @@ jobs: export WHEEL_BUILD=$WHEEL_BUILD export BUILD_DOCKER=$DOCKER_BUILD EOF - mv variable.sh package-cache/ - - name: Archive package cache run: tar -czf package-cache.tar.gz package-cache/ @@ -164,15 +143,12 @@ jobs: run: | source package-cache/variable.sh source package-cache/scanner-env.sh - echo "------------------- variable.sh -----------------------------" cat package-cache/variable.sh echo "------------------- scanner-env.sh -----------------------------" cat package-cache/scanner-env.sh - chmod +x ./gha-script/build_package.sh bash ./gha-script/build_package.sh - # ===================== WHEEL JOBS ===================== @@ -195,7 +171,6 @@ jobs: - name: Install system dependencies run: | sudo apt update -y - - name: Download package-cache from previous step uses: actions/download-artifact@v7 with: @@ -209,27 +184,21 @@ jobs: ls echo "---------------------updated cache-----------------------" ls package-cache - chmod +x package-cache/variable.sh chmod +x package-cache/scanner-env.sh source package-cache/variable.sh source package-cache/scanner-env.sh - # CONTROL FLAG HERE if [ "$WHEEL_BUILD" != "true" ]; then echo "Skipping wheel build as WHEEL_BUILD=false" exit 0 fi - chmod +x ./gha-script/build_wheels.sh bash ./gha-script/build_wheels.sh - echo "===========after execution ==================" sudo apt update -y sudo lsb_release -a 2>/dev/null || echo "lsb_release not available" sudo uname -a - - wheel_build_py310: needs: build_info if: ${{ success() }} @@ -249,7 +218,6 @@ jobs: - name: Install system dependencies run: | sudo apt update -y - - name: Download package-cache from previous step uses: actions/download-artifact@v7 with: @@ -263,27 +231,21 @@ jobs: ls echo "---------------------updated cache-----------------------" ls package-cache - chmod +x package-cache/variable.sh chmod +x package-cache/scanner-env.sh source package-cache/variable.sh source package-cache/scanner-env.sh - # CONTROL FLAG HERE if [ "$WHEEL_BUILD" != "true" ]; then echo "Skipping wheel build as WHEEL_BUILD=false" exit 0 fi - chmod +x ./gha-script/build_wheels.sh bash ./gha-script/build_wheels.sh - echo "===========after execution ==================" sudo apt update -y sudo lsb_release -a 2>/dev/null || echo "lsb_release not available" sudo uname -a - - wheel_build_py311: needs: build_info if: ${{ success() }} @@ -303,7 +265,6 @@ jobs: - name: Install system dependencies run: | sudo apt update -y - - name: Download package-cache from previous step uses: actions/download-artifact@v7 with: @@ -317,28 +278,21 @@ jobs: ls echo "---------------------updated cache-----------------------" ls package-cache - chmod +x package-cache/variable.sh chmod +x package-cache/scanner-env.sh source package-cache/variable.sh source package-cache/scanner-env.sh - # CONTROL FLAG HERE if [ "$WHEEL_BUILD" != "true" ]; then echo "Skipping wheel build as WHEEL_BUILD=false" exit 0 fi - chmod +x ./gha-script/build_wheels.sh bash ./gha-script/build_wheels.sh - echo "===========after execution ==================" sudo apt update -y sudo lsb_release -a 2>/dev/null || echo "lsb_release not available" sudo uname -a - - - wheel_build_py312: needs: build_info if: ${{ success() }} @@ -358,7 +312,6 @@ jobs: - name: Install system dependencies run: | sudo apt update -y - - name: Download package-cache from previous step uses: actions/download-artifact@v7 with: @@ -372,26 +325,21 @@ jobs: ls echo "---------------------updated cache-----------------------" ls package-cache - chmod +x package-cache/variable.sh chmod +x package-cache/scanner-env.sh source package-cache/variable.sh source package-cache/scanner-env.sh - # CONTROL FLAG HERE if [ "$WHEEL_BUILD" != "true" ]; then echo "Skipping wheel build as WHEEL_BUILD=false" exit 0 fi - chmod +x ./gha-script/build_wheels.sh bash ./gha-script/build_wheels.sh - echo "===========after execution ==================" sudo apt update -y sudo lsb_release -a 2>/dev/null || echo "lsb_release not available" sudo uname -a - wheel_build_py313: needs: build_info if: ${{ success() }} @@ -411,7 +359,6 @@ jobs: - name: Install system dependencies run: | sudo apt update -y - - name: Download package-cache from previous step uses: actions/download-artifact@v7 with: @@ -425,82 +372,21 @@ jobs: ls echo "---------------------updated cache-----------------------" ls package-cache - chmod +x package-cache/variable.sh chmod +x package-cache/scanner-env.sh source package-cache/variable.sh source package-cache/scanner-env.sh - # CONTROL FLAG HERE if [ "$WHEEL_BUILD" != "true" ]; then echo "Skipping wheel build as WHEEL_BUILD=false" exit 0 fi - chmod +x ./gha-script/build_wheels.sh bash ./gha-script/build_wheels.sh - echo "===========after execution ==================" sudo apt update -y sudo lsb_release -a 2>/dev/null || echo "lsb_release not available" sudo uname -a - - - wheel_build_py314: - needs: build_info - if: ${{ success() }} - runs-on: ${{ github.event_name == 'pull_request' && 'ubuntu-24.04-ppc64le-p10' || inputs.large-runner }} - continue-on-error: true - env: - GHA_CURRENCY_SERVICE_ID_API_KEY: ${{ secrets.GHA_CURRENCY_SERVICE_ID_API_KEY }} - GHA_CURRENCY_SERVICE_ID: ${{ secrets.GHA_CURRENCY_SERVICE_ID }} - PYTHON_VERSION: "3.14" - - steps: - - name: Checkout code - uses: actions/checkout@v6 - with: - fetch-depth: 0 - - - name: Install system dependencies - run: | - sudo apt update -y - - - name: Download package-cache from previous step - uses: actions/download-artifact@v7 - with: - name: package-cache - - - name: Extract package cache - run: tar -xzf package-cache.tar.gz - - - name: Run build_wheels.sh - run: | - ls - echo "---------------------updated cache-----------------------" - ls package-cache - - chmod +x package-cache/variable.sh - chmod +x package-cache/scanner-env.sh - source package-cache/variable.sh - source package-cache/scanner-env.sh - - # CONTROL FLAG HERE - if [ "$WHEEL_BUILD" != "true" ]; then - echo "Skipping wheel build as WHEEL_BUILD=false" - exit 0 - fi - - chmod +x ./gha-script/build_wheels.sh - bash ./gha-script/build_wheels.sh - - echo "===========after execution ==================" - sudo apt update -y - sudo lsb_release -a 2>/dev/null || echo "lsb_release not available" - sudo uname -a - - - build_docker: needs: build_info if: ${{ success() }} @@ -522,39 +408,20 @@ jobs: run: | echo "===== Sourcing environment =====" ls package-cache - chmod +x package-cache/variable.sh chmod +x package-cache/scanner-env.sh source package-cache/variable.sh source package-cache/scanner-env.sh - BUILD_DOCKER=$(echo "$BUILD_DOCKER" | tr -d '[:space:]' | tr '[:upper:]' '[:lower:]') - if [[ "$BUILD_DOCKER" != "true" ]]; then echo "Skipping Docker build as BUILD_DOCKER=$BUILD_DOCKER" exit 0 fi - echo "===== Starting Docker build =====" chmod +x ./gha-script/build_docker.sh bash ./gha-script/build_docker.sh - echo "===== Docker images after build =====" docker images - echo "===== Saving Docker image =====" docker save -o package-cache/image.tar "$IMAGE_NAME" - ls -lh package-cache/image.tar - - - - - - - - - - - - From ccb5710ee8b1027ce9f5005beac4d8d961905157 Mon Sep 17 00:00:00 2001 From: Stuti Ravikiran Wali Date: Wed, 1 Apr 2026 16:22:49 +0530 Subject: [PATCH 05/12] Update validate_builds.py --- gha-script/validate_builds.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gha-script/validate_builds.py b/gha-script/validate_builds.py index 7677b679e3..3a9ac93daa 100644 --- a/gha-script/validate_builds.py +++ b/gha-script/validate_builds.py @@ -12,7 +12,7 @@ GITHUB_BUILD_SCRIPT_BASE_REPO = "build-scripts" -GITHUB_BUILD_SCRIPT_BASE_OWNER = "ppc64le" +GITHUB_BUILD_SCRIPT_BASE_OWNER = "stutiibm" HOME = os.getcwd() package_data = {} From 276e8035b5f08f7d65dbfb455182955ddd14ecd2 Mon Sep 17 00:00:00 2001 From: Stuti Ravikiran Wali Date: Wed, 1 Apr 2026 16:24:19 +0530 Subject: [PATCH 06/12] Update pr-build.yaml --- .github/workflows/pr-build.yaml | 132 ++++++++++++++++++++++++++++++++ 1 file changed, 132 insertions(+) diff --git a/.github/workflows/pr-build.yaml b/.github/workflows/pr-build.yaml index 6d356cac10..3830ac5bf3 100644 --- a/.github/workflows/pr-build.yaml +++ b/.github/workflows/pr-build.yaml @@ -26,6 +26,7 @@ run-name: > ${{ github.event_name == 'workflow_dispatch' && format('Retriggered build on {0} for PR {1}', inputs.large-runner, inputs.pr_number) || github.event.pull_request.title }} + jobs: build_info: @@ -50,10 +51,12 @@ jobs: run: | sudo apt update -y sudo apt-get install -y file jq + - name: Install Python dependencies run: | pip3 install --force-reinstall -v "requests==2.31.0" pip3 install --upgrade docker + - name: Set PR number run: echo "PR_NUMBER=${{ github.event.pull_request.number || inputs.pr_number }}" >> $GITHUB_ENV @@ -61,6 +64,7 @@ jobs: run: | python3 -u gha-script/validate_builds.py ${PR_NUMBER:-false} 2>&1 | tee build_log my_pid_status=${PIPESTATUS[0]} + if [ "$my_pid_status" -ne 0 ]; then echo "Script failed for PR #${PR_NUMBER}" echo "::group::Validation Logs" @@ -70,43 +74,58 @@ jobs: else echo "Script completed successfully for PR #${PR_NUMBER}" fi + - name: Fetch base branch run: git fetch origin ${{ github.base_ref }} --depth=1 - name: Locate and parse build_info.json run: | + CHANGED_FILES=$(git diff --name-only origin/${{ github.base_ref }}...HEAD) + BUILD_INFO_FILE=$(echo "$CHANGED_FILES" | grep 'build_info.json' | head -n 1) + if [ -z "$BUILD_INFO_FILE" ]; then echo "No build_info.json modified, trying to detect from changed files..." + PACKAGE_DIR=$(echo "$CHANGED_FILES" | head -n 1 | cut -d'/' -f1-2) + BUILD_INFO_FILE="$PACKAGE_DIR/build_info.json" + if [ ! -f "$BUILD_INFO_FILE" ]; then echo "Could not locate build_info.json!" exit 1 fi + echo "Using fallback build_info: $BUILD_INFO_FILE" fi + PACKAGE_NAME=$(jq -r '.package_name // ""' $BUILD_INFO_FILE) VERSION=$(jq -r '.version // ""' $BUILD_INFO_FILE) + echo "BUILD_INFO_FILE=$BUILD_INFO_FILE" >> $GITHUB_ENV echo "PACKAGE_NAME=$PACKAGE_NAME" >> $GITHUB_ENV echo "VERSION=$VERSION" >> $GITHUB_ENV + - name: Read build_info.json run: | chmod +x ./gha-script/read_buildinfo.sh bash ./gha-script/read_buildinfo.sh + - name: Create scanner-env.sh run: | mkdir -p package-cache + PACKAGE_DIR=$(jq -r '.package_dir // ""' $BUILD_INFO_FILE) WHEEL_BUILD=$(jq -r '.wheel_build // "false"' $BUILD_INFO_FILE) + # Robust docker_build extraction if jq -e '.docker_build == true or .docker_build == "true"' "$BUILD_INFO_FILE" > /dev/null; then DOCKER_BUILD="true" else DOCKER_BUILD="false" fi + cat < package-cache/scanner-env.sh export PACKAGE_NAME=$PACKAGE_NAME export VERSION=$VERSION @@ -114,7 +133,9 @@ jobs: export WHEEL_BUILD=$WHEEL_BUILD export BUILD_DOCKER=$DOCKER_BUILD EOF + mv variable.sh package-cache/ + - name: Archive package cache run: tar -czf package-cache.tar.gz package-cache/ @@ -143,12 +164,15 @@ jobs: run: | source package-cache/variable.sh source package-cache/scanner-env.sh + echo "------------------- variable.sh -----------------------------" cat package-cache/variable.sh echo "------------------- scanner-env.sh -----------------------------" cat package-cache/scanner-env.sh + chmod +x ./gha-script/build_package.sh bash ./gha-script/build_package.sh + # ===================== WHEEL JOBS ===================== @@ -171,6 +195,7 @@ jobs: - name: Install system dependencies run: | sudo apt update -y + - name: Download package-cache from previous step uses: actions/download-artifact@v7 with: @@ -184,21 +209,27 @@ jobs: ls echo "---------------------updated cache-----------------------" ls package-cache + chmod +x package-cache/variable.sh chmod +x package-cache/scanner-env.sh source package-cache/variable.sh source package-cache/scanner-env.sh + # CONTROL FLAG HERE if [ "$WHEEL_BUILD" != "true" ]; then echo "Skipping wheel build as WHEEL_BUILD=false" exit 0 fi + chmod +x ./gha-script/build_wheels.sh bash ./gha-script/build_wheels.sh + echo "===========after execution ==================" sudo apt update -y sudo lsb_release -a 2>/dev/null || echo "lsb_release not available" sudo uname -a + + wheel_build_py310: needs: build_info if: ${{ success() }} @@ -218,6 +249,7 @@ jobs: - name: Install system dependencies run: | sudo apt update -y + - name: Download package-cache from previous step uses: actions/download-artifact@v7 with: @@ -231,21 +263,27 @@ jobs: ls echo "---------------------updated cache-----------------------" ls package-cache + chmod +x package-cache/variable.sh chmod +x package-cache/scanner-env.sh source package-cache/variable.sh source package-cache/scanner-env.sh + # CONTROL FLAG HERE if [ "$WHEEL_BUILD" != "true" ]; then echo "Skipping wheel build as WHEEL_BUILD=false" exit 0 fi + chmod +x ./gha-script/build_wheels.sh bash ./gha-script/build_wheels.sh + echo "===========after execution ==================" sudo apt update -y sudo lsb_release -a 2>/dev/null || echo "lsb_release not available" sudo uname -a + + wheel_build_py311: needs: build_info if: ${{ success() }} @@ -265,6 +303,7 @@ jobs: - name: Install system dependencies run: | sudo apt update -y + - name: Download package-cache from previous step uses: actions/download-artifact@v7 with: @@ -278,21 +317,28 @@ jobs: ls echo "---------------------updated cache-----------------------" ls package-cache + chmod +x package-cache/variable.sh chmod +x package-cache/scanner-env.sh source package-cache/variable.sh source package-cache/scanner-env.sh + # CONTROL FLAG HERE if [ "$WHEEL_BUILD" != "true" ]; then echo "Skipping wheel build as WHEEL_BUILD=false" exit 0 fi + chmod +x ./gha-script/build_wheels.sh bash ./gha-script/build_wheels.sh + echo "===========after execution ==================" sudo apt update -y sudo lsb_release -a 2>/dev/null || echo "lsb_release not available" sudo uname -a + + + wheel_build_py312: needs: build_info if: ${{ success() }} @@ -312,6 +358,7 @@ jobs: - name: Install system dependencies run: | sudo apt update -y + - name: Download package-cache from previous step uses: actions/download-artifact@v7 with: @@ -325,21 +372,26 @@ jobs: ls echo "---------------------updated cache-----------------------" ls package-cache + chmod +x package-cache/variable.sh chmod +x package-cache/scanner-env.sh source package-cache/variable.sh source package-cache/scanner-env.sh + # CONTROL FLAG HERE if [ "$WHEEL_BUILD" != "true" ]; then echo "Skipping wheel build as WHEEL_BUILD=false" exit 0 fi + chmod +x ./gha-script/build_wheels.sh bash ./gha-script/build_wheels.sh + echo "===========after execution ==================" sudo apt update -y sudo lsb_release -a 2>/dev/null || echo "lsb_release not available" sudo uname -a + wheel_build_py313: needs: build_info if: ${{ success() }} @@ -359,6 +411,7 @@ jobs: - name: Install system dependencies run: | sudo apt update -y + - name: Download package-cache from previous step uses: actions/download-artifact@v7 with: @@ -372,21 +425,81 @@ jobs: ls echo "---------------------updated cache-----------------------" ls package-cache + chmod +x package-cache/variable.sh chmod +x package-cache/scanner-env.sh source package-cache/variable.sh source package-cache/scanner-env.sh + # CONTROL FLAG HERE if [ "$WHEEL_BUILD" != "true" ]; then echo "Skipping wheel build as WHEEL_BUILD=false" exit 0 fi + chmod +x ./gha-script/build_wheels.sh bash ./gha-script/build_wheels.sh + echo "===========after execution ==================" sudo apt update -y sudo lsb_release -a 2>/dev/null || echo "lsb_release not available" sudo uname -a + + wheel_build_py314: + needs: build_info + if: ${{ success() }} + runs-on: ${{ github.event_name == 'pull_request' && 'ubuntu-24.04-ppc64le-p10' || inputs.large-runner }} + continue-on-error: true + env: + GHA_CURRENCY_SERVICE_ID_API_KEY: ${{ secrets.GHA_CURRENCY_SERVICE_ID_API_KEY }} + GHA_CURRENCY_SERVICE_ID: ${{ secrets.GHA_CURRENCY_SERVICE_ID }} + PYTHON_VERSION: "3.14" + + steps: + - name: Checkout code + uses: actions/checkout@v6 + with: + fetch-depth: 0 + + - name: Install system dependencies + run: | + sudo apt update -y + + - name: Download package-cache from previous step + uses: actions/download-artifact@v7 + with: + name: package-cache + + - name: Extract package cache + run: tar -xzf package-cache.tar.gz + + - name: Run build_wheels.sh + run: | + ls + echo "---------------------updated cache-----------------------" + ls package-cache + + chmod +x package-cache/variable.sh + chmod +x package-cache/scanner-env.sh + source package-cache/variable.sh + source package-cache/scanner-env.sh + + # CONTROL FLAG HERE + if [ "$WHEEL_BUILD" != "true" ]; then + echo "Skipping wheel build as WHEEL_BUILD=false" + exit 0 + fi + + chmod +x ./gha-script/build_wheels.sh + bash ./gha-script/build_wheels.sh + + echo "===========after execution ==================" + sudo apt update -y + sudo lsb_release -a 2>/dev/null || echo "lsb_release not available" + sudo uname -a + + + build_docker: needs: build_info if: ${{ success() }} @@ -408,20 +521,39 @@ jobs: run: | echo "===== Sourcing environment =====" ls package-cache + chmod +x package-cache/variable.sh chmod +x package-cache/scanner-env.sh source package-cache/variable.sh source package-cache/scanner-env.sh + BUILD_DOCKER=$(echo "$BUILD_DOCKER" | tr -d '[:space:]' | tr '[:upper:]' '[:lower:]') + if [[ "$BUILD_DOCKER" != "true" ]]; then echo "Skipping Docker build as BUILD_DOCKER=$BUILD_DOCKER" exit 0 fi + echo "===== Starting Docker build =====" chmod +x ./gha-script/build_docker.sh bash ./gha-script/build_docker.sh + echo "===== Docker images after build =====" docker images + echo "===== Saving Docker image =====" docker save -o package-cache/image.tar "$IMAGE_NAME" + ls -lh package-cache/image.tar + + + + + + + + + + + + From 8a51324e724426637b46a90ec01765b51f25aa57 Mon Sep 17 00:00:00 2001 From: Stuti Ravikiran Wali Date: Wed, 1 Apr 2026 18:41:10 +0530 Subject: [PATCH 07/12] Update pr-build.yaml --- .github/workflows/pr-build.yaml | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/.github/workflows/pr-build.yaml b/.github/workflows/pr-build.yaml index 3830ac5bf3..21c2d37b20 100644 --- a/.github/workflows/pr-build.yaml +++ b/.github/workflows/pr-build.yaml @@ -529,11 +529,23 @@ jobs: BUILD_DOCKER=$(echo "$BUILD_DOCKER" | tr -d '[:space:]' | tr '[:upper:]' '[:lower:]') + # Get changed files + git fetch origin ${{ github.base_ref }} --depth=1 + CHANGED_FILES=$(git diff --name-only origin/${{ github.base_ref }}...HEAD) + + # Check if any Dockerfile is modified + DOCKERFILE_CHANGED=$(echo "$CHANGED_FILES" | grep -i 'Dockerfile' || true) + if [[ "$BUILD_DOCKER" != "true" ]]; then echo "Skipping Docker build as BUILD_DOCKER=$BUILD_DOCKER" exit 0 fi + if [[ -z "$DOCKERFILE_CHANGED" ]]; then + echo "Skipping Docker build as no Dockerfile changes detected in PR" + exit 0 + fi + echo "===== Starting Docker build =====" chmod +x ./gha-script/build_docker.sh bash ./gha-script/build_docker.sh From 195237047dc96c10967fc276973c53c90f2d1ccf Mon Sep 17 00:00:00 2001 From: Stuti Ravikiran Wali Date: Wed, 1 Apr 2026 19:06:46 +0530 Subject: [PATCH 08/12] Update pr-build.yaml --- .github/workflows/pr-build.yaml | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/.github/workflows/pr-build.yaml b/.github/workflows/pr-build.yaml index 21c2d37b20..efb52a7ad6 100644 --- a/.github/workflows/pr-build.yaml +++ b/.github/workflows/pr-build.yaml @@ -106,6 +106,9 @@ jobs: echo "BUILD_INFO_FILE=$BUILD_INFO_FILE" >> $GITHUB_ENV echo "PACKAGE_NAME=$PACKAGE_NAME" >> $GITHUB_ENV echo "VERSION=$VERSION" >> $GITHUB_ENV + echo "CHANGED_FILES<> $GITHUB_ENV + echo "$CHANGED_FILES" >> $GITHUB_ENV + echo "EOF" >> $GITHUB_ENV - name: Read build_info.json run: | @@ -132,6 +135,7 @@ jobs: export PACKAGE_DIR=$PACKAGE_DIR export WHEEL_BUILD=$WHEEL_BUILD export BUILD_DOCKER=$DOCKER_BUILD + export CHANGED_FILES="$CHANGED_FILES" EOF mv variable.sh package-cache/ @@ -528,12 +532,6 @@ jobs: source package-cache/scanner-env.sh BUILD_DOCKER=$(echo "$BUILD_DOCKER" | tr -d '[:space:]' | tr '[:upper:]' '[:lower:]') - - # Get changed files - git fetch origin ${{ github.base_ref }} --depth=1 - CHANGED_FILES=$(git diff --name-only origin/${{ github.base_ref }}...HEAD) - - # Check if any Dockerfile is modified DOCKERFILE_CHANGED=$(echo "$CHANGED_FILES" | grep -i 'Dockerfile' || true) if [[ "$BUILD_DOCKER" != "true" ]]; then From df015022f55d4bee7015c3333652f2a3b7f854ca Mon Sep 17 00:00:00 2001 From: Stuti Ravikiran Wali Date: Thu, 2 Apr 2026 19:47:12 +0530 Subject: [PATCH 09/12] Update pr-build.yaml --- .github/workflows/pr-build.yaml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/.github/workflows/pr-build.yaml b/.github/workflows/pr-build.yaml index efb52a7ad6..71798d3ff0 100644 --- a/.github/workflows/pr-build.yaml +++ b/.github/workflows/pr-build.yaml @@ -225,6 +225,14 @@ jobs: exit 0 fi + # Check if any .sh build script is modified in this package + BUILD_SCRIPT_CHANGED=$(echo "$CHANGED_FILES" | grep -E "^$PACKAGE_DIR/.*\.sh$" || true) + + if [[ -z "$BUILD_SCRIPT_CHANGED" ]]; then + echo "Skipping wheel build as no .sh build script changes detected" + exit 0 + fi + chmod +x ./gha-script/build_wheels.sh bash ./gha-script/build_wheels.sh From 75393077d94922f14d8da8c57afb993d5893dbb3 Mon Sep 17 00:00:00 2001 From: Stuti Ravikiran Wali Date: Thu, 2 Apr 2026 19:59:37 +0530 Subject: [PATCH 10/12] Update pr-build.yaml --- .github/workflows/pr-build.yaml | 40 +++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/.github/workflows/pr-build.yaml b/.github/workflows/pr-build.yaml index 71798d3ff0..992c0849a7 100644 --- a/.github/workflows/pr-build.yaml +++ b/.github/workflows/pr-build.yaml @@ -287,6 +287,14 @@ jobs: exit 0 fi + # Check if any .sh build script is modified in this package + BUILD_SCRIPT_CHANGED=$(echo "$CHANGED_FILES" | grep -E "^$PACKAGE_DIR/.*\.sh$" || true) + + if [[ -z "$BUILD_SCRIPT_CHANGED" ]]; then + echo "Skipping wheel build as no .sh build script changes detected" + exit 0 + fi + chmod +x ./gha-script/build_wheels.sh bash ./gha-script/build_wheels.sh @@ -341,6 +349,14 @@ jobs: exit 0 fi + # Check if any .sh build script is modified in this package + BUILD_SCRIPT_CHANGED=$(echo "$CHANGED_FILES" | grep -E "^$PACKAGE_DIR/.*\.sh$" || true) + + if [[ -z "$BUILD_SCRIPT_CHANGED" ]]; then + echo "Skipping wheel build as no .sh build script changes detected" + exit 0 + fi + chmod +x ./gha-script/build_wheels.sh bash ./gha-script/build_wheels.sh @@ -396,6 +412,14 @@ jobs: exit 0 fi + # Check if any .sh build script is modified in this package + BUILD_SCRIPT_CHANGED=$(echo "$CHANGED_FILES" | grep -E "^$PACKAGE_DIR/.*\.sh$" || true) + + if [[ -z "$BUILD_SCRIPT_CHANGED" ]]; then + echo "Skipping wheel build as no .sh build script changes detected" + exit 0 + fi + chmod +x ./gha-script/build_wheels.sh bash ./gha-script/build_wheels.sh @@ -449,6 +473,14 @@ jobs: exit 0 fi + # Check if any .sh build script is modified in this package + BUILD_SCRIPT_CHANGED=$(echo "$CHANGED_FILES" | grep -E "^$PACKAGE_DIR/.*\.sh$" || true) + + if [[ -z "$BUILD_SCRIPT_CHANGED" ]]; then + echo "Skipping wheel build as no .sh build script changes detected" + exit 0 + fi + chmod +x ./gha-script/build_wheels.sh bash ./gha-script/build_wheels.sh @@ -502,6 +534,14 @@ jobs: exit 0 fi + # Check if any .sh build script is modified in this package + BUILD_SCRIPT_CHANGED=$(echo "$CHANGED_FILES" | grep -E "^$PACKAGE_DIR/.*\.sh$" || true) + + if [[ -z "$BUILD_SCRIPT_CHANGED" ]]; then + echo "Skipping wheel build as no .sh build script changes detected" + exit 0 + fi + chmod +x ./gha-script/build_wheels.sh bash ./gha-script/build_wheels.sh From 8e59c75281f2e2bed9d0999f8782d99b3e140268 Mon Sep 17 00:00:00 2001 From: Stuti Ravikiran Wali Date: Mon, 6 Apr 2026 14:43:51 +0530 Subject: [PATCH 11/12] Update Dockerfile --- p/param/Dockerfiles/v2.1.0_ubi_9/Dockerfile | 1 + 1 file changed, 1 insertion(+) diff --git a/p/param/Dockerfiles/v2.1.0_ubi_9/Dockerfile b/p/param/Dockerfiles/v2.1.0_ubi_9/Dockerfile index 7d758cdc83..a3a99b41b8 100644 --- a/p/param/Dockerfiles/v2.1.0_ubi_9/Dockerfile +++ b/p/param/Dockerfiles/v2.1.0_ubi_9/Dockerfile @@ -16,4 +16,5 @@ RUN yum update -y && \ git checkout $PACKAGE_VERSION && \ python3 -m pip install build + CMD ["/bin/bash"] From 222a47e92232f1d6e25ebd1f3c937a6fb699ad64 Mon Sep 17 00:00:00 2001 From: Stuti Ravikiran Wali Date: Mon, 6 Apr 2026 14:44:06 +0530 Subject: [PATCH 12/12] Update param_ubi_9.3.sh --- p/param/param_ubi_9.3.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/p/param/param_ubi_9.3.sh b/p/param/param_ubi_9.3.sh index 6a0ccdfe31..510e9a929e 100644 --- a/p/param/param_ubi_9.3.sh +++ b/p/param/param_ubi_9.3.sh @@ -18,6 +18,7 @@ # # ---------------------------------------------------------------------------- + set -ex PACKAGE_NAME=param