Skip to content

Commit 9215e21

Browse files
authored
Merge pull request #14 from piotrkardasz/add-support-to-php-8-5
Add support for PHP 8.5
2 parents 87fda16 + 5a3e020 commit 9215e21

File tree

4 files changed

+250
-4
lines changed

4 files changed

+250
-4
lines changed

.github/workflows/sylius-php.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ jobs:
2525
strategy:
2626
fail-fast: false
2727
matrix:
28-
php: [ "7.3", "7.4", "8.0", "8.1", "8.2", "8.3", "8.4" ]
28+
php: [ "7.3", "7.4", "8.0", "8.1", "8.2", "8.3", "8.4", "8.5" ]
2929
distro: [ "alpine" ]
3030

3131
steps:
@@ -164,7 +164,7 @@ jobs:
164164
strategy:
165165
fail-fast: false
166166
matrix:
167-
php: [ "7.3", "7.4", "8.0", "8.1", "8.2", "8.3", "8.4" ]
167+
php: [ "7.3", "7.4", "8.0", "8.1", "8.2", "8.3", "8.4", "8.5" ]
168168
distro: [ "alpine" ]
169169

170170
steps:

php/Dockerfile

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
ARG PHP_SHORT_VERSION=7.4
2-
ARG APCU_VERSION=5.1.24
2+
ARG APCU_VERSION=5.1.28
33

44
FROM php:${PHP_SHORT_VERSION}-fpm-alpine
55

@@ -55,9 +55,13 @@ RUN set -eux; \
5555
apcu-${APCU_VERSION} \
5656
; \
5757
pecl clear-cache; \
58+
# Opcache is built into core of PHP binary from version 8.5
59+
if [[ 1 -eq "$(echo "$PHP_SHORT_VERSION < 8.5" | bc)" ]] ; \
60+
then \
61+
docker-php-ext-enable opcache; \
62+
fi; \
5863
docker-php-ext-enable \
5964
apcu \
60-
opcache \
6165
; \
6266
\
6367
runDeps="$( \

php/testdata/php8.5_amd64.yaml

Lines changed: 121 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,121 @@
1+
schemaVersion: "1.0.0"
2+
fileExistenceTests:
3+
- name: php-fpm executable
4+
path: '/usr/local/sbin/php-fpm'
5+
shouldExist: true
6+
- name: php executable
7+
path: '/usr/local/bin/php'
8+
shouldExist: true
9+
- name: 'Composer 755'
10+
path: '/usr/bin/composer'
11+
shouldExist: true
12+
permissions: '-rwxr-xr-x'
13+
- name: 'PHP Entry point 755'
14+
path: '/usr/local/bin/docker-php-entrypoint'
15+
shouldExist: true
16+
permissions: '-rwxr-xr-x'
17+
commandTests:
18+
- name: arch
19+
command: [ "uname", "-m" ]
20+
expectedOutput: [ "x86_64" ]
21+
- name: php-fpm version
22+
command: [ "/usr/local/sbin/php-fpm", "--version" ]
23+
expectedOutput: [ "PHP 8.5" ]
24+
- name: php-fpm-modules
25+
command: [ "/usr/local/sbin/php-fpm", "-m" ]
26+
expectedOutput:
27+
- 'apcu'
28+
- 'cgi-fcgi'
29+
- 'Core'
30+
- 'ctype'
31+
- 'curl'
32+
- 'date'
33+
- 'dom'
34+
- 'exif'
35+
- 'fileinfo'
36+
- 'filter'
37+
- 'gd'
38+
- 'hash'
39+
- 'iconv'
40+
- 'intl'
41+
- 'json'
42+
- 'lexbor'
43+
- 'libxml'
44+
- 'mbstring'
45+
- 'mysqlnd'
46+
- 'openssl'
47+
- 'pcre'
48+
- 'PDO'
49+
- 'pdo_mysql'
50+
- 'Phar'
51+
- 'posix'
52+
- 'readline'
53+
- 'Reflection'
54+
- 'session'
55+
- 'SimpleXML'
56+
- 'sodium'
57+
- 'SPL'
58+
- 'standard'
59+
- 'tokenizer'
60+
- 'uri'
61+
- 'xml'
62+
- 'xmlreader'
63+
- 'xmlwriter'
64+
- 'Zend OPcache'
65+
- 'zip'
66+
- 'zlib'
67+
- name: php-cli version
68+
command: [ "/usr/local/bin/php", "--version" ]
69+
expectedOutput: [ "PHP 8.5" ]
70+
- name: config-files
71+
command: [ "/usr/local/bin/php", "--ini" ]
72+
expectedOutput:
73+
- '/usr/local/etc/php/conf.d/docker-php-ext-apcu.ini'
74+
- '/usr/local/etc/php/conf.d/docker-php-ext-exif.ini'
75+
- '/usr/local/etc/php/conf.d/docker-php-ext-gd.ini'
76+
- '/usr/local/etc/php/conf.d/docker-php-ext-intl.ini'
77+
- '/usr/local/etc/php/conf.d/docker-php-ext-pdo_mysql.ini'
78+
- '/usr/local/etc/php/conf.d/docker-php-ext-sodium.ini'
79+
- '/usr/local/etc/php/conf.d/docker-php-ext-zip.ini'
80+
- name: php-cli extensions
81+
command: [ "/usr/local/bin/php", "-m" ]
82+
expectedOutput:
83+
- 'apcu'
84+
- 'Core'
85+
- 'ctype'
86+
- 'curl'
87+
- 'date'
88+
- 'dom'
89+
- 'exif'
90+
- 'fileinfo'
91+
- 'filter'
92+
- 'gd'
93+
- 'hash'
94+
- 'iconv'
95+
- 'intl'
96+
- 'json'
97+
- 'lexbor'
98+
- 'libxml'
99+
- 'mbstring'
100+
- 'mysqlnd'
101+
- 'openssl'
102+
- 'pcre'
103+
- 'PDO'
104+
- 'pdo_mysql'
105+
- 'Phar'
106+
- 'posix'
107+
- 'readline'
108+
- 'Reflection'
109+
- 'session'
110+
- 'SimpleXML'
111+
- 'sodium'
112+
- 'SPL'
113+
- 'standard'
114+
- 'tokenizer'
115+
- 'uri'
116+
- 'xml'
117+
- 'xmlreader'
118+
- 'xmlwriter'
119+
- 'Zend OPcache'
120+
- 'zip'
121+
- 'zlib'

