Skip to content

Commit 3b1a8ba

Browse files
authored
Alpine 3.14 support. (#26)
* Build on Alpine 3.14. * Updated README. * Updated Docker GHA workflow for Alpine 3.14.
1 parent cac0428 commit 3b1a8ba

File tree

4 files changed

+13
-15
lines changed

4 files changed

+13
-15
lines changed

.github/workflows/docker.yaml

+5-8
Original file line numberDiff line numberDiff line change
@@ -30,19 +30,16 @@ jobs:
3030
strategy:
3131
fail-fast: false
3232
matrix:
33-
container: [ 'alpine:3.12', 'centos:8.2.2004', 'centos:5.11' ]
33+
container: [ 'alpine:3.14', 'centos:8.2.2004', 'centos:5.11' ]
3434
timeout-minutes: 30
3535
steps:
3636

3737
# OpenSSL gets updated by apk, but that is the Alpine way, so it's fine.
38-
- name: Alpine 3.12 setup
39-
if: matrix.container == 'alpine:3.12'
38+
- name: Alpine setup
39+
if: startsWith(matrix.container, 'alpine')
4040
run: |
41-
apk update
42-
apk upgrade
43-
apk add git curl bash openssh-client
44-
curl -o /usr/local/bin/paxctl https://bin.chevah.com:20443/third-party-stuff/alpine/paxctl-3.12
45-
chmod +x /usr/local/bin/paxctl
41+
apk upgrade -U
42+
apk add git curl bash openssh-client paxctl
4643
4744
# Stick to CentOS 8.2 as OpenSSL got updated in 8.3 from 1.1.1c to 1.1.1g.
4845
- name: CentOS 8.2 setup

README.rst

+4-4
Original file line numberDiff line numberDiff line change
@@ -22,19 +22,19 @@ Supported platforms
2222
-------------------
2323

2424
* Windows Server 2012 R2 and newer (x86 and x64)
25-
* macOS 10.13 and newer.
25+
* macOS 10.13 and newer
2626
* all glibc-based Linux distributions (glibc 2.5+)
27+
* Alpine Linux 3.12 and newer.
2728

2829
Platforms on which the system OpenSSL is used:
2930

3031
* Red Hat Linux Enterprise 8 and newer (including derivatives such as CentOS)
31-
* Amazon Linux 2
3232
* Ubuntu Server 18.04 and 20.04
33-
* Alpine Linux 3.12
33+
* Alpine Linux
3434

3535
Platforms that should work, but are not regularly tested:
3636

37-
* FreeBSD 12
37+
* FreeBSD 12 and newer
3838
* OpenBSD 6.7 and newer
3939
* Solaris 11.4.
4040

pkg_checks.sh

+3-2
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ RPM_PKGS="$BASE_PKGS tar diffutils \
2222
git-core openssl-devel zlib-devel libffi-devel ncurses-devel"
2323
# Alpine's ersatz tar/sha51sum binaries from Busybox are good enough.
2424
APK_PKGS="$BASE_PKGS file lddtree \
25-
git openssl-dev zlib-dev libffi-dev musl-dev"
25+
git openssl-dev zlib-dev libffi-dev musl-dev paxctl"
2626
# Windows is special, but package management is possible through Chocolatey.
2727
# Curl, sha512sum, and unzip are bundled with MINGW.
2828
CHOCO_PKGS=""
@@ -149,7 +149,8 @@ case "$OS" in
149149
execute $SUDO_CMD yum remove -y e2fsprogs-devel libuuid-devel
150150
;;
151151
alpine*)
152-
execute $SUDO_CMD apk del util-linux-dev
152+
$CHECK_CMD util-linux-dev \
153+
&& execute $SUDO_CMD apk del util-linux-dev
153154
;;
154155
*)
155156
(>&2 echo "Not guarding against linking to uuid libs on this system!")

src/Python/chevahbs

+1-1
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ chevahbs_configure() {
5050
fi
5151

5252
case $OS in
53-
alpine312)
53+
alpine312|alpine314)
5454
# Ugly hack for Python 3's configure issues.
5555
execute $SUDO_CMD rm -f /include
5656
execute $SUDO_CMD ln -s "${INSTALL_DIR}/include" /include

0 commit comments

Comments
 (0)