From 30b29ca3ef33730578c1c02ff7e896cb11a12a94 Mon Sep 17 00:00:00 2001
From: Alan Nelson <alan.nelson@nebraska.edu>
Date: Fri, 17 Mar 2023 11:11:10 -0500
Subject: [PATCH] Create containers for PHP 8.2

---
 Makefile                     | 18 ++++++++++++------
 php-lint/8.2/Dockerfile      | 21 +++++++++++++++++++++
 php-unit-test/8.2/Dockerfile | 25 +++++++++++++++++++++++++
 3 files changed, 58 insertions(+), 6 deletions(-)
 create mode 100644 php-lint/8.2/Dockerfile
 create mode 100644 php-unit-test/8.2/Dockerfile

diff --git a/Makefile b/Makefile
index 61eb9fb..69a643d 100644
--- a/Makefile
+++ b/Makefile
@@ -24,8 +24,8 @@ all: php-lint php-unit-test mobile static-code-analysis utility detect-secrets d
 
 # Image Groups
 ####################
-php-lint: php-lint_5.6 php-lint_7.0 php-lint_7.1 php-lint_7.2 php-lint_7.3 php-lint_7.4 php-lint_8.0 php-lint_latest
-php-unit-test: php-unit-test_5.6 php-unit-test_7.0 php-unit-test_7.1 php-unit-test_7.2 php-unit-test_7.3 php-unit-test_7.4 php-unit-test_8.0 php-unit-test_latest
+php-lint: php-lint_5.6 php-lint_7.0 php-lint_7.1 php-lint_7.2 php-lint_7.3 php-lint_7.4 php-lint_8.0 php-lint_8.1 php-lint_8.2 php-lint_latest
+php-unit-test: php-unit-test_5.6 php-unit-test_7.0 php-unit-test_7.1 php-unit-test_7.2 php-unit-test_7.3 php-unit-test_7.4 php-unit-test_8.0 php-unit-test_8.1 php-unit-test_8.2 php-unit-test_latest
 mobile: android-build-server
 static-code-analysis: static-code-analysis_latest static-code-analysys_php static-code-analysys_python static-code-analysys_android
 utility: alpine-ssh-client merge-request-check
@@ -57,8 +57,11 @@ php-lint_8.0: php-lint/8.0/Dockerfile
 php-lint_8.1: php-lint/8.1/Dockerfile
 	docker build $(BUILD_ARGS) -t ${REPO_ORG}/php-lint:8.1 -f php-lint/8.1/Dockerfile php-lint
 
-php-lint_latest: php-lint_8.1
-	docker tag  ${REPO_ORG}/php-lint:8.1 ${REPO_ORG}/php-lint:latest
+php-lint_8.2: php-lint/8.2/Dockerfile
+	docker build $(BUILD_ARGS) -t ${REPO_ORG}/php-lint:8.2 -f php-lint/8.2/Dockerfile php-lint
+
+php-lint_latest: php-lint_8.2
+	docker tag  ${REPO_ORG}/php-lint:8.2 ${REPO_ORG}/php-lint:latest
 
 # PHP Unit Test Images
 ####################
@@ -86,8 +89,11 @@ php-unit-test_8.0: php-unit-test/8.0/Dockerfile
 php-unit-test_8.1: php-unit-test/8.1/Dockerfile
 	docker build $(BUILD_ARGS) -t ${REPO_ORG}/php-unit-test:8.1 -f php-unit-test/8.1/Dockerfile php-unit-test
 
-php-unit-test_latest: php-unit-test_8.1
-	docker tag ${REPO_ORG}/php-unit-test:8.1 ${REPO_ORG}/php-unit-test:latest
+php-unit-test_8.2: php-unit-test/8.2/Dockerfile
+	docker build $(BUILD_ARGS) -t ${REPO_ORG}/php-unit-test:8.2 -f php-unit-test/8.2/Dockerfile php-unit-test
+
+php-unit-test_latest: php-unit-test_8.2
+	docker tag ${REPO_ORG}/php-unit-test:8.2 ${REPO_ORG}/php-unit-test:latest
 
 # Mobile Applications
 ####################
diff --git a/php-lint/8.2/Dockerfile b/php-lint/8.2/Dockerfile
new file mode 100644
index 0000000..0878a66
--- /dev/null
+++ b/php-lint/8.2/Dockerfile
@@ -0,0 +1,21 @@
+FROM php:8.2-alpine
+
+ARG BUILD_DATE
+ARG VCS_REF
+ARG VERSION
+LABEL org.label-schema.build-date=$BUILD_DATE \
+      org.label-schema.name="PHP 8.2 linter" \
+      org.label-schema.description="" \
+      org.label-schema.vcs-ref=$VCS_REF \
+      org.label-schema.vendor="University of Nebraska - Lincoln" \
+      org.label-schema.version=$VERSION \
+      org.label-schema.schema-version="1.0" \
+      maintainer="Alan Nelson <alan.nelson@nebraska.edu>"
+
+RUN apk add --no-cache bash
+
+COPY php-lint docker-entrypoint /usr/local/bin/
+RUN chmod 755 /usr/local/bin/docker-entrypoint /usr/local/bin/php-lint
+
+ENTRYPOINT ["docker-entrypoint"]
+CMD ["--help"]
diff --git a/php-unit-test/8.2/Dockerfile b/php-unit-test/8.2/Dockerfile
new file mode 100644
index 0000000..fa6012d
--- /dev/null
+++ b/php-unit-test/8.2/Dockerfile
@@ -0,0 +1,25 @@
+FROM php:8.2-alpine
+
+ARG BUILD_DATE
+ARG VCS_REF
+ARG VERSION
+LABEL org.label-schema.build-date=$BUILD_DATE \
+      org.label-schema.name="PHP 8.2 Unit Tester" \
+      org.label-schema.description="" \
+      org.label-schema.vcs-ref=$VCS_REF \
+      org.label-schema.vendor="University of Nebraska - Lincoln" \
+      org.label-schema.version=$VERSION \
+      org.label-schema.schema-version="1.0" \
+      maintainer="Alan Nelson <alan.nelson@nebraska.edu>"
+
+RUN export BUILD_DEPS="bzip2-dev icu-dev libpng-dev libzip-dev openldap-dev" \
+    && apk add --no-cache bash nodejs npm $PHPIZE_DEPS $BUILD_DEPS \
+    && pecl channel-update pecl.php.net \
+    && pecl install xdebug redis \
+    && docker-php-ext-install bz2 gd intl ldap mysqli pdo_mysql zip \
+    && docker-php-ext-enable xdebug redis \
+    && apk del --no-cache $PHPIZE_DEPS
+RUN curl -o /usr/local/bin/composer https://getcomposer.org/composer.phar \
+  && chmod 755 /usr/local/bin/composer
+
+CMD ["bash"]
-- 
GitLab