From 33849e43221b58ff4ad163affb329905b5a70826 Mon Sep 17 00:00:00 2001 From: Dan Fandrich Date: Mon, 22 May 2023 13:09:54 -0700 Subject: [PATCH] CI: add an Alpine build with MUSL MUSL is another libc implementation which has its own unique issues worth testing. Ref: #11140 Closes #11178 --- .cirrus.yml | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/.cirrus.yml b/.cirrus.yml index b6df02cac3..3b164288bf 100644 --- a/.cirrus.yml +++ b/.cirrus.yml @@ -257,3 +257,38 @@ macos_task: - make V=1 test-ci install_script: - sudo -H make V=1 install + +linux_musl_task: + skip: "changesIncludeOnly( + '**/CMakeLists.txt', + '.azure-pipelines.yml', + '.circleci/**', + '.github/**', + 'appveyor.yml', + 'CMake/**', + 'packages/**', + 'plan9/**', + 'projects/**', + 'winbuild/**' + )" + name: Linux MUSL + container: + image: alpine:3.18 + memory: 800M + + env: + CIRRUS_CLONE_DEPTH: 10 + MAKEFLAGS: -j 2 + + pkginstall_script: + - apk add --no-cache build-base autoconf automake libtool perl openssl-dev libssh2-dev zlib-dev brotli-dev zstd-dev libidn2-dev openldap-dev heimdal-dev libpsl-dev py3-impacket py3-asn1 py3-six py3-pycryptodomex perl-time-hires openssh stunnel sudo + configure_script: + - autoreconf -fi + - ./configure --enable-warnings --enable-debug --enable-websockets --with-ssl --with-libssh2 --with-libidn2 --with-gssapi --enable-ldap --with-libpsl + compile_script: + - make V=1 && make V=1 examples && make -C tests V=1 + test_script: + # TODO: ssh tests don't work, likely because we're running as root + - USER=nobody make V=1 test-ci + install_script: + - make V=1 install