diff --git a/.github/workflows/changelog.yml b/.github/workflows/changelog.yml index 8153697ab..c8d592388 100644 --- a/.github/workflows/changelog.yml +++ b/.github/workflows/changelog.yml @@ -11,7 +11,7 @@ jobs: check: strategy: matrix: - os: [ubuntu-latest] + os: [ubuntu-latest, ubuntu-24.04-arm] runs-on: ${{ matrix.os }} timeout-minutes: 5 steps: diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 98ff13787..a47a0b643 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -109,6 +109,13 @@ jobs: libc6-dbg \ elfutils \ patchelf + # if [ "($uname -m)" = "x86_64" ]; then + # echo "Installing gcc-multilib for 32-bit build." + # sudo apt-get install -y --no-install-recommends -o Acquire::Retries=3 / + # gcc-multilib + # else + # echo "Skipping gcc-multilib for 64-bit build." + # fi # Print diagnostics to help when Corefile doctests fail. - name: Testing Corefiles @@ -140,7 +147,16 @@ jobs: run: | echo 0 | sudo tee /proc/sys/kernel/yama/ptrace_scope # required by some gdb doctests + # - name: Detect running architecture + # run: uname -m + + # - name: Skip doctests on ARM64 runners (requires x86-specific content) + # if: runner.arch == 'ARM64' + # run: | + # echo "Skipping doctests as they contain x86-specific test content not valid on ARM64" + - name: Coverage doctests + # if: runner.arch == 'X64' run: | # Python version installed using setup-python interferes with gdb's python # by setting LD_LIBRARY_PATH and gdb's python becoming unable to load built-in modules @@ -244,7 +260,7 @@ jobs: sudo chown -R runner:runner /home/runner/libcdb-cache android-test: - runs-on: ubuntu-latest + runs-on: [ubuntu-latest, ubuntu-24.04-arm] timeout-minutes: 30 continue-on-error: true steps: @@ -349,7 +365,7 @@ jobs: include-hidden-files: true upload-coverage: - runs-on: ubuntu-latest + runs-on: [ubuntu-latest, ubuntu-24.04-arm] needs: test steps: - uses: actions/checkout@v5 @@ -372,7 +388,7 @@ jobs: staging-merge: - runs-on: ubuntu-latest + runs-on: [ubuntu-latest, ubuntu-24.04-arm] if: github.repository_owner == 'Gallopsled' && github.event_name == 'push' && startsWith(github.event.ref, 'refs/heads/') && endsWith(github.event.ref, '-staging') needs: test steps: @@ -391,7 +407,7 @@ jobs: pypi: - runs-on: ubuntu-latest + runs-on: [ubuntu-latest, ubuntu-24.04-arm] if: github.event_name == 'push' && startsWith(github.event.ref, 'refs/tags') permissions: id-token: write diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index a991b2af3..4af2b6765 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -8,7 +8,7 @@ on: workflow_dispatch: jobs: publish: - runs-on: ubuntu-latest + runs-on: [ubuntu-latest, ubuntu-24.04-arm] if: github.repository_owner == 'Gallopsled' steps: # Required for subdirectories in Git context diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml index e969db79d..dbf71f04e 100644 --- a/.github/workflows/lint.yml +++ b/.github/workflows/lint.yml @@ -6,7 +6,7 @@ jobs: strategy: matrix: python-version: ['3.10'] - os: [ubuntu-latest] + os: [ubuntu-latest, ubuntu-24.04-arm] runs-on: ${{ matrix.os }} timeout-minutes: 30 steps: diff --git a/.github/workflows/merge-conflict.yml b/.github/workflows/merge-conflict.yml index e1f6f4097..5b702fa27 100644 --- a/.github/workflows/merge-conflict.yml +++ b/.github/workflows/merge-conflict.yml @@ -9,7 +9,7 @@ jobs: mergecheck: strategy: matrix: - os: [ubuntu-latest] + os: [ubuntu-latest, ubuntu-24.04-arm] runs-on: ${{ matrix.os }} timeout-minutes: 5 steps: diff --git a/.github/workflows/pylint.yml b/.github/workflows/pylint.yml index 16009ae58..b1a967d2b 100644 --- a/.github/workflows/pylint.yml +++ b/.github/workflows/pylint.yml @@ -6,7 +6,7 @@ jobs: strategy: matrix: python-version: ['3.10'] - os: [ubuntu-latest] + os: [ubuntu-latest, ubuntu-24.04-arm] runs-on: ${{ matrix.os }} timeout-minutes: 30 steps: