Skip to content

Commit e8bcd73

Browse files
committed
Support PHP8.3 Alpine3.21
1 parent ff56432 commit e8bcd73

File tree

6 files changed

+106
-6
lines changed

6 files changed

+106
-6
lines changed

.github/workflows/build-base.yml

+14-2
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,19 @@ jobs:
1818
ALPINE_VERSION: '${{ matrix.alpine-version }}'
1919
strategy:
2020
matrix:
21-
php-version: [ '8.1', '8.2', '8.3' ]
22-
alpine-version: [ '3.16', '3.17', '3.18', '3.19', '3.20', 'edge' ]
21+
php-version: [ '8.1', '8.2', '8.3', '8.4' ]
22+
alpine-version: [ '3.16', '3.17', '3.18', '3.19', '3.20', '3.21', 'edge' ]
2323
exclude:
24+
- php-version: '8.4'
25+
alpine-version: '3.16'
26+
- php-version: '8.4'
27+
alpine-version: '3.17'
28+
- php-version: '8.4'
29+
alpine-version: '3.18'
30+
- php-version: '8.4'
31+
alpine-version: '3.19'
32+
- php-version: '8.4'
33+
alpine-version: '3.20'
2434
- php-version: '8.3'
2535
alpine-version: '3.16'
2636
- php-version: '8.3'
@@ -33,6 +43,8 @@ jobs:
3343
alpine-version: '3.17'
3444
- php-version: '8.1'
3545
alpine-version: '3.20'
46+
- php-version: '8.1'
47+
alpine-version: '3.21'
3648
- php-version: '8.1'
3749
alpine-version: 'edge'
3850
max-parallel: 12

.github/workflows/build-dev.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ name: Build Develop
22

33
on: [ push ]
44
env:
5-
COMPOSER_VERSION: '2.8.4'
5+
COMPOSER_VERSION: '2.8.8'
66
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
77
jobs:
88
build:

.github/workflows/build-swoole.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@ name: Build Swoole
33
on: [ push ]
44
env:
55
ENGINE: 'swoole'
6-
SW_VERSION: 'v6.0.0'
7-
COMPOSER_VERSION: '2.8.4'
6+
SW_VERSION: 'v6.0.2'
7+
COMPOSER_VERSION: '2.8.8'
88
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
99
DOCKERHUB_TOKEN: ${{ secrets.DOCKERHUB_ACCESSTOKEN }}
1010
CODING_PASSWORD: ${{ secrets.CODING_PASSWORD }}

.github/workflows/build-swow.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ on: [ push ]
44
env:
55
ENGINE: 'swow'
66
SW_VERSION: 'v1.5.3'
7-
COMPOSER_VERSION: '2.8.4'
7+
COMPOSER_VERSION: '2.8.8'
88
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
99
DOCKERHUB_TOKEN: ${{ secrets.DOCKERHUB_ACCESSTOKEN }}
1010
CODING_PASSWORD: ${{ secrets.CODING_PASSWORD }}

8.4/alpine/base/Dockerfile

+66
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
# hyperf/hyperf:8.1
2+
#
3+
# @link https://www.hyperf.io
4+
# @document https://hyperf.wiki
5+
6+
# @license https://github.com/hyperf/hyperf/blob/master/LICENSE
7+
8+
ARG ALPINE_VERSION
9+
10+
FROM alpine:$ALPINE_VERSION
11+
12+
LABEL maintainer="Hyperf Developers <[email protected]>" version="1.0" license="MIT"
13+
14+
##
15+
# ---------- building ----------
16+
##
17+
COPY ./init.php /init.php
18+
19+
RUN set -ex \
20+
&& apk update \
21+
&& apk add --no-cache \
22+
# Install base packages ('ca-certificates' will install 'nghttp2-libs')
23+
ca-certificates \
24+
curl \
25+
wget \
26+
tar \
27+
xz \
28+
tzdata \
29+
pcre \
30+
php84 \
31+
php84-bcmath \
32+
php84-curl \
33+
php84-ctype \
34+
php84-dom \
35+
php84-fileinfo \
36+
php84-gd \
37+
php84-iconv \
38+
php84-mbstring \
39+
php84-mysqlnd \
40+
php84-openssl \
41+
php84-pdo \
42+
php84-pdo_mysql \
43+
php84-phar \
44+
php84-posix \
45+
php84-redis \
46+
php84-sockets \
47+
php84-sodium \
48+
php84-sysvshm \
49+
php84-sysvmsg \
50+
php84-sysvsem \
51+
php84-simplexml \
52+
php84-tokenizer \
53+
php84-zip \
54+
php84-zlib \
55+
php84-xml \
56+
php84-xmlreader \
57+
php84-xmlwriter \
58+
php84-pcntl \
59+
php84-opcache \
60+
&& ln -sf /usr/bin/php84 /usr/bin/php \
61+
&& php /init.php \
62+
&& apk del --purge *-dev \
63+
&& rm -rf /var/cache/apk/* /tmp/* /usr/share/man /usr/share/php84 \
64+
&& php -v \
65+
&& php -m \
66+
&& echo -e "\033[42;37m Build Completed :).\033[0m\n"

8.4/alpine/base/init.php

+22
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
<?php
2+
3+
if (str_starts_with(OPENSSL_VERSION_TEXT, 'OpenSSL 3')) {
4+
$cnf = file_get_contents($path = '/etc/ssl/openssl.cnf');
5+
// [provider_sect]
6+
// default = default_sect
7+
// legacy = legacy_sect
8+
if (str_contains($cnf, "default = default_sect") && ! str_contains($cnf, "legacy = legacy_sect")) {
9+
$cnf = str_replace("default = default_sect", "default = default_sect" . PHP_EOL . "legacy = legacy_sect" . PHP_EOL, $cnf);
10+
}
11+
12+
// [default_sect]
13+
// activate = 1
14+
// [legacy_sect]
15+
// activate = 1
16+
if (str_contains($cnf, '[default_sect]' . PHP_EOL . '# activate = 1') && ! str_contains($cnf, "[legacy_sect]")) {
17+
$cnf = str_replace('[default_sect]' . PHP_EOL . '# activate = 1', '[default_sect]' . PHP_EOL . 'activate = 1' . PHP_EOL . '[legacy_sect]' . PHP_EOL . 'activate = 1' . PHP_EOL, $cnf);
18+
}
19+
20+
file_put_contents($path, $cnf);
21+
echo "Rewrite openssl.cnf" . PHP_EOL;
22+
}

0 commit comments

Comments
 (0)