mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2026-04-30 10:41:01 +02:00
CI: github: add an armhf job to the push job
Add an armhf job in order to run reg-tests on ARM 32-bit architecture. Use the armhf SSL and PCRE2 library provided by ubuntu. VTest is still compiled in arm64.
This commit is contained in:
parent
f4f733db18
commit
af454b09d1
18
.github/matrix.py
vendored
18
.github/matrix.py
vendored
@ -145,10 +145,12 @@ def main(ref_name):
|
||||
if is_stable:
|
||||
os = "ubuntu-24.04" # stable branch
|
||||
os_arm = "ubuntu-24.04-arm" # stable branch
|
||||
os_armhf = "ubuntu-24.04-arm" # stable branch
|
||||
os_i686 = "ubuntu-24.04" # stable branch
|
||||
else:
|
||||
os = "ubuntu-24.04" # development branch
|
||||
os_arm = "ubuntu-24.04-arm" # development branch
|
||||
os_armhf = "ubuntu-24.04-arm" # development branch
|
||||
os_i686 = "ubuntu-24.04" # development branch
|
||||
|
||||
TARGET = "linux-glibc"
|
||||
@ -353,6 +355,22 @@ def main(ref_name):
|
||||
}
|
||||
)
|
||||
|
||||
# arm32
|
||||
|
||||
matrix.append(
|
||||
{
|
||||
"name": "{}, armhf".format(os_armhf),
|
||||
"os": os_armhf,
|
||||
"TARGET": "linux-glibc",
|
||||
"CC": "arm-linux-gnueabihf-gcc",
|
||||
"FLAGS": [
|
||||
"USE_OPENSSL=1",
|
||||
"USE_PCRE2=1",
|
||||
"USE_PCRE2_JIT=1",
|
||||
],
|
||||
}
|
||||
)
|
||||
|
||||
# Print matrix
|
||||
|
||||
print(json.dumps(matrix, indent=4, sort_keys=True))
|
||||
|
||||
16
.github/workflows/vtest.yml
vendored
16
.github/workflows/vtest.yml
vendored
@ -72,18 +72,18 @@ jobs:
|
||||
with:
|
||||
path: '~/opt-ot/'
|
||||
key: ${{ matrix.os }}-ot-${{ matrix.CC }}-${{ env.OT_CPP_VERSION }}-${{ contains(matrix.name, 'ASAN') }}
|
||||
- name: Add i386 architecture
|
||||
if: ${{ matrix.CC == 'i686-linux-gnu-gcc' }}
|
||||
run: sudo dpkg --add-architecture i386
|
||||
- name: Install apt dependencies
|
||||
if: ${{ startsWith(matrix.os, 'ubuntu-') && matrix.TARGET != 'linux-musl' }}
|
||||
run: |
|
||||
${{ matrix.CC == 'i686-linux-gnu-gcc' && 'sudo dpkg --add-architecture i386' || '' }}
|
||||
${{ matrix.CC == 'arm-linux-gnueabihf-gcc' && 'sudo dpkg --add-architecture armhf' || '' }}
|
||||
sudo apt-get update -o Acquire::Languages=none -o Acquire::Translation=none
|
||||
sudo apt-get --no-install-recommends -y install \
|
||||
${{ case(contains(matrix.FLAGS, 'USE_LUA=1'), 'liblua5.4-dev', '') }} \
|
||||
${{ case(contains(matrix.FLAGS, 'USE_PCRE2=1'), 'libpcre2-dev', '') }} \
|
||||
${{ case(contains(matrix.ssl, 'BORINGSSL=yes'), 'ninja-build', '') }} \
|
||||
${{ case(matrix.CC == 'i686-linux-gnu-gcc', 'gcc-i686-linux-gnu libc6-dev-i386-cross libssl-dev:i386 libpcre2-dev:i386', '') }} \
|
||||
${{ case(matrix.CC == 'arm-linux-gnueabihf-gcc', 'gcc-arm-linux-gnueabihf libc6-dev-armhf-cross libssl-dev:armhf libpcre2-dev:armhf qemu-user-static', '') }} \
|
||||
socat \
|
||||
gdb \
|
||||
jose
|
||||
@ -126,12 +126,12 @@ jobs:
|
||||
id: show-version
|
||||
run: |
|
||||
echo "::group::Show dynamic libraries."
|
||||
if command -v ldd > /dev/null; then
|
||||
# Linux
|
||||
ldd $(which haproxy)
|
||||
else
|
||||
# macOS
|
||||
if [ "$(uname)" = "Darwin" ]; then
|
||||
otool -L $(which haproxy)
|
||||
elif [ "${{ matrix.CC }}" = "arm-linux-gnueabihf-gcc" ]; then
|
||||
readelf -d $(which haproxy) | grep NEEDED
|
||||
else
|
||||
ldd $(which haproxy)
|
||||
fi
|
||||
echo "::endgroup::"
|
||||
haproxy -vv
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user