Skip to content

Commit df03131

Browse files
joanheyfranz1981
authored andcommitted
[php] Phalcon update to PHP 8.2 (TechEmpower#8089)
* [php] Phalcon update to PHP 8.2 * Move Phalcon Pecl install to reuse docker cache * Update Phalcon mongodb but still broken
1 parent 3924b15 commit df03131

File tree

5 files changed

+28
-25
lines changed

5 files changed

+28
-25
lines changed

frameworks/PHP/phalcon/app/config/config-mongo.php

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?php
22

3-
use Phalcon\Config;
3+
use Phalcon\Config\Config;
44

55
return new Config([
66
'database' => [

frameworks/PHP/phalcon/phalcon-micro.dockerfile

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,20 +6,21 @@ RUN apt-get update -yqq && apt-get install -yqq software-properties-common > /de
66
RUN LC_ALL=C.UTF-8 add-apt-repository ppa:ondrej/php > /dev/null && \
77
apt-get update -yqq > /dev/null && apt-get upgrade -yqq > /dev/null
88

9+
RUN apt-get install -y php-pear php8.2-dev > /dev/null
10+
RUN mkdir -p /etc/php/8.2/fpm/conf.d
11+
RUN pecl install phalcon > /dev/null && echo "extension=phalcon.so" > /etc/php/8.2/fpm/conf.d/phalcon.ini
12+
913
RUN apt-get install -yqq nginx git unzip \
10-
php8.1-cli php8.1-fpm php8.1-mysql php8.1-mbstring php8.1-xml > /dev/null
14+
php8.2-cli php8.2-fpm php8.2-mysql php8.2-mbstring php8.2-xml > /dev/null
1115

1216
COPY --from=composer:latest /usr/bin/composer /usr/local/bin/composer
1317

14-
COPY deploy/conf/* /etc/php/8.1/fpm/
18+
COPY deploy/conf/* /etc/php/8.2/fpm/
1519

1620
ADD ./ /phalcon
1721
WORKDIR /phalcon
1822

19-
RUN apt-get install -y php-pear php8.1-dev > /dev/null
20-
RUN pecl install phalcon > /dev/null && echo "extension=phalcon.so" > /etc/php/8.1/fpm/conf.d/phalcon.ini
21-
22-
RUN if [ $(nproc) = 2 ]; then sed -i "s|pm.max_children = 1024|pm.max_children = 512|g" /etc/php/8.1/fpm/php-fpm.conf ; fi;
23+
RUN if [ $(nproc) = 2 ]; then sed -i "s|pm.max_children = 1024|pm.max_children = 512|g" /etc/php/8.2/fpm/php-fpm.conf ; fi;
2324

2425
RUN composer install --optimize-autoloader --classmap-authoritative --no-dev --ignore-platform-reqs
2526

@@ -29,5 +30,5 @@ RUN chmod -R 777 app
2930

3031
EXPOSE 8080
3132

32-
CMD service php8.1-fpm start && \
33+
CMD service php8.2-fpm start && \
3334
nginx -c /phalcon/deploy/nginx.conf
Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,26 @@
1-
FROM ubuntu:20.04
1+
FROM ubuntu:22.04
22

33
ARG DEBIAN_FRONTEND=noninteractive
44

55
RUN apt-get update -yqq && apt-get install -yqq software-properties-common > /dev/null
66
RUN LC_ALL=C.UTF-8 add-apt-repository ppa:ondrej/php > /dev/null && \
77
apt-get update -yqq > /dev/null && apt-get upgrade -yqq > /dev/null
88

9+
RUN apt-get install -y php-pear php8.2-dev > /dev/null
10+
RUN mkdir -p /etc/php/8.2/fpm/conf.d
11+
RUN pecl install phalcon > /dev/null && echo "extension=phalcon.so" > /etc/php/8.2/fpm/conf.d/phalcon.ini
12+
913
RUN apt-get install -yqq nginx git unzip \
10-
php7.4-cli php7.4-fpm php7.4-mysql php7.4-mbstring php7.4-mongodb > /dev/null
14+
php8.2-cli php8.2-fpm php8.2-mbstring php8.2-xml php8.2-mongodb > /dev/null
1115

1216
COPY --from=composer:latest /usr/bin/composer /usr/local/bin/composer
1317

14-
COPY deploy/conf/* /etc/php/7.4/fpm/
18+
COPY deploy/conf/* /etc/php/8.2/fpm/
1519

1620
ADD ./ /phalcon
1721
WORKDIR /phalcon
1822

19-
RUN if [ $(nproc) = 2 ]; then sed -i "s|pm.max_children = 1024|pm.max_children = 512|g" /etc/php/7.4/fpm/php-fpm.conf ; fi;
20-
21-
RUN apt-get install -yqq php7.4-psr php7.4-phalcon > /dev/null
23+
RUN if [ $(nproc) = 2 ]; then sed -i "s|pm.max_children = 1024|pm.max_children = 512|g" /etc/php/8.2/fpm/php-fpm.conf ; fi;
2224

2325
RUN composer install --optimize-autoloader --classmap-authoritative --no-dev --quiet --ignore-platform-reqs
2426

@@ -28,5 +30,5 @@ RUN chmod -R 777 app
2830

2931
EXPOSE 8080
3032

31-
CMD service php7.4-fpm start && \
33+
CMD service php8.2-fpm start && \
3234
nginx -c /phalcon/deploy/nginx.conf

frameworks/PHP/phalcon/phalcon.dockerfile

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -6,26 +6,27 @@ RUN apt-get update -yqq && apt-get install -yqq software-properties-common > /de
66
RUN LC_ALL=C.UTF-8 add-apt-repository ppa:ondrej/php > /dev/null && \
77
apt-get update -yqq > /dev/null && apt-get upgrade -yqq > /dev/null
88

9+
RUN apt-get install -y php-pear php8.2-dev > /dev/null
10+
RUN mkdir -p /etc/php/8.2/fpm/conf.d
11+
RUN pecl install phalcon > /dev/null && echo "extension=phalcon.so" > /etc/php/8.2/fpm/conf.d/phalcon.ini
12+
913
RUN apt-get install -yqq nginx git unzip \
10-
php8.1-cli php8.1-fpm php8.1-mysql php8.1-mbstring php8.1-xml > /dev/null
14+
php8.2-cli php8.2-fpm php8.2-mysql php8.2-mbstring php8.2-xml > /dev/null
1115

1216
COPY --from=composer:latest /usr/bin/composer /usr/local/bin/composer
1317

14-
COPY deploy/conf/* /etc/php/8.1/fpm/
18+
COPY deploy/conf/* /etc/php/8.2/fpm/
1519

1620
ADD ./ /phalcon
1721
WORKDIR /phalcon
1822

19-
RUN apt-get install -y php-pear php8.1-dev > /dev/null
20-
RUN pecl install phalcon > /dev/null && echo "extension=phalcon.so" > /etc/php/8.1/fpm/conf.d/phalcon.ini
21-
22-
RUN if [ $(nproc) = 2 ]; then sed -i "s|pm.max_children = 1024|pm.max_children = 512|g" /etc/php/8.1/fpm/php-fpm.conf ; fi;
23+
RUN if [ $(nproc) = 2 ]; then sed -i "s|pm.max_children = 1024|pm.max_children = 512|g" /etc/php/8.2/fpm/php-fpm.conf ; fi;
2324

2425
RUN composer install --optimize-autoloader --classmap-authoritative --no-dev --ignore-platform-reqs
2526

2627
RUN chmod -R 777 app
2728

2829
EXPOSE 8080
2930

30-
CMD service php8.1-fpm start && \
31+
CMD service php8.2-fpm start && \
3132
nginx -c /phalcon/deploy/nginx.conf

frameworks/PHP/phalcon/public/index-mongo.php

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,9 @@
33
use MongoDB\Client;
44
use Phalcon\Db\Adapter\Pdo\Mysql;
55
use Phalcon\DI\FactoryDefault;
6-
use Phalcon\Exception as PhalconException;
76
use Phalcon\Http\Request;
87
use Phalcon\Incubator\MongoDB\Mvc\Collection\Manager as MongoDBCollectionManager;
9-
use Phalcon\Loader;
8+
use Phalcon\Autoload\Loader;
109
use Phalcon\Mvc\Application;
1110
use Phalcon\Mvc\Model\MetaData\Apc;
1211
use Phalcon\Mvc\Model\MetaData\Memory;
@@ -22,7 +21,7 @@
2221

2322
// Register an autoloader
2423
$loader = new Loader();
25-
$loader->registerDirs([
24+
$loader->setDirectories([
2625
$config->application->controllersDir,
2726
$config->application->modelsDir,
2827
$config->application->collectionsDir,

0 commit comments

Comments
 (0)