Skip to content

Commit 340e545

Browse files
authored
Merge pull request #19 from appwrite/feat-upgrade-to-php8-2
Upgrade to PHP 8.2
2 parents aee71d0 + c5cb10a commit 340e545

File tree

2 files changed

+29
-40
lines changed

2 files changed

+29
-40
lines changed

Dockerfile

+15-23
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM php:8.0.30-cli-alpine3.16 as compile
1+
FROM php:8.2.6-cli-alpine3.18 as compile
22

33
ENV PHP_REDIS_VERSION="5.3.7" \
44
PHP_MONGODB_VERSION="1.16.1" \
@@ -14,6 +14,7 @@ ENV PHP_REDIS_VERSION="5.3.7" \
1414

1515
RUN \
1616
apk add --no-cache --virtual .deps \
17+
linux-headers \
1718
make \
1819
automake \
1920
autoconf \
@@ -52,16 +53,6 @@ RUN \
5253
make && make install && \
5354
cd ..
5455

55-
## Swoole Debugger setup
56-
RUN cd /tmp && \
57-
apk add boost-dev && \
58-
git clone --depth 1 https://github.com/swoole/yasd && \
59-
cd yasd && \
60-
phpize && \
61-
./configure && \
62-
make && make install && \
63-
cd ..;
64-
6556
## Imagick Extension
6657
FROM compile AS imagick
6758
RUN \
@@ -145,7 +136,7 @@ RUN git clone --depth 1 https://github.com/DomBlack/php-scrypt.git \
145136
&& ./configure --enable-scrypt \
146137
&& make && make install
147138

148-
FROM php:8.0.30-cli-alpine3.16 as final
139+
FROM php:8.2.6-cli-alpine3.18 as final
149140

150141
LABEL maintainer="[email protected]"
151142

@@ -161,6 +152,7 @@ RUN set -ex \
161152
RUN \
162153
apk update \
163154
&& apk add --no-cache --virtual .deps \
155+
linux-headers \
164156
make \
165157
automake \
166158
autoconf \
@@ -192,17 +184,17 @@ RUN \
192184

193185
WORKDIR /usr/src/code
194186

195-
COPY --from=swoole /usr/local/lib/php/extensions/no-debug-non-zts-20200930/swoole.so /usr/local/lib/php/extensions/no-debug-non-zts-20200930/yasd.so* /usr/local/lib/php/extensions/no-debug-non-zts-20200930/
196-
COPY --from=redis /usr/local/lib/php/extensions/no-debug-non-zts-20200930/redis.so /usr/local/lib/php/extensions/no-debug-non-zts-20200930/
197-
COPY --from=imagick /usr/local/lib/php/extensions/no-debug-non-zts-20200930/imagick.so /usr/local/lib/php/extensions/no-debug-non-zts-20200930/
198-
COPY --from=yaml /usr/local/lib/php/extensions/no-debug-non-zts-20200930/yaml.so /usr/local/lib/php/extensions/no-debug-non-zts-20200930/
199-
COPY --from=maxmind /usr/local/lib/php/extensions/no-debug-non-zts-20200930/maxminddb.so /usr/local/lib/php/extensions/no-debug-non-zts-20200930/
200-
COPY --from=mongodb /usr/local/lib/php/extensions/no-debug-non-zts-20200930/mongodb.so /usr/local/lib/php/extensions/no-debug-non-zts-20200930/
201-
COPY --from=scrypt /usr/local/lib/php/extensions/no-debug-non-zts-20200930/scrypt.so /usr/local/lib/php/extensions/no-debug-non-zts-20200930/
202-
COPY --from=zstd /usr/local/lib/php/extensions/no-debug-non-zts-20200930/zstd.so /usr/local/lib/php/extensions/no-debug-non-zts-20200930/
203-
COPY --from=brotli /usr/local/lib/php/extensions/no-debug-non-zts-20200930/brotli.so /usr/local/lib/php/extensions/no-debug-non-zts-20200930/
204-
COPY --from=lz4 /usr/local/lib/php/extensions/no-debug-non-zts-20200930/lz4.so /usr/local/lib/php/extensions/no-debug-non-zts-20200930/
205-
COPY --from=snappy /usr/local/lib/php/extensions/no-debug-non-zts-20200930/snappy.so /usr/local/lib/php/extensions/no-debug-non-zts-20200930/
187+
COPY --from=swoole /usr/local/lib/php/extensions/no-debug-non-zts-20220829/swoole.so /usr/local/lib/php/extensions/no-debug-non-zts-20220829/
188+
COPY --from=redis /usr/local/lib/php/extensions/no-debug-non-zts-20220829/redis.so /usr/local/lib/php/extensions/no-debug-non-zts-20220829/
189+
COPY --from=imagick /usr/local/lib/php/extensions/no-debug-non-zts-20220829/imagick.so /usr/local/lib/php/extensions/no-debug-non-zts-20220829/
190+
COPY --from=yaml /usr/local/lib/php/extensions/no-debug-non-zts-20220829/yaml.so /usr/local/lib/php/extensions/no-debug-non-zts-20220829/
191+
COPY --from=maxmind /usr/local/lib/php/extensions/no-debug-non-zts-20220829/maxminddb.so /usr/local/lib/php/extensions/no-debug-non-zts-20220829/
192+
COPY --from=mongodb /usr/local/lib/php/extensions/no-debug-non-zts-20220829/mongodb.so /usr/local/lib/php/extensions/no-debug-non-zts-20220829/
193+
COPY --from=scrypt /usr/local/lib/php/extensions/no-debug-non-zts-20220829/scrypt.so /usr/local/lib/php/extensions/no-debug-non-zts-20220829/
194+
COPY --from=zstd /usr/local/lib/php/extensions/no-debug-non-zts-20220829/zstd.so /usr/local/lib/php/extensions/no-debug-non-zts-20220829/
195+
COPY --from=brotli /usr/local/lib/php/extensions/no-debug-non-zts-20220829/brotli.so /usr/local/lib/php/extensions/no-debug-non-zts-20220829/
196+
COPY --from=lz4 /usr/local/lib/php/extensions/no-debug-non-zts-20220829/lz4.so /usr/local/lib/php/extensions/no-debug-non-zts-20220829/
197+
COPY --from=snappy /usr/local/lib/php/extensions/no-debug-non-zts-20220829/snappy.so /usr/local/lib/php/extensions/no-debug-non-zts-20220829/
206198

