From 42c0c78e8acc31a8c5817f5c183a32c24d2d8d3d Mon Sep 17 00:00:00 2001 From: Michael Vasseur <14887731+vmcj@users.noreply.github.com> Date: Sun, 30 Nov 2025 09:36:55 +0100 Subject: [PATCH 1/4] Allow development with PHP85 --- docker-contributor/Dockerfile | 4 ++-- docker-gitlabci/Dockerfile | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docker-contributor/Dockerfile b/docker-contributor/Dockerfile index e911e576..13491765 100644 --- a/docker-contributor/Dockerfile +++ b/docker-contributor/Dockerfile @@ -14,8 +14,8 @@ ENV DEBIAN_FRONTEND=noninteractive \ FPM_MAX_CHILDREN=40 \ DJ_SKIP_MAKE=0 \ DJ_DB_INSTALL_BARE=0 \ - PHPSUPPORTED="8.1 8.2 8.3 8.4" \ - DEFAULTPHPVERSION="8.4" \ + PHPSUPPORTED="8.1 8.2 8.3 8.4 8.5" \ + DEFAULTPHPVERSION="8.5" \ DEFAULTWEBSERVER="nginx" \ APTINSTALL="apt-get install -y -o Dpkg::Options::=--force-confdef -o Dpkg::Options::=--force-confold" diff --git a/docker-gitlabci/Dockerfile b/docker-gitlabci/Dockerfile index a474fbec..0074d5c8 100644 --- a/docker-gitlabci/Dockerfile +++ b/docker-gitlabci/Dockerfile @@ -1,6 +1,6 @@ FROM ubuntu:24.04 ENV DEBIAN_FRONTEND=noninteractive -ENV PHPSUPPORTED="7.4 8.0 8.1 8.2 8.4" +ENV PHPSUPPORTED="7.4 8.0 8.1 8.2 8.4 8.5" ENV APTINSTALL="apt-get install -y -o Dpkg::Options::=--force-confdef -o Dpkg::Options::=--force-confold" RUN useradd -m domjudge RUN useradd -d /nonexistent -g nogroup -s /bin/false domjudge-run-0 From 3571fa0e303205886d4eb6ef0e7cbfefde1246cb Mon Sep 17 00:00:00 2001 From: Michael Vasseur <14887731+vmcj@users.noreply.github.com> Date: Sun, 30 Nov 2025 09:37:12 +0100 Subject: [PATCH 2/4] Blackfire is now available for PHP8.{4,5} --- docker-contributor/Dockerfile | 21 +++++++++------------ 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/docker-contributor/Dockerfile b/docker-contributor/Dockerfile index 13491765..0202eb16 100644 --- a/docker-contributor/Dockerfile +++ b/docker-contributor/Dockerfile @@ -95,18 +95,15 @@ RUN for VERSION in $PHPSUPPORTED; do \ # Install blackfire probe RUN for VERSION in $PHPSUPPORTED; do \ - # Blackfire is not available yet for PHP 8.4 - if [ "${VERSION}" != "8.4" ]; then \ - version=$(php${VERSION} -r "echo PHP_MAJOR_VERSION.PHP_MINOR_VERSION.(PHP_ZTS ? '-zts' : '');") \ - && architecture=$(uname -m) \ - && curl -v -A "Docker" -o /tmp/blackfire-probe.tar.gz -D - -L -s https://blackfire.io/api/v1/releases/probe/php/linux/$architecture/$version \ - && mkdir -p /tmp/blackfire \ - && tar zxpf /tmp/blackfire-probe.tar.gz -C /tmp/blackfire \ - && mv /tmp/blackfire/blackfire-*.so $(php${VERSION} -r "echo ini_get ('extension_dir');")/blackfire.so \ - && printf "extension=blackfire.so\nblackfire.agent_socket=tcp://blackfire:8307\n" > /etc/php/${VERSION}/fpm/conf.d/blackfire.ini \ - && printf "extension=blackfire.so\nblackfire.agent_socket=tcp://blackfire:8307\n" > /etc/php/${VERSION}/cli/conf.d/blackfire.ini \ - && rm -rf /tmp/blackfire /tmp/blackfire-probe.tar.gz; \ - fi; \ + version=$(php${VERSION} -r "echo PHP_MAJOR_VERSION.PHP_MINOR_VERSION.(PHP_ZTS ? '-zts' : '');") \ + && architecture=$(uname -m) \ + && curl -v -A "Docker" -o /tmp/blackfire-probe.tar.gz -D - -L -s https://blackfire.io/api/v1/releases/probe/php/linux/$architecture/$version \ + && mkdir -p /tmp/blackfire \ + && tar zxpf /tmp/blackfire-probe.tar.gz -C /tmp/blackfire \ + && mv /tmp/blackfire/blackfire-*.so $(php${VERSION} -r "echo ini_get ('extension_dir');")/blackfire.so \ + && printf "extension=blackfire.so\nblackfire.agent_socket=tcp://blackfire:8307\n" > /etc/php/${VERSION}/fpm/conf.d/blackfire.ini \ + && printf "extension=blackfire.so\nblackfire.agent_socket=tcp://blackfire:8307\n" > /etc/php/${VERSION}/cli/conf.d/blackfire.ini \ + && rm -rf /tmp/blackfire /tmp/blackfire-probe.tar.gz; \ done # Disable Xdebug by default From 2e740da19fe1e821e54878ae70d9ead1250cde9a Mon Sep 17 00:00:00 2001 From: Michael Vasseur <14887731+vmcj@users.noreply.github.com> Date: Sun, 30 Nov 2025 09:42:39 +0100 Subject: [PATCH 3/4] Our lowest supported DJ version needs 8.1 This saves so much valuable space, and might speedup starting the CI jobs. --- docker-gitlabci/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docker-gitlabci/Dockerfile b/docker-gitlabci/Dockerfile index 0074d5c8..b38a2cab 100644 --- a/docker-gitlabci/Dockerfile +++ b/docker-gitlabci/Dockerfile @@ -1,6 +1,6 @@ FROM ubuntu:24.04 ENV DEBIAN_FRONTEND=noninteractive -ENV PHPSUPPORTED="7.4 8.0 8.1 8.2 8.4 8.5" +ENV PHPSUPPORTED="8.1 8.2 8.4 8.5" ENV APTINSTALL="apt-get install -y -o Dpkg::Options::=--force-confdef -o Dpkg::Options::=--force-confold" RUN useradd -m domjudge RUN useradd -d /nonexistent -g nogroup -s /bin/false domjudge-run-0 From a8d5262508c9ae935ce28db68cf67e1ef82c6156 Mon Sep 17 00:00:00 2001 From: Michael Vasseur <14887731+vmcj@users.noreply.github.com> Date: Sun, 30 Nov 2025 10:10:18 +0100 Subject: [PATCH 4/4] Remove redis for Symfony upgrade See: https://github.com/DOMjudge/domjudge/pull/3240 --- docker-gitlabci/Dockerfile | 1 + 1 file changed, 1 insertion(+) diff --git a/docker-gitlabci/Dockerfile b/docker-gitlabci/Dockerfile index b38a2cab..0f7f6d95 100644 --- a/docker-gitlabci/Dockerfile +++ b/docker-gitlabci/Dockerfile @@ -28,6 +28,7 @@ RUN apt-get update && apt-get install -y \ npm \ # Code coverage for unit test \ php-pear php-dev \ + && apt purge php8.3-redis \ && rm -rf /var/lib/apt/lists/* # Install needed NPM packages and download chrome for the domjudge user