php/testdata/php8.5_arm64.yaml

Lines changed: 121 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,121 @@
1+
schemaVersion: "1.0.0"
2+
fileExistenceTests:
3+
- name: php-fpm executable
4+
path: '/usr/local/sbin/php-fpm'
5+
shouldExist: true
6+
- name: php executable
7+
path: '/usr/local/bin/php'
8+
shouldExist: true
9+
- name: 'Composer 755'
10+
path: '/usr/bin/composer'
11+
shouldExist: true
12+
permissions: '-rwxr-xr-x'
13+
- name: 'PHP Entry point 755'
14+
path: '/usr/local/bin/docker-php-entrypoint'
15+
shouldExist: true
16+
permissions: '-rwxr-xr-x'
17+
commandTests:
18+
- name: arch
19+
command: [ "uname", "-m" ]
20+
expectedOutput: [ "aarch64" ]
21+
- name: php-fpm version
22+
command: [ "/usr/local/sbin/php-fpm", "--version" ]
23+
expectedOutput: [ "PHP 8.5" ]
24+
- name: php-fpm-modules
25+
command: [ "/usr/local/sbin/php-fpm", "-m" ]
26+
expectedOutput:
27+
- 'apcu'
28+
- 'cgi-fcgi'
29+
- 'Core'
30+
- 'ctype'
31+
- 'curl'
32+
- 'date'
33+
- 'dom'
34+
- 'exif'
35+
- 'fileinfo'
36+
- 'filter'
37+
- 'gd'
38+
- 'hash'
39+
- 'iconv'
40+
- 'intl'
41+
- 'json'
42+
- 'lexbor'
43+
- 'libxml'
44+
- 'mbstring'
45+
- 'mysqlnd'
46+
- 'openssl'
47+
- 'pcre'
48+
- 'PDO'
49+
- 'pdo_mysql'
50+
- 'Phar'
51+
- 'posix'
52+
- 'readline'
53+
- 'Reflection'
54+
- 'session'
55+
- 'SimpleXML'
56+
- 'sodium'
57+
- 'SPL'
58+
- 'standard'
59+
- 'tokenizer'
60+
- 'uri'
61+
- 'xml'
62+
- 'xmlreader'
63+
- 'xmlwriter'
64+
- 'Zend OPcache'
65+
- 'zip'
66+
- 'zlib'
67+
- name: php-cli version
68+
command: [ "/usr/local/bin/php", "--version" ]
69+
expectedOutput: [ "PHP 8.5" ]
70+
- name: config-files
71+
command: [ "/usr/local/bin/php", "--ini" ]
72+
expectedOutput:
73+
- '/usr/local/etc/php/conf.d/docker-php-ext-apcu.ini'
74+
- '/usr/local/etc/php/conf.d/docker-php-ext-exif.ini'
75+
- '/usr/local/etc/php/conf.d/docker-php-ext-gd.ini'
76+
- '/usr/local/etc/php/conf.d/docker-php-ext-intl.ini'
77+
- '/usr/local/etc/php/conf.d/docker-php-ext-pdo_mysql.ini'
78+
- '/usr/local/etc/php/conf.d/docker-php-ext-sodium.ini'
79+
- '/usr/local/etc/php/conf.d/docker-php-ext-zip.ini'
80+
- name: php-cli extensions
81+
command: [ "/usr/local/bin/php", "-m" ]
82+
expectedOutput:
83+
- 'apcu'
84+
- 'Core'
85+
- 'ctype'
86+
- 'curl'
87+
- 'date'
88+
- 'dom'
89+
- 'exif'
90+
- 'fileinfo'
91+
- 'filter'
92+
- 'gd'
93+
- 'hash'
94+
- 'iconv'
95+
- 'intl'
96+
- 'json'
97+
- 'lexbor'
98+
- 'libxml'
99+
- 'mbstring'
100+
- 'mysqlnd'
101+
- 'openssl'
102+
- 'pcre'
103+
- 'PDO'
104+
- 'pdo_mysql'
105+
- 'Phar'
106+
- 'posix'
107+
- 'readline'
108+
- 'Reflection'
109+
- 'session'
110+
- 'SimpleXML'
111+
- 'sodium'
112+
- 'SPL'
113+
- 'standard'
114+
- 'tokenizer'
115+
- 'uri'
116+
- 'xml'
117+
- 'xmlreader'
118+
- 'xmlwriter'
119+
- 'Zend OPcache'
120+
- 'zip'
121+
- 'zlib'

0 commit comments

Comments
 (0)