207199
# Enable Extensions
208200
RUN echo extension=swoole.so >> /usr/local/etc/php/conf.d/swoole.ini

tests.yaml

+14-17
Original file line numberDiff line numberDiff line change
@@ -3,40 +3,37 @@ schemaVersion: '2.0.0'
33
fileExistenceTests:
44
## Extension files
55
- name: 'Check swoole extension'
6-
path: /usr/local/lib/php/extensions/no-debug-non-zts-20200930/swoole.so
7-
shouldExist: true
8-
- name: 'Check swoole Debugger extension'
9-
path: /usr/local/lib/php/extensions/no-debug-non-zts-20200930/yasd.so
6+
path: /usr/local/lib/php/extensions/no-debug-non-zts-20220829/swoole.so
107
shouldExist: true
118
- name: 'Check redis extension'
12-
path: /usr/local/lib/php/extensions/no-debug-non-zts-20200930/redis.so
9+
path: /usr/local/lib/php/extensions/no-debug-non-zts-20220829/redis.so
1310
shouldExist: true
1411
- name: 'Check imagick extension'
15-
path: /usr/local/lib/php/extensions/no-debug-non-zts-20200930/imagick.so
12+
path: /usr/local/lib/php/extensions/no-debug-non-zts-20220829/imagick.so
1613
shouldExist: true
1714
- name: 'Check yaml extension'
18-
path: /usr/local/lib/php/extensions/no-debug-non-zts-20200930/yaml.so
15+
path: /usr/local/lib/php/extensions/no-debug-non-zts-20220829/yaml.so
1916
shouldExist: true
2017
- name: 'Check maxminddb extension'
21-
path: /usr/local/lib/php/extensions/no-debug-non-zts-20200930/maxminddb.so
18+
path: /usr/local/lib/php/extensions/no-debug-non-zts-20220829/maxminddb.so
2219
shouldExist: true
2320
- name: 'Check mongodb extension'
24-
path: /usr/local/lib/php/extensions/no-debug-non-zts-20200930/mongodb.so
21+
path: /usr/local/lib/php/extensions/no-debug-non-zts-20220829/mongodb.so
2522
shouldExist: true
2623
- name: 'Check scrypt extension'
27-
path: /usr/local/lib/php/extensions/no-debug-non-zts-20200930/scrypt.so
24+
path: /usr/local/lib/php/extensions/no-debug-non-zts-20220829/scrypt.so
2825
shouldExist: true
2926
- name: 'Check zstd extension'
30-
path: /usr/local/lib/php/extensions/no-debug-non-zts-20200930/zstd.so
27+
path: /usr/local/lib/php/extensions/no-debug-non-zts-20220829/zstd.so
3128
shouldExist: true
3229
- name: 'Check brotli extension'
33-
path: /usr/local/lib/php/extensions/no-debug-non-zts-20200930/brotli.so
30+
path: /usr/local/lib/php/extensions/no-debug-non-zts-20220829/brotli.so
3431
shouldExist: true
3532
- name: 'Check lz4 extension'
36-
path: /usr/local/lib/php/extensions/no-debug-non-zts-20200930/lz4.so
33+
path: /usr/local/lib/php/extensions/no-debug-non-zts-20220829/lz4.so
3734
shouldExist: true
3835
- name: 'Check snappy extension'
39-
path: /usr/local/lib/php/extensions/no-debug-non-zts-20200930/snappy.so
36+
path: /usr/local/lib/php/extensions/no-debug-non-zts-20220829/snappy.so
4037
shouldExist: true
4138

4239
## ini files
@@ -107,19 +104,19 @@ commandTests:
107104
- name: 'Imagemagick command'
108105
command: "magick"
109106
args: ["--version"]
110-
expectedOutput: [".*ImageMagick 7.1.0-50.*"]
107+
expectedOutput: [".*ImageMagick 7.1.*"]
111108
- name: 'rsync command'
112109
command: "rsync"
113110
args: ["--version"]
114111
expectedOutput: ["rsync version 3.*"]
115112
- name: 'Certbot command'
116113
command: "certbot"
117114
args: ["--version"]
118-
expectedOutput: ["certbot 1.*"]
115+
expectedOutput: ["certbot 2.*"]
119116
- name: 'Docker command'
120117
command: "docker"
121118
args: ["--version"]
122-
expectedOutput: ["Docker version 20.*"]
119+
expectedOutput: ["Docker version 23.*"]
123120
- name: 'PHP info'
124121
command: "php"
125122
args: ["-m"]

0 commit comments

Comments
 (0)