From a32a769990c1e5ebfd7ddbcbfc9c102f6639003a Mon Sep 17 00:00:00 2001
From: Jan-Hendrik Willms <tleilax+studip@gmail.com>
Date: Wed, 12 Jun 2024 11:51:48 +0000
Subject: [PATCH] increase node version to >= 18, fixes #4285

Closes #4285

Merge request studip/studip!3102
---
 .gitlab-ci.yml                | 2 +-
 docker/studip/Dockerfile      | 2 +-
 docker/tests/php74/Dockerfile | 4 ++--
 docker/tests/php81/Dockerfile | 2 +-
 docker/tests/php82/Dockerfile | 2 +-
 docker/tests/php83/Dockerfile | 2 +-
 package.json                  | 2 +-
 7 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 1a5b71e2378..2a95a53c907 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -17,7 +17,7 @@ variables:
   # Use faster docker driver
   DOCKER_DRIVER: overlay2
   # Images
-  NODE_IMAGE: node:16-slim
+  NODE_IMAGE: node:18-slim
   # Directories
   CACHE_DIR: .caches
   REPORT_DIR: .reports
diff --git a/docker/studip/Dockerfile b/docker/studip/Dockerfile
index 0689c3acd67..fe9fc8cb086 100644
--- a/docker/studip/Dockerfile
+++ b/docker/studip/Dockerfile
@@ -19,7 +19,7 @@ RUN apt update && apt install -y --no-install-recommends \
 RUN docker-php-ext-configure gd --with-jpeg --with-webp
 RUN docker-php-ext-install gettext gd zip pdo_mysql mysqli intl
 
-FROM node:16 as nodejs
+FROM node:18 as nodejs
 
 # Install node modules
 COPY . /studip
diff --git a/docker/tests/php74/Dockerfile b/docker/tests/php74/Dockerfile
index b982414bca7..17d404aa108 100644
--- a/docker/tests/php74/Dockerfile
+++ b/docker/tests/php74/Dockerfile
@@ -14,8 +14,8 @@ RUN apt update && apt install -y  --no-install-recommends \
 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
-RUN curl -sL https://deb.nodesource.com/setup_16.x | bash -
+# Install node
+RUN curl -sL https://deb.nodesource.com/setup_18.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/*
diff --git a/docker/tests/php81/Dockerfile b/docker/tests/php81/Dockerfile
index 7d0478e72f9..ceb1d2d337b 100644
--- a/docker/tests/php81/Dockerfile
+++ b/docker/tests/php81/Dockerfile
@@ -16,7 +16,7 @@ RUN docker-php-ext-configure gd --with-jpeg=/usr/include/ --with-webp
 RUN docker-php-ext-install -j$(nproc) gd gettext intl mysqli pdo pdo_mysql zip
 
 # Install node/npm
-COPY --from=node:16-slim /usr/local/bin /usr/local/bin
+COPY --from=node:18-slim /usr/local/bin /usr/local/bin
 
 # Install composer
 COPY --from=composer /usr/bin/composer /usr/bin/composer
diff --git a/docker/tests/php82/Dockerfile b/docker/tests/php82/Dockerfile
index c8abd9de79f..eee9aad0024 100644
--- a/docker/tests/php82/Dockerfile
+++ b/docker/tests/php82/Dockerfile
@@ -16,7 +16,7 @@ RUN docker-php-ext-configure gd --with-jpeg=/usr/include/ --with-webp
 RUN docker-php-ext-install -j$(nproc) gd gettext intl mysqli pdo pdo_mysql zip
 
 # Install node/npm
-COPY --from=node:16-slim /usr/local/bin /usr/local/bin
+COPY --from=node:18-slim /usr/local/bin /usr/local/bin
 
 # Install composer
 COPY --from=composer /usr/bin/composer /usr/bin/composer
diff --git a/docker/tests/php83/Dockerfile b/docker/tests/php83/Dockerfile
index 68d1764dee7..b93795ae4f0 100644
--- a/docker/tests/php83/Dockerfile
+++ b/docker/tests/php83/Dockerfile
@@ -16,7 +16,7 @@ RUN docker-php-ext-configure gd --with-jpeg=/usr/include/ --with-webp
 RUN docker-php-ext-install -j$(nproc) gd gettext intl mysqli pdo_mysql zip
 
 # Install node/npm
-COPY --from=node:16-slim /usr/local/bin /usr/local/bin
+COPY --from=node:18-slim /usr/local/bin /usr/local/bin
 
 # Install composer
 COPY --from=composer /usr/bin/composer /usr/bin/composer
diff --git a/package.json b/package.json
index 3d382e5aa1a..16574bf6641 100644
--- a/package.json
+++ b/package.json
@@ -16,7 +16,7 @@
         "url": "https://develop.studip.de/svn/studip"
     },
     "engines": {
-        "node": ">=16"
+        "node": ">=18"
     },
     "devDependencies": {
         "@axe-core/playwright": "^4.6.1",
-- 
GitLab