From 63ad78d6d3ff0fef47feb87c0438cba4ee55c9b4 Mon Sep 17 00:00:00 2001 From: Mateusz Daniluk <121170681+VeithMetro@users.noreply.github.com> Date: Fri, 5 Sep 2025 10:42:39 +0200 Subject: [PATCH 1/3] Refactor Linux build workflow for package installation --- .github/workflows/Linux build template.yml | 59 ++++++++++++++++------ 1 file changed, 43 insertions(+), 16 deletions(-) diff --git a/.github/workflows/Linux build template.yml b/.github/workflows/Linux build template.yml index 04846ff..3604301 100644 --- a/.github/workflows/Linux build template.yml +++ b/.github/workflows/Linux build template.yml @@ -16,22 +16,49 @@ jobs: # ----- Packages & artifacts ----- name: Build type - ${{matrix.build_type}}${{matrix.architecture == '32' && ' x86' || ''}} steps: - - name: Install necessary packages - uses: nick-fields/retry@v3 - with: - timeout_minutes: 10 - max_attempts: 10 - command: | - sudo gem install apt-spy2 - sudo apt-spy2 fix --commit --launchpad --country=US - echo "deb http://archive.ubuntu.com/ubuntu/ jammy main universe restricted multiverse" | sudo tee -a /etc/apt/sources.list - echo "deb http://archive.ubuntu.com/ubuntu/ jammy-updates main universe restricted multiverse" | sudo tee -a /etc/apt/sources.list - sudo dpkg --add-architecture i386 - sudo apt-get update - sudo apt install python3-pip build-essential cmake ninja-build libusb-1.0-0-dev ${{matrix.architecture == '32' && 'zlib1g-dev:i386 libssl-dev:i386 gcc-13-multilib g++-13-multilib' || 'zlib1g-dev libssl-dev'}} - python3 -m venv venv - source venv/bin/activate - pip install jsonref + - name: Prepare apt (add i386 if needed) + if: ${{ matrix.architecture == '32' }} + run: | + sudo dpkg --add-architecture i386 + + - name: Update apt indices (with retries) + shell: bash + run: | + set -euo pipefail + for attempt in {1..5}; do + if sudo apt-get update -o Acquire::Retries=5 -o Acquire::http::Timeout=30; then + break + fi + echo "apt-get update failed (attempt $attempt), retrying..." + sleep $((attempt*10)) + done + + - name: Install system dependencies + shell: bash + run: | + set -euo pipefail + export DEBIAN_FRONTEND=noninteractive + PKGS="python3-venv python3-pip build-essential cmake ninja-build libusb-1.0-0-dev" + if [ "${{ matrix.architecture }}" = "32" ]; then + PKGS="$PKGS zlib1g-dev:i386 libssl-dev:i386 libsbc-dev:i386 gcc-13-multilib g++-13-multilib" + else + PKGS="$PKGS zlib1g-dev libssl-dev libsbc-dev" + fi + for attempt in {1..4}; do + if sudo apt-get install -y --no-install-recommends $PKGS; then + break + fi + echo "apt-get install failed (attempt $attempt), cleaning up & retrying..." + sudo apt-get clean + sleep $((attempt*15)) + done + + - name: Set up Python environment + run: | + python3 -m venv venv + source venv/bin/activate + pip install --upgrade pip + pip install jsonref - name: Download artifacts uses: actions/download-artifact@v4 From fa2b85a3b02575a21d1a6e1fd519a1240e900743 Mon Sep 17 00:00:00 2001 From: Mateusz Daniluk <121170681+VeithMetro@users.noreply.github.com> Date: Fri, 5 Sep 2025 10:43:00 +0200 Subject: [PATCH 2/3] Update workflow to use development branch for ThunderLibraries --- .github/workflows/Build ThunderLibraries on Linux.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/Build ThunderLibraries on Linux.yml b/.github/workflows/Build ThunderLibraries on Linux.yml index bf69c3b..91109a7 100644 --- a/.github/workflows/Build ThunderLibraries on Linux.yml +++ b/.github/workflows/Build ThunderLibraries on Linux.yml @@ -9,8 +9,8 @@ on: jobs: Thunder: - uses: rdkcentral/Thunder/.github/workflows/Linux build template.yml@master + uses: rdkcentral/Thunder/.github/workflows/Linux build template.yml@development/actions-error ThunderLibraries: needs: Thunder - uses: WebPlatformForEmbedded/ThunderLibraries/.github/workflows/Linux build template.yml@main + uses: WebPlatformForEmbedded/ThunderLibraries/.github/workflows/Linux build template.yml@development/actions-error From 5c04cef463828afd7c5e7fe52a24417e9c0c94ce Mon Sep 17 00:00:00 2001 From: Mateusz Daniluk <121170681+VeithMetro@users.noreply.github.com> Date: Mon, 8 Sep 2025 11:26:23 +0200 Subject: [PATCH 3/3] Update workflow to use main branch for ThunderLibraries --- .github/workflows/Build ThunderLibraries on Linux.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/Build ThunderLibraries on Linux.yml b/.github/workflows/Build ThunderLibraries on Linux.yml index 91109a7..bf69c3b 100644 --- a/.github/workflows/Build ThunderLibraries on Linux.yml +++ b/.github/workflows/Build ThunderLibraries on Linux.yml @@ -9,8 +9,8 @@ on: jobs: Thunder: - uses: rdkcentral/Thunder/.github/workflows/Linux build template.yml@development/actions-error + uses: rdkcentral/Thunder/.github/workflows/Linux build template.yml@master ThunderLibraries: needs: Thunder - uses: WebPlatformForEmbedded/ThunderLibraries/.github/workflows/Linux build template.yml@development/actions-error + uses: WebPlatformForEmbedded/ThunderLibraries/.github/workflows/Linux build template.yml@main