summaryrefslogtreecommitdiff
path: root/utilities/testrunners
diff options
context:
space:
mode:
authorSimon Wisselink <wisskid@users.noreply.github.com>2022-07-14 23:50:22 +0200
committerGitHub <noreply@github.com>2022-07-14 23:50:22 +0200
commit44bac8d58c75adf0be771d29afeab6e5923e9856 (patch)
treecc38d92e9f14aa8e60a5633d6850cc47418a5398 /utilities/testrunners
parentf8e1ba76f77e17ec7b364b2922d350990ead7168 (diff)
downloadsmarty-44bac8d58c75adf0be771d29afeab6e5923e9856.tar.gz
smarty-44bac8d58c75adf0be771d29afeab6e5923e9856.tar.bz2
smarty-44bac8d58c75adf0be771d29afeab6e5923e9856.zip
add local testrunners for all supported PHP versions using docker. (#770)
Diffstat (limited to 'utilities/testrunners')
-rw-r--r--utilities/testrunners/php71/Dockerfile10
-rw-r--r--utilities/testrunners/php72/Dockerfile10
-rw-r--r--utilities/testrunners/php73/Dockerfile10
-rw-r--r--utilities/testrunners/php74/Dockerfile10
-rw-r--r--utilities/testrunners/php80/Dockerfile10
-rw-r--r--utilities/testrunners/php81/Dockerfile10
-rwxr-xr-xutilities/testrunners/run-test.sh2
-rw-r--r--utilities/testrunners/shared/install-composer.sh17
8 files changed, 79 insertions, 0 deletions
diff --git a/utilities/testrunners/php71/Dockerfile b/utilities/testrunners/php71/Dockerfile
new file mode 100644
index 00000000..2ae6c1ae
--- /dev/null
+++ b/utilities/testrunners/php71/Dockerfile
@@ -0,0 +1,10 @@
+FROM php:7.1-cli
+
+## Basic utilities
+RUN apt-get update -yqq && apt-get install -y curl apt-utils git zip unzip
+
+## Composer
+COPY ./utilities/testrunners/shared/install-composer.sh /root/install-composer.sh
+WORKDIR /root
+RUN sh ./install-composer.sh
+RUN mv ./composer.phar /usr/local/bin/composer
diff --git a/utilities/testrunners/php72/Dockerfile b/utilities/testrunners/php72/Dockerfile
new file mode 100644
index 00000000..25f1688d
--- /dev/null
+++ b/utilities/testrunners/php72/Dockerfile
@@ -0,0 +1,10 @@
+FROM php:7.2-cli
+
+## Basic utilities
+RUN apt-get update -yqq && apt-get install -y curl apt-utils git zip unzip
+
+## Composer
+COPY ./utilities/testrunners/shared/install-composer.sh /root/install-composer.sh
+WORKDIR /root
+RUN sh ./install-composer.sh
+RUN mv ./composer.phar /usr/local/bin/composer
diff --git a/utilities/testrunners/php73/Dockerfile b/utilities/testrunners/php73/Dockerfile
new file mode 100644
index 00000000..e276bdcd
--- /dev/null
+++ b/utilities/testrunners/php73/Dockerfile
@@ -0,0 +1,10 @@
+FROM php:7.3-cli
+
+## Basic utilities
+RUN apt-get update -yqq && apt-get install -y curl apt-utils git zip unzip
+
+## Composer
+COPY ./utilities/testrunners/shared/install-composer.sh /root/install-composer.sh
+WORKDIR /root
+RUN sh ./install-composer.sh
+RUN mv ./composer.phar /usr/local/bin/composer
diff --git a/utilities/testrunners/php74/Dockerfile b/utilities/testrunners/php74/Dockerfile
new file mode 100644
index 00000000..d6fb4c39
--- /dev/null
+++ b/utilities/testrunners/php74/Dockerfile
@@ -0,0 +1,10 @@
+FROM php:7.4-cli
+
+## Basic utilities
+RUN apt-get update -yqq && apt-get install -y curl apt-utils git zip unzip
+
+## Composer
+COPY ./utilities/testrunners/shared/install-composer.sh /root/install-composer.sh
+WORKDIR /root
+RUN sh ./install-composer.sh
+RUN mv ./composer.phar /usr/local/bin/composer
diff --git a/utilities/testrunners/php80/Dockerfile b/utilities/testrunners/php80/Dockerfile
new file mode 100644
index 00000000..ae440e9d
--- /dev/null
+++ b/utilities/testrunners/php80/Dockerfile
@@ -0,0 +1,10 @@
+FROM php:8.0-cli
+
+## Basic utilities
+RUN apt-get update -yqq && apt-get install -y curl apt-utils git zip unzip
+
+## Composer
+COPY ./utilities/testrunners/shared/install-composer.sh /root/install-composer.sh
+WORKDIR /root
+RUN sh ./install-composer.sh
+RUN mv ./composer.phar /usr/local/bin/composer
diff --git a/utilities/testrunners/php81/Dockerfile b/utilities/testrunners/php81/Dockerfile
new file mode 100644
index 00000000..46f99559
--- /dev/null
+++ b/utilities/testrunners/php81/Dockerfile
@@ -0,0 +1,10 @@
+FROM php:8.1-cli
+
+## Basic utilities
+RUN apt-get update -yqq && apt-get install -y curl apt-utils git zip unzip
+
+## Composer
+COPY ./utilities/testrunners/shared/install-composer.sh /root/install-composer.sh
+WORKDIR /root
+RUN sh ./install-composer.sh
+RUN mv ./composer.phar /usr/local/bin/composer
diff --git a/utilities/testrunners/run-test.sh b/utilities/testrunners/run-test.sh
new file mode 100755
index 00000000..cca96f5e
--- /dev/null
+++ b/utilities/testrunners/run-test.sh
@@ -0,0 +1,2 @@
+#!/bin/sh
+composer update && php ./vendor/phpunit/phpunit/phpunit
diff --git a/utilities/testrunners/shared/install-composer.sh b/utilities/testrunners/shared/install-composer.sh
new file mode 100644
index 00000000..585031d9
--- /dev/null
+++ b/utilities/testrunners/shared/install-composer.sh
@@ -0,0 +1,17 @@
+#!/bin/sh
+
+EXPECTED_CHECKSUM="$(php -r 'copy("https://composer.github.io/installer.sig", "php://stdout");')"
+php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
+ACTUAL_CHECKSUM="$(php -r "echo hash_file('sha384', 'composer-setup.php');")"
+
+if [ "$EXPECTED_CHECKSUM" != "$ACTUAL_CHECKSUM" ]
+then
+ >&2 echo 'ERROR: Invalid installer checksum'
+ rm composer-setup.php
+ exit 1
+fi
+
+php composer-setup.php --quiet
+RESULT=$?
+rm composer-setup.php
+exit $RESULT \ No newline at end of file