From 1993c6d18bd593e9679952f00500afdaaa8cafae Mon Sep 17 00:00:00 2001
From: Jan-Hendrik Willms <tleilax+studip@gmail.com>
Date: Thu, 4 Apr 2024 07:54:27 +0000
Subject: [PATCH] fixes #3935

Closes #3935

Merge request studip/studip!2790
---
 .gitlab-ci.yml                |  2 +-
 docker/build_images.sh        |  1 +
 docker/tests/php74/Dockerfile |  3 ++-
 docker/tests/php82/Dockerfile |  3 ++-
 docker/tests/php83/Dockerfile | 24 ++++++++++++++++++++++++
 5 files changed, 30 insertions(+), 3 deletions(-)
 mode change 100644 => 100755 docker/build_images.sh
 create mode 100644 docker/tests/php83/Dockerfile

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index d97565e9e8b..71720079057 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,4 +1,4 @@
-image: studip/studip:tests-php8.2
+image: studip/studip:tests-php8.3
 
 variables:
   FF_NETWORK_PER_BUILD: 1
diff --git a/docker/build_images.sh b/docker/build_images.sh
old mode 100644
new mode 100755
index f8feb9f9a59..c5f32f4a998
--- a/docker/build_images.sh
+++ b/docker/build_images.sh
@@ -9,6 +9,7 @@ build_image () {
   fi
 }
 
+build_image tests/php83 studip:tests-php8.3 &
 build_image tests/php82 studip:tests-php8.2 &
 build_image tests/php74 studip:tests-php7.4 &
 build_image release-cli release-cli &
diff --git a/docker/tests/php74/Dockerfile b/docker/tests/php74/Dockerfile
index 49149a956bf..b982414bca7 100644
--- a/docker/tests/php74/Dockerfile
+++ b/docker/tests/php74/Dockerfile
@@ -7,10 +7,11 @@ RUN apt update && apt install -y  --no-install-recommends \
     lsb-release \
     zip \
     tar \
+    libwebp-dev \
     && rm -rf /var/lib/apt/lists/*
 
 # Install php extensions
-RUN docker-php-ext-configure gd --with-jpeg
+RUN docker-php-ext-configure gd --with-jpeg --with-webp
 RUN docker-php-ext-install pdo gettext curl gd mbstring zip pdo pdo_mysql mysqli intl json
 
 # Install npm using nvm
diff --git a/docker/tests/php82/Dockerfile b/docker/tests/php82/Dockerfile
index f1a5793af72..27ffb6484af 100644
--- a/docker/tests/php82/Dockerfile
+++ b/docker/tests/php82/Dockerfile
@@ -7,10 +7,11 @@ RUN apt update && apt install -y  --no-install-recommends \
     lsb-release \
     zip \
     tar \
+    libwebp-dev \
     && rm -rf /var/lib/apt/lists/*
 
 # Install php extensions
-RUN docker-php-ext-configure gd --with-jpeg=/usr/include/
+RUN docker-php-ext-configure gd --with-jpeg=/usr/include/ --with-webp
 RUN docker-php-ext-install -j$(nproc) pdo gettext curl gd mbstring zip pdo pdo_mysql mysqli intl
 
 # Install npm using nvm
diff --git a/docker/tests/php83/Dockerfile b/docker/tests/php83/Dockerfile
new file mode 100644
index 00000000000..a25e83095ab
--- /dev/null
+++ b/docker/tests/php83/Dockerfile
@@ -0,0 +1,24 @@
+# Setup php, apache and stud.ip
+FROM php:8.3-cli
+
+# Install system requirements
+RUN apt update && apt install -y  --no-install-recommends \
+    default-mysql-client default-libmysqlclient-dev libcurl4-openssl-dev zlib1g-dev libpng-dev libjpeg-dev libonig-dev libzip-dev libicu-dev \
+    lsb-release \
+    zip \
+    tar \
+    libwebp-dev \
+    && rm -rf /var/lib/apt/lists/*
+
+# Install php extensions
+RUN docker-php-ext-configure gd --with-jpeg=/usr/include/ --with-webp
+RUN docker-php-ext-install -j$(nproc) pdo gettext curl gd mbstring zip pdo pdo_mysql mysqli intl
+
+# Install npm using nvm
+RUN curl -sL https://deb.nodesource.com/setup_16.x | bash -
+RUN apt update && apt install -y --no-install-recommends nodejs \
+        curl apt-transport-https ca-certificates gnupg unzip git \
+    && rm -rf /var/lib/apt/lists/*
+
+# Install composer
+COPY --from=composer /usr/bin/composer /usr/bin/composer
-- 
GitLab