diff --git a/.ansible/group_vars/all/slim.yml b/.ansible/group_vars/all/slim.yml index 8279346..c4aa9aa 100644 --- a/.ansible/group_vars/all/slim.yml +++ b/.ansible/group_vars/all/slim.yml @@ -77,6 +77,7 @@ base_software_enabled: - dig # required by Devilbox Intranet - netcat # required by Devilbox Intranet - ping # required by Devilbox Intranet + - sudo # required by /etc/sudoers.d/devilbox config file - blackfire - mhsendmail - mongo_client @@ -283,6 +284,15 @@ base_software_available: type: apt package: iputils-ping + ### + ### sudo + ### + sudo: + check: sudo --version | grep -E 'version [0-9]+\.[0-9]+' + all: + type: apt + package: sudo + ### ### Blackfire ### diff --git a/.ansible/group_vars/all/work.yml b/.ansible/group_vars/all/work.yml index e5e2147..627c70d 100644 --- a/.ansible/group_vars/all/work.yml +++ b/.ansible/group_vars/all/work.yml @@ -18,9 +18,11 @@ tools_enabled: - gulp - jq - laravel-installer + - laravel-lumen - linkcheck - - lumen - mdlint + - mupdf-tools + - phalcon-devtools - php-cs-fixer - phpcbf - phpcs @@ -28,15 +30,20 @@ tools_enabled: - phpunit - pm2 - pwncat + - ssh + - rsync - sass - shellcheck - stylelint + - svn - symfony-cli + - tig - vue-cli - webpack-cli - wp-cli - yamllint - yq + - zsh # The following specifies how tools are being installed. @@ -242,7 +249,7 @@ tools_available: package: jq laravel-installer: disabled: [5.2, 5.3] - check: laravel --version | grep -E '^Laravel Installer\s[0-9][.0-9]+$' || (laravel --version; false) + check: laravel --version | grep version | grep -E '[0-9]\.[0-9]+' || (laravel --version; false) all: type: composer composer: 2 @@ -275,18 +282,9 @@ tools_available: type: composer binary: laravel version: 1.3.7 - linkcheck: - disabled: [] - check: linkcheck --version | grep -E 'v[0-9][.0-9]+' || (linkcheck --version; false) - all: - type: custom - command: curl -sS -L --fail -o /usr/local/bin/linkcheck https://raw.githubusercontent.com/cytopia/linkcheck/master/linkcheck - post: chmod +x /usr/local/bin/linkcheck - build_dep: [] - run_dep: [] - lumen: + laravel-lumen: disabled: [5.2, 5.3, 5.4] - check: lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[0-9][.0-9]+$' || (lumen --version; false) + check: lumen --version 2>/dev/null | grep ^Lumen | grep -E '[0-9]\.[0-9]+' || (lumen --version; false) all: type: composer composer: 2 @@ -298,6 +296,15 @@ tools_available: run_dep: [] # pre: # post: + linkcheck: + disabled: [] + check: linkcheck --version | grep -E 'v[0-9][.0-9]+' || (linkcheck --version; false) + all: + type: custom + command: curl -sS -L --fail -o /usr/local/bin/linkcheck https://raw.githubusercontent.com/cytopia/linkcheck/master/linkcheck + post: chmod +x /usr/local/bin/linkcheck + build_dep: [] + run_dep: [] mdlint: disabled: [] check: mdlint --version | grep -E '[0-9][.0-9]+' || (mdlint --version; false) @@ -310,8 +317,72 @@ tools_available: run_dep: [] pre: post: + mupdf-tools: + disabled: [] + check: | + echo test > test.txt \ + && mutool create -o test.pdf test.txt \ + && file test.pdf | gre 'PDF document' \ + && rm test.txt \ + && rm test.pdf \ + all: + type: apt + package: mupdf-tools + phalcon-devtools: + disabled: [5.2, 5.3, 5.4, 8.2] + check: | + if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \ + echo "extension=phalcon.so" > /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if find /usr/local/lib/php/extensions/ -name psr.so | grep psr; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + \ + && phalcon commands | grep -E '[0-9][.0-9]+' || (phalcon commands; false) \ + \ + \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini ]; then \ + rm /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-psr.ini ]; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + all: + type: composer + composer: 2 + package: phalcon/devtools + binary: phalcon + # Enable phalcon.so (and its requirement psr prior installing) + pre: | + if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \ + echo "extension=phalcon.so" > /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if find /usr/local/lib/php/extensions/ -name psr.so | grep psr; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + # Disable phalcon.so (and its requirement psr after installing) + post: | + if [ -f /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini ]; then \ + rm /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-psr.ini ]; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + 7.1: + type: composer + version: 3.4.11 + 7.0: + type: composer + version: 3.4.11 + 5.6: + type: composer + version: 3.4.11 + 5.5: + type: composer + version: 3.4.11 php-cs-fixer: - disabled: [5.2] + disabled: [5.2, 8.2] check: php-cs-fixer --version 2>&1 | grep -E 'Fixer\s+(version\s*)?[-_.0-9]+\s+' || (php-cs-fixer --version; false) all: type: custom @@ -437,6 +508,18 @@ tools_available: pre: post: | ln -s pwncat /usr/local/bin/netcat \ + ssh: + disabled: [] + check: ssh -V 2>&1 | grep ^OpenSSH || (ssh -V; false) + all: + type: apt + package: openssh-client + rsync: + disabled: [] + check: rsync --version | grep version | grep -E '[0-9]\.[0-9]+' || (rsync --version; false) + all: + type: apt + package: rsync sass: disabled: [] check: sass --version | grep -E '[0-9][.0-9]+' || (sass --version; false) @@ -467,6 +550,12 @@ tools_available: run_dep: [] pre: post: + svn: + disabled: [] + check: svn --version | grep version | grep -E '[0-9]+\.[0-9]+' || (svn --version; false) + all: + type: apt + package: subversion symfony-cli: disabled: [] check: symfony --no-ansi -V | grep -E 'version [0-9][.0-9]+' || (symfony --no-ansi -V; false) @@ -475,6 +564,12 @@ tools_available: command: curl -sS https://get.symfony.com/cli/installer | bash -s -- --install-dir /usr/local/bin build_dep: [] run_dep: [] + tig: + disabled: [] + check: tig --version 2>&1 | grep -E '[0-9][.0-9]+' || (tig --version; false) + all: + type: apt + package: tig vue-cli: disabled: [] check: vue --version | grep -E '[0-9][.0-9]+' || (vue --version; false) @@ -538,3 +633,9 @@ tools_available: run_dep: [] pre: post: + zsh: + disabled: [] + check: zsh --version 2>&1 | grep -E '[0-9][.0-9]+' || (zsh --version; false) + all: + type: apt + package: zsh diff --git a/Dockerfiles/slim/Dockerfile-5.2 b/Dockerfiles/slim/Dockerfile-5.2 index 2b5c48a..e6c8a75 100644 --- a/Dockerfiles/slim/Dockerfile-5.2 +++ b/Dockerfiles/slim/Dockerfile-5.2 @@ -66,6 +66,7 @@ RUN set -eux \ dnsutils \ iputils-ping \ netcat-openbsd \ + sudo \ && rm -rf /var/lib/apt/lists/* ### @@ -87,6 +88,11 @@ RUN set -eux \ && ping -V | grep ^ping \ && true +# -------------------- sudo -------------------- +RUN set -eux \ + && sudo --version | grep -E 'version [0-9]+\.[0-9]+' \ + && true + # -------------------- blackfire -------------------- RUN set -eux \ && apt-get update \ @@ -304,6 +310,7 @@ RUN set -eux \ dnsutils \ iputils-ping \ netcat-openbsd \ + sudo \ && rm -rf /var/lib/apt/lists/* ### @@ -467,6 +474,11 @@ RUN set -eux \ && ping -V | grep ^ping \ && true +# -------------------- sudo -------------------- +RUN set -eux \ + && sudo --version | grep -E 'version [0-9]+\.[0-9]+' \ + && true + # -------------------- blackfire -------------------- RUN set -eux \ && blackfire version \ diff --git a/Dockerfiles/slim/Dockerfile-5.3 b/Dockerfiles/slim/Dockerfile-5.3 index 3cb58e7..e54a8b0 100644 --- a/Dockerfiles/slim/Dockerfile-5.3 +++ b/Dockerfiles/slim/Dockerfile-5.3 @@ -66,6 +66,7 @@ RUN set -eux \ dnsutils \ iputils-ping \ netcat-openbsd \ + sudo \ && rm -rf /var/lib/apt/lists/* ### @@ -87,6 +88,11 @@ RUN set -eux \ && ping -V | grep ^ping \ && true +# -------------------- sudo -------------------- +RUN set -eux \ + && sudo --version | grep -E 'version [0-9]+\.[0-9]+' \ + && true + # -------------------- blackfire -------------------- RUN set -eux \ && apt-get update \ @@ -304,6 +310,7 @@ RUN set -eux \ dnsutils \ iputils-ping \ netcat-openbsd \ + sudo \ && rm -rf /var/lib/apt/lists/* ### @@ -467,6 +474,11 @@ RUN set -eux \ && ping -V | grep ^ping \ && true +# -------------------- sudo -------------------- +RUN set -eux \ + && sudo --version | grep -E 'version [0-9]+\.[0-9]+' \ + && true + # -------------------- blackfire -------------------- RUN set -eux \ && blackfire version \ diff --git a/Dockerfiles/slim/Dockerfile-5.4 b/Dockerfiles/slim/Dockerfile-5.4 index bd54f4d..7bd66bc 100644 --- a/Dockerfiles/slim/Dockerfile-5.4 +++ b/Dockerfiles/slim/Dockerfile-5.4 @@ -66,6 +66,7 @@ RUN set -eux \ dnsutils \ iputils-ping \ netcat-openbsd \ + sudo \ && rm -rf /var/lib/apt/lists/* ### @@ -87,6 +88,11 @@ RUN set -eux \ && ping -V | grep ^ping \ && true +# -------------------- sudo -------------------- +RUN set -eux \ + && sudo --version | grep -E 'version [0-9]+\.[0-9]+' \ + && true + # -------------------- blackfire -------------------- RUN set -eux \ && apt-get update \ @@ -304,6 +310,7 @@ RUN set -eux \ dnsutils \ iputils-ping \ netcat-openbsd \ + sudo \ && rm -rf /var/lib/apt/lists/* ### @@ -467,6 +474,11 @@ RUN set -eux \ && ping -V | grep ^ping \ && true +# -------------------- sudo -------------------- +RUN set -eux \ + && sudo --version | grep -E 'version [0-9]+\.[0-9]+' \ + && true + # -------------------- blackfire -------------------- RUN set -eux \ && blackfire version \ diff --git a/Dockerfiles/slim/Dockerfile-5.5 b/Dockerfiles/slim/Dockerfile-5.5 index 8de2060..366828b 100644 --- a/Dockerfiles/slim/Dockerfile-5.5 +++ b/Dockerfiles/slim/Dockerfile-5.5 @@ -66,6 +66,7 @@ RUN set -eux \ dnsutils \ iputils-ping \ netcat-openbsd \ + sudo \ && rm -rf /var/lib/apt/lists/* ### @@ -87,6 +88,11 @@ RUN set -eux \ && ping -V | grep ^ping \ && true +# -------------------- sudo -------------------- +RUN set -eux \ + && sudo --version | grep -E 'version [0-9]+\.[0-9]+' \ + && true + # -------------------- blackfire -------------------- RUN set -eux \ && apt-get update \ @@ -304,6 +310,7 @@ RUN set -eux \ dnsutils \ iputils-ping \ netcat-openbsd \ + sudo \ && rm -rf /var/lib/apt/lists/* ### @@ -467,6 +474,11 @@ RUN set -eux \ && ping -V | grep ^ping \ && true +# -------------------- sudo -------------------- +RUN set -eux \ + && sudo --version | grep -E 'version [0-9]+\.[0-9]+' \ + && true + # -------------------- blackfire -------------------- RUN set -eux \ && blackfire version \ diff --git a/Dockerfiles/slim/Dockerfile-5.6 b/Dockerfiles/slim/Dockerfile-5.6 index 51bf973..aa16bde 100644 --- a/Dockerfiles/slim/Dockerfile-5.6 +++ b/Dockerfiles/slim/Dockerfile-5.6 @@ -66,6 +66,7 @@ RUN set -eux \ dnsutils \ iputils-ping \ netcat-openbsd \ + sudo \ && rm -rf /var/lib/apt/lists/* ### @@ -87,6 +88,11 @@ RUN set -eux \ && ping -V | grep ^ping \ && true +# -------------------- sudo -------------------- +RUN set -eux \ + && sudo --version | grep -E 'version [0-9]+\.[0-9]+' \ + && true + # -------------------- blackfire -------------------- RUN set -eux \ && apt-get update \ @@ -308,6 +314,7 @@ RUN set -eux \ dnsutils \ iputils-ping \ netcat-openbsd \ + sudo \ && rm -rf /var/lib/apt/lists/* ### @@ -471,6 +478,11 @@ RUN set -eux \ && ping -V | grep ^ping \ && true +# -------------------- sudo -------------------- +RUN set -eux \ + && sudo --version | grep -E 'version [0-9]+\.[0-9]+' \ + && true + # -------------------- blackfire -------------------- RUN set -eux \ && blackfire version \ diff --git a/Dockerfiles/slim/Dockerfile-7.0 b/Dockerfiles/slim/Dockerfile-7.0 index 703d19c..f0ac024 100644 --- a/Dockerfiles/slim/Dockerfile-7.0 +++ b/Dockerfiles/slim/Dockerfile-7.0 @@ -66,6 +66,7 @@ RUN set -eux \ dnsutils \ iputils-ping \ netcat-openbsd \ + sudo \ && rm -rf /var/lib/apt/lists/* ### @@ -87,6 +88,11 @@ RUN set -eux \ && ping -V | grep ^ping \ && true +# -------------------- sudo -------------------- +RUN set -eux \ + && sudo --version | grep -E 'version [0-9]+\.[0-9]+' \ + && true + # -------------------- blackfire -------------------- RUN set -eux \ && apt-get update \ @@ -308,6 +314,7 @@ RUN set -eux \ dnsutils \ iputils-ping \ netcat-openbsd \ + sudo \ && rm -rf /var/lib/apt/lists/* ### @@ -471,6 +478,11 @@ RUN set -eux \ && ping -V | grep ^ping \ && true +# -------------------- sudo -------------------- +RUN set -eux \ + && sudo --version | grep -E 'version [0-9]+\.[0-9]+' \ + && true + # -------------------- blackfire -------------------- RUN set -eux \ && blackfire version \ diff --git a/Dockerfiles/slim/Dockerfile-7.1 b/Dockerfiles/slim/Dockerfile-7.1 index 4f3b340..17c71d3 100644 --- a/Dockerfiles/slim/Dockerfile-7.1 +++ b/Dockerfiles/slim/Dockerfile-7.1 @@ -66,6 +66,7 @@ RUN set -eux \ dnsutils \ iputils-ping \ netcat-openbsd \ + sudo \ && rm -rf /var/lib/apt/lists/* ### @@ -87,6 +88,11 @@ RUN set -eux \ && ping -V | grep ^ping \ && true +# -------------------- sudo -------------------- +RUN set -eux \ + && sudo --version | grep -E 'version [0-9]+\.[0-9]+' \ + && true + # -------------------- blackfire -------------------- RUN set -eux \ && apt-get update \ @@ -302,6 +308,7 @@ RUN set -eux \ dnsutils \ iputils-ping \ netcat-openbsd \ + sudo \ && rm -rf /var/lib/apt/lists/* ### @@ -465,6 +472,11 @@ RUN set -eux \ && ping -V | grep ^ping \ && true +# -------------------- sudo -------------------- +RUN set -eux \ + && sudo --version | grep -E 'version [0-9]+\.[0-9]+' \ + && true + # -------------------- blackfire -------------------- RUN set -eux \ && blackfire version \ diff --git a/Dockerfiles/slim/Dockerfile-7.2 b/Dockerfiles/slim/Dockerfile-7.2 index 5ae5160..fd89cd7 100644 --- a/Dockerfiles/slim/Dockerfile-7.2 +++ b/Dockerfiles/slim/Dockerfile-7.2 @@ -66,6 +66,7 @@ RUN set -eux \ dnsutils \ iputils-ping \ netcat-openbsd \ + sudo \ && rm -rf /var/lib/apt/lists/* ### @@ -87,6 +88,11 @@ RUN set -eux \ && ping -V | grep ^ping \ && true +# -------------------- sudo -------------------- +RUN set -eux \ + && sudo --version | grep -E 'version [0-9]+\.[0-9]+' \ + && true + # -------------------- blackfire -------------------- RUN set -eux \ && apt-get update \ @@ -302,6 +308,7 @@ RUN set -eux \ dnsutils \ iputils-ping \ netcat-openbsd \ + sudo \ && rm -rf /var/lib/apt/lists/* ### @@ -465,6 +472,11 @@ RUN set -eux \ && ping -V | grep ^ping \ && true +# -------------------- sudo -------------------- +RUN set -eux \ + && sudo --version | grep -E 'version [0-9]+\.[0-9]+' \ + && true + # -------------------- blackfire -------------------- RUN set -eux \ && blackfire version \ diff --git a/Dockerfiles/slim/Dockerfile-7.3 b/Dockerfiles/slim/Dockerfile-7.3 index dde2a20..3251e60 100644 --- a/Dockerfiles/slim/Dockerfile-7.3 +++ b/Dockerfiles/slim/Dockerfile-7.3 @@ -66,6 +66,7 @@ RUN set -eux \ dnsutils \ iputils-ping \ netcat-openbsd \ + sudo \ && rm -rf /var/lib/apt/lists/* ### @@ -87,6 +88,11 @@ RUN set -eux \ && ping -V | grep ^ping \ && true +# -------------------- sudo -------------------- +RUN set -eux \ + && sudo --version | grep -E 'version [0-9]+\.[0-9]+' \ + && true + # -------------------- blackfire -------------------- RUN set -eux \ && apt-get update \ @@ -302,6 +308,7 @@ RUN set -eux \ dnsutils \ iputils-ping \ netcat-openbsd \ + sudo \ && rm -rf /var/lib/apt/lists/* ### @@ -465,6 +472,11 @@ RUN set -eux \ && ping -V | grep ^ping \ && true +# -------------------- sudo -------------------- +RUN set -eux \ + && sudo --version | grep -E 'version [0-9]+\.[0-9]+' \ + && true + # -------------------- blackfire -------------------- RUN set -eux \ && blackfire version \ diff --git a/Dockerfiles/slim/Dockerfile-7.4 b/Dockerfiles/slim/Dockerfile-7.4 index 02c7106..c0e864a 100644 --- a/Dockerfiles/slim/Dockerfile-7.4 +++ b/Dockerfiles/slim/Dockerfile-7.4 @@ -66,6 +66,7 @@ RUN set -eux \ dnsutils \ iputils-ping \ netcat-openbsd \ + sudo \ && rm -rf /var/lib/apt/lists/* ### @@ -87,6 +88,11 @@ RUN set -eux \ && ping -V | grep ^ping \ && true +# -------------------- sudo -------------------- +RUN set -eux \ + && sudo --version | grep -E 'version [0-9]+\.[0-9]+' \ + && true + # -------------------- blackfire -------------------- RUN set -eux \ && apt-get update \ @@ -302,6 +308,7 @@ RUN set -eux \ dnsutils \ iputils-ping \ netcat-openbsd \ + sudo \ && rm -rf /var/lib/apt/lists/* ### @@ -465,6 +472,11 @@ RUN set -eux \ && ping -V | grep ^ping \ && true +# -------------------- sudo -------------------- +RUN set -eux \ + && sudo --version | grep -E 'version [0-9]+\.[0-9]+' \ + && true + # -------------------- blackfire -------------------- RUN set -eux \ && blackfire version \ diff --git a/Dockerfiles/slim/Dockerfile-8.0 b/Dockerfiles/slim/Dockerfile-8.0 index 479429e..8ffc42c 100644 --- a/Dockerfiles/slim/Dockerfile-8.0 +++ b/Dockerfiles/slim/Dockerfile-8.0 @@ -66,6 +66,7 @@ RUN set -eux \ dnsutils \ iputils-ping \ netcat-openbsd \ + sudo \ && rm -rf /var/lib/apt/lists/* ### @@ -87,6 +88,11 @@ RUN set -eux \ && ping -V | grep ^ping \ && true +# -------------------- sudo -------------------- +RUN set -eux \ + && sudo --version | grep -E 'version [0-9]+\.[0-9]+' \ + && true + # -------------------- blackfire -------------------- RUN set -eux \ && apt-get update \ @@ -302,6 +308,7 @@ RUN set -eux \ dnsutils \ iputils-ping \ netcat-openbsd \ + sudo \ && rm -rf /var/lib/apt/lists/* ### @@ -465,6 +472,11 @@ RUN set -eux \ && ping -V | grep ^ping \ && true +# -------------------- sudo -------------------- +RUN set -eux \ + && sudo --version | grep -E 'version [0-9]+\.[0-9]+' \ + && true + # -------------------- blackfire -------------------- RUN set -eux \ && blackfire version \ diff --git a/Dockerfiles/slim/Dockerfile-8.1 b/Dockerfiles/slim/Dockerfile-8.1 index 8498d57..0f8addc 100644 --- a/Dockerfiles/slim/Dockerfile-8.1 +++ b/Dockerfiles/slim/Dockerfile-8.1 @@ -66,6 +66,7 @@ RUN set -eux \ dnsutils \ iputils-ping \ netcat-openbsd \ + sudo \ && rm -rf /var/lib/apt/lists/* ### @@ -87,6 +88,11 @@ RUN set -eux \ && ping -V | grep ^ping \ && true +# -------------------- sudo -------------------- +RUN set -eux \ + && sudo --version | grep -E 'version [0-9]+\.[0-9]+' \ + && true + # -------------------- blackfire -------------------- RUN set -eux \ && apt-get update \ @@ -302,6 +308,7 @@ RUN set -eux \ dnsutils \ iputils-ping \ netcat-openbsd \ + sudo \ && rm -rf /var/lib/apt/lists/* ### @@ -465,6 +472,11 @@ RUN set -eux \ && ping -V | grep ^ping \ && true +# -------------------- sudo -------------------- +RUN set -eux \ + && sudo --version | grep -E 'version [0-9]+\.[0-9]+' \ + && true + # -------------------- blackfire -------------------- RUN set -eux \ && blackfire version \ diff --git a/Dockerfiles/slim/Dockerfile-8.2 b/Dockerfiles/slim/Dockerfile-8.2 index 96ea6ea..b91e6da 100644 --- a/Dockerfiles/slim/Dockerfile-8.2 +++ b/Dockerfiles/slim/Dockerfile-8.2 @@ -66,6 +66,7 @@ RUN set -eux \ dnsutils \ iputils-ping \ netcat-openbsd \ + sudo \ && rm -rf /var/lib/apt/lists/* ### @@ -87,6 +88,11 @@ RUN set -eux \ && ping -V | grep ^ping \ && true +# -------------------- sudo -------------------- +RUN set -eux \ + && sudo --version | grep -E 'version [0-9]+\.[0-9]+' \ + && true + # -------------------- blackfire -------------------- RUN set -eux \ && apt-get update \ @@ -302,6 +308,7 @@ RUN set -eux \ dnsutils \ iputils-ping \ netcat-openbsd \ + sudo \ && rm -rf /var/lib/apt/lists/* ### @@ -465,6 +472,11 @@ RUN set -eux \ && ping -V | grep ^ping \ && true +# -------------------- sudo -------------------- +RUN set -eux \ + && sudo --version | grep -E 'version [0-9]+\.[0-9]+' \ + && true + # -------------------- blackfire -------------------- RUN set -eux \ && blackfire version \ diff --git a/Dockerfiles/work/Dockerfile-5.2 b/Dockerfiles/work/Dockerfile-5.2 index 9e9873c..6e188de 100644 --- a/Dockerfiles/work/Dockerfile-5.2 +++ b/Dockerfiles/work/Dockerfile-5.2 @@ -237,7 +237,13 @@ RUN set -eux \ # ---------- type: apt ---------- git \ jq \ + mupdf-tools \ + openssh-client \ + rsync \ shellcheck \ + subversion \ + tig \ + zsh \ && rm -rf /var/lib/apt/lists/* ### @@ -334,6 +340,16 @@ RUN set -eux \ && mdlint --version | grep -E '[0-9][.0-9]+' || (mdlint --version; false) \ && true +# -------------------- (apt) mupdf-tools -------------------- +RUN set -eux \ + && echo test > test.txt \ + && mutool create -o test.pdf test.txt \ + && file test.pdf | gre 'PDF document' \ + && rm test.txt \ + && rm test.pdf \ + \ + && true + # -------------------- (custom) phpcbf -------------------- RUN set -eux \ && PHPCBF_URL="https://github.com/squizlabs/PHP_CodeSniffer/releases/download/2.9.0/phpcbf.phar" \ @@ -365,6 +381,16 @@ RUN set -eux \ && pwncat --version 2>&1 | grep -E 'Version [0-9][.0-9]+' || (pwncat --version; false) \ && true +# -------------------- (apt) ssh -------------------- +RUN set -eux \ + && ssh -V 2>&1 | grep ^OpenSSH || (ssh -V; false) \ + && true + +# -------------------- (apt) rsync -------------------- +RUN set -eux \ + && rsync --version | grep version | grep -E '[0-9]\.[0-9]+' || (rsync --version; false) \ + && true + # -------------------- (npm) sass -------------------- RUN set -eux \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force sass' devilbox \ @@ -384,12 +410,22 @@ RUN set -eux \ && stylelint --version | grep -E '[0-9][.0-9]+' || (stylelint --version; false) \ && true +# -------------------- (apt) svn -------------------- +RUN set -eux \ + && svn --version | grep version | grep -E '[0-9]+\.[0-9]+' || (svn --version; false) \ + && true + # -------------------- (custom) symfony-cli -------------------- RUN set -eux \ && curl -sS https://get.symfony.com/cli/installer | bash -s -- --install-dir /usr/local/bin \ && symfony --no-ansi -V | grep -E 'version [0-9][.0-9]+' || (symfony --no-ansi -V; false) \ && true +# -------------------- (apt) tig -------------------- +RUN set -eux \ + && tig --version 2>&1 | grep -E '[0-9][.0-9]+' || (tig --version; false) \ + && true + # -------------------- (npm) vue-cli -------------------- RUN set -eux \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force @vue/cli' devilbox \ @@ -416,6 +452,11 @@ RUN set -eux \ && yq --version 2>&1 | grep -E '[0-9][.0-9]+' || (yq --version; false) \ && true +# -------------------- (apt) zsh -------------------- +RUN set -eux \ + && zsh --version 2>&1 | grep -E '[0-9][.0-9]+' || (zsh --version; false) \ + && true + ### ### Post fixes ### @@ -453,7 +494,13 @@ RUN set -eux \ # ---------- type: apt ---------- git \ jq \ + mupdf-tools \ + openssh-client \ + rsync \ shellcheck \ + subversion \ + tig \ + zsh \ && rm -rf /var/lib/apt/lists/* ### @@ -560,6 +607,16 @@ RUN set -eux \ && mdlint --version | grep -E '[0-9][.0-9]+' || (mdlint --version; false) \ && true +# -------------------- (apt) mupdf-tools -------------------- +RUN set -eux \ + && echo test > test.txt \ + && mutool create -o test.pdf test.txt \ + && file test.pdf | gre 'PDF document' \ + && rm test.txt \ + && rm test.pdf \ + \ + && true + # -------------------- (custom) phpcbf -------------------- RUN set -eux \ && phpcbf --version | grep -E 'version [0-9][.0-9]+' || (phpcbf --version; false) \ @@ -580,6 +637,16 @@ RUN set -eux \ && pwncat --version 2>&1 | grep -E 'Version [0-9][.0-9]+' || (pwncat --version; false) \ && true +# -------------------- (apt) ssh -------------------- +RUN set -eux \ + && ssh -V 2>&1 | grep ^OpenSSH || (ssh -V; false) \ + && true + +# -------------------- (apt) rsync -------------------- +RUN set -eux \ + && rsync --version | grep version | grep -E '[0-9]\.[0-9]+' || (rsync --version; false) \ + && true + # -------------------- (npm) sass -------------------- RUN set -eux \ && sass --version | grep -E '[0-9][.0-9]+' || (sass --version; false) \ @@ -595,11 +662,21 @@ RUN set -eux \ && stylelint --version | grep -E '[0-9][.0-9]+' || (stylelint --version; false) \ && true +# -------------------- (apt) svn -------------------- +RUN set -eux \ + && svn --version | grep version | grep -E '[0-9]+\.[0-9]+' || (svn --version; false) \ + && true + # -------------------- (custom) symfony-cli -------------------- RUN set -eux \ && symfony --no-ansi -V | grep -E 'version [0-9][.0-9]+' || (symfony --no-ansi -V; false) \ && true +# -------------------- (apt) tig -------------------- +RUN set -eux \ + && tig --version 2>&1 | grep -E '[0-9][.0-9]+' || (tig --version; false) \ + && true + # -------------------- (npm) vue-cli -------------------- RUN set -eux \ && vue --version | grep -E '[0-9][.0-9]+' || (vue --version; false) \ @@ -620,6 +697,11 @@ RUN set -eux \ && yq --version 2>&1 | grep -E '[0-9][.0-9]+' || (yq --version; false) \ && true +# -------------------- (apt) zsh -------------------- +RUN set -eux \ + && zsh --version 2>&1 | grep -E '[0-9][.0-9]+' || (zsh --version; false) \ + && true + ### ### Re-activate modules which have been deactivated in mods (for testing). ### diff --git a/Dockerfiles/work/Dockerfile-5.3 b/Dockerfiles/work/Dockerfile-5.3 index 0712ba8..78bfa5d 100644 --- a/Dockerfiles/work/Dockerfile-5.3 +++ b/Dockerfiles/work/Dockerfile-5.3 @@ -271,7 +271,13 @@ RUN set -eux \ # ---------- type: apt ---------- git \ jq \ + mupdf-tools \ + openssh-client \ + rsync \ shellcheck \ + subversion \ + tig \ + zsh \ && rm -rf /var/lib/apt/lists/* ### @@ -368,6 +374,16 @@ RUN set -eux \ && mdlint --version | grep -E '[0-9][.0-9]+' || (mdlint --version; false) \ && true +# -------------------- (apt) mupdf-tools -------------------- +RUN set -eux \ + && echo test > test.txt \ + && mutool create -o test.pdf test.txt \ + && file test.pdf | gre 'PDF document' \ + && rm test.txt \ + && rm test.pdf \ + \ + && true + # -------------------- (custom) php-cs-fixer -------------------- RUN set -eux \ && PHP_CS_FIXER_URL="https://github.com/FriendsOfPHP/PHP-CS-Fixer/releases/download/v2.2.19/php-cs-fixer.phar" \ @@ -428,6 +444,16 @@ RUN set -eux \ && pwncat --version 2>&1 | grep -E 'Version [0-9][.0-9]+' || (pwncat --version; false) \ && true +# -------------------- (apt) ssh -------------------- +RUN set -eux \ + && ssh -V 2>&1 | grep ^OpenSSH || (ssh -V; false) \ + && true + +# -------------------- (apt) rsync -------------------- +RUN set -eux \ + && rsync --version | grep version | grep -E '[0-9]\.[0-9]+' || (rsync --version; false) \ + && true + # -------------------- (npm) sass -------------------- RUN set -eux \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force sass' devilbox \ @@ -447,12 +473,22 @@ RUN set -eux \ && stylelint --version | grep -E '[0-9][.0-9]+' || (stylelint --version; false) \ && true +# -------------------- (apt) svn -------------------- +RUN set -eux \ + && svn --version | grep version | grep -E '[0-9]+\.[0-9]+' || (svn --version; false) \ + && true + # -------------------- (custom) symfony-cli -------------------- RUN set -eux \ && curl -sS https://get.symfony.com/cli/installer | bash -s -- --install-dir /usr/local/bin \ && symfony --no-ansi -V | grep -E 'version [0-9][.0-9]+' || (symfony --no-ansi -V; false) \ && true +# -------------------- (apt) tig -------------------- +RUN set -eux \ + && tig --version 2>&1 | grep -E '[0-9][.0-9]+' || (tig --version; false) \ + && true + # -------------------- (npm) vue-cli -------------------- RUN set -eux \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force @vue/cli' devilbox \ @@ -487,6 +523,11 @@ RUN set -eux \ && yq --version 2>&1 | grep -E '[0-9][.0-9]+' || (yq --version; false) \ && true +# -------------------- (apt) zsh -------------------- +RUN set -eux \ + && zsh --version 2>&1 | grep -E '[0-9][.0-9]+' || (zsh --version; false) \ + && true + ### ### Post fixes ### @@ -524,7 +565,13 @@ RUN set -eux \ # ---------- type: apt ---------- git \ jq \ + mupdf-tools \ + openssh-client \ + rsync \ shellcheck \ + subversion \ + tig \ + zsh \ && rm -rf /var/lib/apt/lists/* ### @@ -631,6 +678,16 @@ RUN set -eux \ && mdlint --version | grep -E '[0-9][.0-9]+' || (mdlint --version; false) \ && true +# -------------------- (apt) mupdf-tools -------------------- +RUN set -eux \ + && echo test > test.txt \ + && mutool create -o test.pdf test.txt \ + && file test.pdf | gre 'PDF document' \ + && rm test.txt \ + && rm test.pdf \ + \ + && true + # -------------------- (custom) php-cs-fixer -------------------- RUN set -eux \ && php-cs-fixer --version 2>&1 | grep -E 'Fixer\s+(version\s*)?[-_.0-9]+\s+' || (php-cs-fixer --version; false) \ @@ -666,6 +723,16 @@ RUN set -eux \ && pwncat --version 2>&1 | grep -E 'Version [0-9][.0-9]+' || (pwncat --version; false) \ && true +# -------------------- (apt) ssh -------------------- +RUN set -eux \ + && ssh -V 2>&1 | grep ^OpenSSH || (ssh -V; false) \ + && true + +# -------------------- (apt) rsync -------------------- +RUN set -eux \ + && rsync --version | grep version | grep -E '[0-9]\.[0-9]+' || (rsync --version; false) \ + && true + # -------------------- (npm) sass -------------------- RUN set -eux \ && sass --version | grep -E '[0-9][.0-9]+' || (sass --version; false) \ @@ -681,11 +748,21 @@ RUN set -eux \ && stylelint --version | grep -E '[0-9][.0-9]+' || (stylelint --version; false) \ && true +# -------------------- (apt) svn -------------------- +RUN set -eux \ + && svn --version | grep version | grep -E '[0-9]+\.[0-9]+' || (svn --version; false) \ + && true + # -------------------- (custom) symfony-cli -------------------- RUN set -eux \ && symfony --no-ansi -V | grep -E 'version [0-9][.0-9]+' || (symfony --no-ansi -V; false) \ && true +# -------------------- (apt) tig -------------------- +RUN set -eux \ + && tig --version 2>&1 | grep -E '[0-9][.0-9]+' || (tig --version; false) \ + && true + # -------------------- (npm) vue-cli -------------------- RUN set -eux \ && vue --version | grep -E '[0-9][.0-9]+' || (vue --version; false) \ @@ -711,6 +788,11 @@ RUN set -eux \ && yq --version 2>&1 | grep -E '[0-9][.0-9]+' || (yq --version; false) \ && true +# -------------------- (apt) zsh -------------------- +RUN set -eux \ + && zsh --version 2>&1 | grep -E '[0-9][.0-9]+' || (zsh --version; false) \ + && true + ### ### Re-activate modules which have been deactivated in mods (for testing). ### diff --git a/Dockerfiles/work/Dockerfile-5.4 b/Dockerfiles/work/Dockerfile-5.4 index 69df97f..a2a2b4a 100644 --- a/Dockerfiles/work/Dockerfile-5.4 +++ b/Dockerfiles/work/Dockerfile-5.4 @@ -271,7 +271,13 @@ RUN set -eux \ # ---------- type: apt ---------- git \ jq \ + mupdf-tools \ + openssh-client \ + rsync \ shellcheck \ + subversion \ + tig \ + zsh \ && rm -rf /var/lib/apt/lists/* ### @@ -374,7 +380,7 @@ RUN set -eux \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache laravel/installer:1.3.7 \ && ln -s /usr/local/src/composer/vendor/laravel/installer/laravel /usr/local/bin/ \ && rm -rf /usr/local/src/composer/cache/* \ - && laravel --version | grep -E '^Laravel Installer\s[0-9][.0-9]+$' || (laravel --version; false) \ + && laravel --version | grep version | grep -E '[0-9]\.[0-9]+' || (laravel --version; false) \ && true # -------------------- (custom) linkcheck -------------------- @@ -391,6 +397,16 @@ RUN set -eux \ && mdlint --version | grep -E '[0-9][.0-9]+' || (mdlint --version; false) \ && true +# -------------------- (apt) mupdf-tools -------------------- +RUN set -eux \ + && echo test > test.txt \ + && mutool create -o test.pdf test.txt \ + && file test.pdf | gre 'PDF document' \ + && rm test.txt \ + && rm test.pdf \ + \ + && true + # -------------------- (custom) php-cs-fixer -------------------- RUN set -eux \ && PHP_CS_FIXER_URL="https://github.com/FriendsOfPHP/PHP-CS-Fixer/releases/download/v2.2.19/php-cs-fixer.phar" \ @@ -451,6 +467,16 @@ RUN set -eux \ && pwncat --version 2>&1 | grep -E 'Version [0-9][.0-9]+' || (pwncat --version; false) \ && true +# -------------------- (apt) ssh -------------------- +RUN set -eux \ + && ssh -V 2>&1 | grep ^OpenSSH || (ssh -V; false) \ + && true + +# -------------------- (apt) rsync -------------------- +RUN set -eux \ + && rsync --version | grep version | grep -E '[0-9]\.[0-9]+' || (rsync --version; false) \ + && true + # -------------------- (npm) sass -------------------- RUN set -eux \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force sass' devilbox \ @@ -470,12 +496,22 @@ RUN set -eux \ && stylelint --version | grep -E '[0-9][.0-9]+' || (stylelint --version; false) \ && true +# -------------------- (apt) svn -------------------- +RUN set -eux \ + && svn --version | grep version | grep -E '[0-9]+\.[0-9]+' || (svn --version; false) \ + && true + # -------------------- (custom) symfony-cli -------------------- RUN set -eux \ && curl -sS https://get.symfony.com/cli/installer | bash -s -- --install-dir /usr/local/bin \ && symfony --no-ansi -V | grep -E 'version [0-9][.0-9]+' || (symfony --no-ansi -V; false) \ && true +# -------------------- (apt) tig -------------------- +RUN set -eux \ + && tig --version 2>&1 | grep -E '[0-9][.0-9]+' || (tig --version; false) \ + && true + # -------------------- (npm) vue-cli -------------------- RUN set -eux \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force @vue/cli' devilbox \ @@ -510,6 +546,11 @@ RUN set -eux \ && yq --version 2>&1 | grep -E '[0-9][.0-9]+' || (yq --version; false) \ && true +# -------------------- (apt) zsh -------------------- +RUN set -eux \ + && zsh --version 2>&1 | grep -E '[0-9][.0-9]+' || (zsh --version; false) \ + && true + ### ### Post fixes ### @@ -547,7 +588,13 @@ RUN set -eux \ # ---------- type: apt ---------- git \ jq \ + mupdf-tools \ + openssh-client \ + rsync \ shellcheck \ + subversion \ + tig \ + zsh \ && rm -rf /var/lib/apt/lists/* ### @@ -656,7 +703,7 @@ RUN set -eux \ # -------------------- (composer) laravel-installer -------------------- RUN set -eux \ - && laravel --version | grep -E '^Laravel Installer\s[0-9][.0-9]+$' || (laravel --version; false) \ + && laravel --version | grep version | grep -E '[0-9]\.[0-9]+' || (laravel --version; false) \ && true # -------------------- (custom) linkcheck -------------------- @@ -669,6 +716,16 @@ RUN set -eux \ && mdlint --version | grep -E '[0-9][.0-9]+' || (mdlint --version; false) \ && true +# -------------------- (apt) mupdf-tools -------------------- +RUN set -eux \ + && echo test > test.txt \ + && mutool create -o test.pdf test.txt \ + && file test.pdf | gre 'PDF document' \ + && rm test.txt \ + && rm test.pdf \ + \ + && true + # -------------------- (custom) php-cs-fixer -------------------- RUN set -eux \ && php-cs-fixer --version 2>&1 | grep -E 'Fixer\s+(version\s*)?[-_.0-9]+\s+' || (php-cs-fixer --version; false) \ @@ -704,6 +761,16 @@ RUN set -eux \ && pwncat --version 2>&1 | grep -E 'Version [0-9][.0-9]+' || (pwncat --version; false) \ && true +# -------------------- (apt) ssh -------------------- +RUN set -eux \ + && ssh -V 2>&1 | grep ^OpenSSH || (ssh -V; false) \ + && true + +# -------------------- (apt) rsync -------------------- +RUN set -eux \ + && rsync --version | grep version | grep -E '[0-9]\.[0-9]+' || (rsync --version; false) \ + && true + # -------------------- (npm) sass -------------------- RUN set -eux \ && sass --version | grep -E '[0-9][.0-9]+' || (sass --version; false) \ @@ -719,11 +786,21 @@ RUN set -eux \ && stylelint --version | grep -E '[0-9][.0-9]+' || (stylelint --version; false) \ && true +# -------------------- (apt) svn -------------------- +RUN set -eux \ + && svn --version | grep version | grep -E '[0-9]+\.[0-9]+' || (svn --version; false) \ + && true + # -------------------- (custom) symfony-cli -------------------- RUN set -eux \ && symfony --no-ansi -V | grep -E 'version [0-9][.0-9]+' || (symfony --no-ansi -V; false) \ && true +# -------------------- (apt) tig -------------------- +RUN set -eux \ + && tig --version 2>&1 | grep -E '[0-9][.0-9]+' || (tig --version; false) \ + && true + # -------------------- (npm) vue-cli -------------------- RUN set -eux \ && vue --version | grep -E '[0-9][.0-9]+' || (vue --version; false) \ @@ -749,6 +826,11 @@ RUN set -eux \ && yq --version 2>&1 | grep -E '[0-9][.0-9]+' || (yq --version; false) \ && true +# -------------------- (apt) zsh -------------------- +RUN set -eux \ + && zsh --version 2>&1 | grep -E '[0-9][.0-9]+' || (zsh --version; false) \ + && true + ### ### Re-activate modules which have been deactivated in mods (for testing). ### diff --git a/Dockerfiles/work/Dockerfile-5.5 b/Dockerfiles/work/Dockerfile-5.5 index 43e56b1..1b578a0 100644 --- a/Dockerfiles/work/Dockerfile-5.5 +++ b/Dockerfiles/work/Dockerfile-5.5 @@ -271,7 +271,13 @@ RUN set -eux \ # ---------- type: apt ---------- git \ jq \ + mupdf-tools \ + openssh-client \ + rsync \ shellcheck \ + subversion \ + tig \ + zsh \ && rm -rf /var/lib/apt/lists/* ### @@ -382,7 +388,15 @@ RUN set -eux \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache laravel/installer:2.2.0 \ && ln -s /usr/local/src/composer/vendor/laravel/installer/laravel /usr/local/bin/ \ && rm -rf /usr/local/src/composer/cache/* \ - && laravel --version | grep -E '^Laravel Installer\s[0-9][.0-9]+$' || (laravel --version; false) \ + && laravel --version | grep version | grep -E '[0-9]\.[0-9]+' || (laravel --version; false) \ + && true + +# -------------------- (composer) laravel-lumen -------------------- +RUN set -eux \ + && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache laravel/lumen-installer \ + && ln -s /usr/local/src/composer/vendor/laravel/lumen-installer/lumen /usr/local/bin/ \ + && rm -rf /usr/local/src/composer/cache/* \ + && lumen --version 2>/dev/null | grep ^Lumen | grep -E '[0-9]\.[0-9]+' || (lumen --version; false) \ && true # -------------------- (custom) linkcheck -------------------- @@ -392,14 +406,6 @@ RUN set -eux \ && linkcheck --version | grep -E 'v[0-9][.0-9]+' || (linkcheck --version; false) \ && true -# -------------------- (composer) lumen -------------------- -RUN set -eux \ - && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache laravel/lumen-installer \ - && ln -s /usr/local/src/composer/vendor/laravel/lumen-installer/lumen /usr/local/bin/ \ - && rm -rf /usr/local/src/composer/cache/* \ - && lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[0-9][.0-9]+$' || (lumen --version; false) \ - && true - # -------------------- (npm) mdlint -------------------- RUN set -eux \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force mdlint' devilbox \ @@ -407,6 +413,55 @@ RUN set -eux \ && mdlint --version | grep -E '[0-9][.0-9]+' || (mdlint --version; false) \ && true +# -------------------- (apt) mupdf-tools -------------------- +RUN set -eux \ + && echo test > test.txt \ + && mutool create -o test.pdf test.txt \ + && file test.pdf | gre 'PDF document' \ + && rm test.txt \ + && rm test.pdf \ + \ + && true + +# -------------------- (composer) phalcon-devtools -------------------- +RUN set -eux \ + && if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \ + echo "extension=phalcon.so" > /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if find /usr/local/lib/php/extensions/ -name psr.so | grep psr; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache phalcon/devtools:3.4.11 \ + && ln -s /usr/local/src/composer/vendor/phalcon/devtools/phalcon /usr/local/bin/ \ + && rm -rf /usr/local/src/composer/cache/* \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini ]; then \ + rm /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-psr.ini ]; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + && if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \ + echo "extension=phalcon.so" > /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if find /usr/local/lib/php/extensions/ -name psr.so | grep psr; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + \ + && phalcon commands | grep -E '[0-9][.0-9]+' || (phalcon commands; false) \ + \ + \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini ]; then \ + rm /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-psr.ini ]; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + && true + # -------------------- (custom) php-cs-fixer -------------------- RUN set -eux \ && PHP_CS_FIXER_URL="https://github.com/FriendsOfPHP/PHP-CS-Fixer/releases/download/v2.2.19/php-cs-fixer.phar" \ @@ -467,6 +522,16 @@ RUN set -eux \ && pwncat --version 2>&1 | grep -E 'Version [0-9][.0-9]+' || (pwncat --version; false) \ && true +# -------------------- (apt) ssh -------------------- +RUN set -eux \ + && ssh -V 2>&1 | grep ^OpenSSH || (ssh -V; false) \ + && true + +# -------------------- (apt) rsync -------------------- +RUN set -eux \ + && rsync --version | grep version | grep -E '[0-9]\.[0-9]+' || (rsync --version; false) \ + && true + # -------------------- (npm) sass -------------------- RUN set -eux \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force sass' devilbox \ @@ -486,12 +551,22 @@ RUN set -eux \ && stylelint --version | grep -E '[0-9][.0-9]+' || (stylelint --version; false) \ && true +# -------------------- (apt) svn -------------------- +RUN set -eux \ + && svn --version | grep version | grep -E '[0-9]+\.[0-9]+' || (svn --version; false) \ + && true + # -------------------- (custom) symfony-cli -------------------- RUN set -eux \ && curl -sS https://get.symfony.com/cli/installer | bash -s -- --install-dir /usr/local/bin \ && symfony --no-ansi -V | grep -E 'version [0-9][.0-9]+' || (symfony --no-ansi -V; false) \ && true +# -------------------- (apt) tig -------------------- +RUN set -eux \ + && tig --version 2>&1 | grep -E '[0-9][.0-9]+' || (tig --version; false) \ + && true + # -------------------- (npm) vue-cli -------------------- RUN set -eux \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force @vue/cli' devilbox \ @@ -526,6 +601,11 @@ RUN set -eux \ && yq --version 2>&1 | grep -E '[0-9][.0-9]+' || (yq --version; false) \ && true +# -------------------- (apt) zsh -------------------- +RUN set -eux \ + && zsh --version 2>&1 | grep -E '[0-9][.0-9]+' || (zsh --version; false) \ + && true + ### ### Post fixes ### @@ -563,7 +643,13 @@ RUN set -eux \ # ---------- type: apt ---------- git \ jq \ + mupdf-tools \ + openssh-client \ + rsync \ shellcheck \ + subversion \ + tig \ + zsh \ && rm -rf /var/lib/apt/lists/* ### @@ -677,7 +763,12 @@ RUN set -eux \ # -------------------- (composer) laravel-installer -------------------- RUN set -eux \ - && laravel --version | grep -E '^Laravel Installer\s[0-9][.0-9]+$' || (laravel --version; false) \ + && laravel --version | grep version | grep -E '[0-9]\.[0-9]+' || (laravel --version; false) \ + && true + +# -------------------- (composer) laravel-lumen -------------------- +RUN set -eux \ + && lumen --version 2>/dev/null | grep ^Lumen | grep -E '[0-9]\.[0-9]+' || (lumen --version; false) \ && true # -------------------- (custom) linkcheck -------------------- @@ -685,16 +776,43 @@ RUN set -eux \ && linkcheck --version | grep -E 'v[0-9][.0-9]+' || (linkcheck --version; false) \ && true -# -------------------- (composer) lumen -------------------- -RUN set -eux \ - && lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[0-9][.0-9]+$' || (lumen --version; false) \ - && true - # -------------------- (npm) mdlint -------------------- RUN set -eux \ && mdlint --version | grep -E '[0-9][.0-9]+' || (mdlint --version; false) \ && true +# -------------------- (apt) mupdf-tools -------------------- +RUN set -eux \ + && echo test > test.txt \ + && mutool create -o test.pdf test.txt \ + && file test.pdf | gre 'PDF document' \ + && rm test.txt \ + && rm test.pdf \ + \ + && true + +# -------------------- (composer) phalcon-devtools -------------------- +RUN set -eux \ + && if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \ + echo "extension=phalcon.so" > /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if find /usr/local/lib/php/extensions/ -name psr.so | grep psr; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + \ + && phalcon commands | grep -E '[0-9][.0-9]+' || (phalcon commands; false) \ + \ + \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini ]; then \ + rm /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-psr.ini ]; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + && true + # -------------------- (custom) php-cs-fixer -------------------- RUN set -eux \ && php-cs-fixer --version 2>&1 | grep -E 'Fixer\s+(version\s*)?[-_.0-9]+\s+' || (php-cs-fixer --version; false) \ @@ -730,6 +848,16 @@ RUN set -eux \ && pwncat --version 2>&1 | grep -E 'Version [0-9][.0-9]+' || (pwncat --version; false) \ && true +# -------------------- (apt) ssh -------------------- +RUN set -eux \ + && ssh -V 2>&1 | grep ^OpenSSH || (ssh -V; false) \ + && true + +# -------------------- (apt) rsync -------------------- +RUN set -eux \ + && rsync --version | grep version | grep -E '[0-9]\.[0-9]+' || (rsync --version; false) \ + && true + # -------------------- (npm) sass -------------------- RUN set -eux \ && sass --version | grep -E '[0-9][.0-9]+' || (sass --version; false) \ @@ -745,11 +873,21 @@ RUN set -eux \ && stylelint --version | grep -E '[0-9][.0-9]+' || (stylelint --version; false) \ && true +# -------------------- (apt) svn -------------------- +RUN set -eux \ + && svn --version | grep version | grep -E '[0-9]+\.[0-9]+' || (svn --version; false) \ + && true + # -------------------- (custom) symfony-cli -------------------- RUN set -eux \ && symfony --no-ansi -V | grep -E 'version [0-9][.0-9]+' || (symfony --no-ansi -V; false) \ && true +# -------------------- (apt) tig -------------------- +RUN set -eux \ + && tig --version 2>&1 | grep -E '[0-9][.0-9]+' || (tig --version; false) \ + && true + # -------------------- (npm) vue-cli -------------------- RUN set -eux \ && vue --version | grep -E '[0-9][.0-9]+' || (vue --version; false) \ @@ -775,6 +913,11 @@ RUN set -eux \ && yq --version 2>&1 | grep -E '[0-9][.0-9]+' || (yq --version; false) \ && true +# -------------------- (apt) zsh -------------------- +RUN set -eux \ + && zsh --version 2>&1 | grep -E '[0-9][.0-9]+' || (zsh --version; false) \ + && true + ### ### Re-activate modules which have been deactivated in mods (for testing). ### diff --git a/Dockerfiles/work/Dockerfile-5.6 b/Dockerfiles/work/Dockerfile-5.6 index e177ea7..7a4706a 100644 --- a/Dockerfiles/work/Dockerfile-5.6 +++ b/Dockerfiles/work/Dockerfile-5.6 @@ -271,7 +271,13 @@ RUN set -eux \ # ---------- type: apt ---------- git \ jq \ + mupdf-tools \ + openssh-client \ + rsync \ shellcheck \ + subversion \ + tig \ + zsh \ && rm -rf /var/lib/apt/lists/* ### @@ -382,7 +388,15 @@ RUN set -eux \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache laravel/installer:2.2.0 \ && ln -s /usr/local/src/composer/vendor/laravel/installer/laravel /usr/local/bin/ \ && rm -rf /usr/local/src/composer/cache/* \ - && laravel --version | grep -E '^Laravel Installer\s[0-9][.0-9]+$' || (laravel --version; false) \ + && laravel --version | grep version | grep -E '[0-9]\.[0-9]+' || (laravel --version; false) \ + && true + +# -------------------- (composer) laravel-lumen -------------------- +RUN set -eux \ + && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache laravel/lumen-installer \ + && ln -s /usr/local/src/composer/vendor/laravel/lumen-installer/lumen /usr/local/bin/ \ + && rm -rf /usr/local/src/composer/cache/* \ + && lumen --version 2>/dev/null | grep ^Lumen | grep -E '[0-9]\.[0-9]+' || (lumen --version; false) \ && true # -------------------- (custom) linkcheck -------------------- @@ -392,14 +406,6 @@ RUN set -eux \ && linkcheck --version | grep -E 'v[0-9][.0-9]+' || (linkcheck --version; false) \ && true -# -------------------- (composer) lumen -------------------- -RUN set -eux \ - && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache laravel/lumen-installer \ - && ln -s /usr/local/src/composer/vendor/laravel/lumen-installer/lumen /usr/local/bin/ \ - && rm -rf /usr/local/src/composer/cache/* \ - && lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[0-9][.0-9]+$' || (lumen --version; false) \ - && true - # -------------------- (npm) mdlint -------------------- RUN set -eux \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force mdlint' devilbox \ @@ -407,6 +413,55 @@ RUN set -eux \ && mdlint --version | grep -E '[0-9][.0-9]+' || (mdlint --version; false) \ && true +# -------------------- (apt) mupdf-tools -------------------- +RUN set -eux \ + && echo test > test.txt \ + && mutool create -o test.pdf test.txt \ + && file test.pdf | gre 'PDF document' \ + && rm test.txt \ + && rm test.pdf \ + \ + && true + +# -------------------- (composer) phalcon-devtools -------------------- +RUN set -eux \ + && if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \ + echo "extension=phalcon.so" > /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if find /usr/local/lib/php/extensions/ -name psr.so | grep psr; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache phalcon/devtools:3.4.11 \ + && ln -s /usr/local/src/composer/vendor/phalcon/devtools/phalcon /usr/local/bin/ \ + && rm -rf /usr/local/src/composer/cache/* \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini ]; then \ + rm /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-psr.ini ]; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + && if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \ + echo "extension=phalcon.so" > /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if find /usr/local/lib/php/extensions/ -name psr.so | grep psr; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + \ + && phalcon commands | grep -E '[0-9][.0-9]+' || (phalcon commands; false) \ + \ + \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini ]; then \ + rm /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-psr.ini ]; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + && true + # -------------------- (custom) php-cs-fixer -------------------- RUN set -eux \ && PHP_CS_FIXER_URL="https://cs.symfony.com/download/php-cs-fixer-v2.phar" \ @@ -467,6 +522,16 @@ RUN set -eux \ && pwncat --version 2>&1 | grep -E 'Version [0-9][.0-9]+' || (pwncat --version; false) \ && true +# -------------------- (apt) ssh -------------------- +RUN set -eux \ + && ssh -V 2>&1 | grep ^OpenSSH || (ssh -V; false) \ + && true + +# -------------------- (apt) rsync -------------------- +RUN set -eux \ + && rsync --version | grep version | grep -E '[0-9]\.[0-9]+' || (rsync --version; false) \ + && true + # -------------------- (npm) sass -------------------- RUN set -eux \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force sass' devilbox \ @@ -486,12 +551,22 @@ RUN set -eux \ && stylelint --version | grep -E '[0-9][.0-9]+' || (stylelint --version; false) \ && true +# -------------------- (apt) svn -------------------- +RUN set -eux \ + && svn --version | grep version | grep -E '[0-9]+\.[0-9]+' || (svn --version; false) \ + && true + # -------------------- (custom) symfony-cli -------------------- RUN set -eux \ && curl -sS https://get.symfony.com/cli/installer | bash -s -- --install-dir /usr/local/bin \ && symfony --no-ansi -V | grep -E 'version [0-9][.0-9]+' || (symfony --no-ansi -V; false) \ && true +# -------------------- (apt) tig -------------------- +RUN set -eux \ + && tig --version 2>&1 | grep -E '[0-9][.0-9]+' || (tig --version; false) \ + && true + # -------------------- (npm) vue-cli -------------------- RUN set -eux \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force @vue/cli' devilbox \ @@ -526,6 +601,11 @@ RUN set -eux \ && yq --version 2>&1 | grep -E '[0-9][.0-9]+' || (yq --version; false) \ && true +# -------------------- (apt) zsh -------------------- +RUN set -eux \ + && zsh --version 2>&1 | grep -E '[0-9][.0-9]+' || (zsh --version; false) \ + && true + ### ### Post fixes ### @@ -563,7 +643,13 @@ RUN set -eux \ # ---------- type: apt ---------- git \ jq \ + mupdf-tools \ + openssh-client \ + rsync \ shellcheck \ + subversion \ + tig \ + zsh \ && rm -rf /var/lib/apt/lists/* ### @@ -677,7 +763,12 @@ RUN set -eux \ # -------------------- (composer) laravel-installer -------------------- RUN set -eux \ - && laravel --version | grep -E '^Laravel Installer\s[0-9][.0-9]+$' || (laravel --version; false) \ + && laravel --version | grep version | grep -E '[0-9]\.[0-9]+' || (laravel --version; false) \ + && true + +# -------------------- (composer) laravel-lumen -------------------- +RUN set -eux \ + && lumen --version 2>/dev/null | grep ^Lumen | grep -E '[0-9]\.[0-9]+' || (lumen --version; false) \ && true # -------------------- (custom) linkcheck -------------------- @@ -685,16 +776,43 @@ RUN set -eux \ && linkcheck --version | grep -E 'v[0-9][.0-9]+' || (linkcheck --version; false) \ && true -# -------------------- (composer) lumen -------------------- -RUN set -eux \ - && lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[0-9][.0-9]+$' || (lumen --version; false) \ - && true - # -------------------- (npm) mdlint -------------------- RUN set -eux \ && mdlint --version | grep -E '[0-9][.0-9]+' || (mdlint --version; false) \ && true +# -------------------- (apt) mupdf-tools -------------------- +RUN set -eux \ + && echo test > test.txt \ + && mutool create -o test.pdf test.txt \ + && file test.pdf | gre 'PDF document' \ + && rm test.txt \ + && rm test.pdf \ + \ + && true + +# -------------------- (composer) phalcon-devtools -------------------- +RUN set -eux \ + && if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \ + echo "extension=phalcon.so" > /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if find /usr/local/lib/php/extensions/ -name psr.so | grep psr; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + \ + && phalcon commands | grep -E '[0-9][.0-9]+' || (phalcon commands; false) \ + \ + \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini ]; then \ + rm /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-psr.ini ]; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + && true + # -------------------- (custom) php-cs-fixer -------------------- RUN set -eux \ && php-cs-fixer --version 2>&1 | grep -E 'Fixer\s+(version\s*)?[-_.0-9]+\s+' || (php-cs-fixer --version; false) \ @@ -730,6 +848,16 @@ RUN set -eux \ && pwncat --version 2>&1 | grep -E 'Version [0-9][.0-9]+' || (pwncat --version; false) \ && true +# -------------------- (apt) ssh -------------------- +RUN set -eux \ + && ssh -V 2>&1 | grep ^OpenSSH || (ssh -V; false) \ + && true + +# -------------------- (apt) rsync -------------------- +RUN set -eux \ + && rsync --version | grep version | grep -E '[0-9]\.[0-9]+' || (rsync --version; false) \ + && true + # -------------------- (npm) sass -------------------- RUN set -eux \ && sass --version | grep -E '[0-9][.0-9]+' || (sass --version; false) \ @@ -745,11 +873,21 @@ RUN set -eux \ && stylelint --version | grep -E '[0-9][.0-9]+' || (stylelint --version; false) \ && true +# -------------------- (apt) svn -------------------- +RUN set -eux \ + && svn --version | grep version | grep -E '[0-9]+\.[0-9]+' || (svn --version; false) \ + && true + # -------------------- (custom) symfony-cli -------------------- RUN set -eux \ && symfony --no-ansi -V | grep -E 'version [0-9][.0-9]+' || (symfony --no-ansi -V; false) \ && true +# -------------------- (apt) tig -------------------- +RUN set -eux \ + && tig --version 2>&1 | grep -E '[0-9][.0-9]+' || (tig --version; false) \ + && true + # -------------------- (npm) vue-cli -------------------- RUN set -eux \ && vue --version | grep -E '[0-9][.0-9]+' || (vue --version; false) \ @@ -775,6 +913,11 @@ RUN set -eux \ && yq --version 2>&1 | grep -E '[0-9][.0-9]+' || (yq --version; false) \ && true +# -------------------- (apt) zsh -------------------- +RUN set -eux \ + && zsh --version 2>&1 | grep -E '[0-9][.0-9]+' || (zsh --version; false) \ + && true + ### ### Re-activate modules which have been deactivated in mods (for testing). ### diff --git a/Dockerfiles/work/Dockerfile-7.0 b/Dockerfiles/work/Dockerfile-7.0 index 7dc5278..b0d7d25 100644 --- a/Dockerfiles/work/Dockerfile-7.0 +++ b/Dockerfiles/work/Dockerfile-7.0 @@ -271,7 +271,13 @@ RUN set -eux \ # ---------- type: apt ---------- git \ jq \ + mupdf-tools \ + openssh-client \ + rsync \ shellcheck \ + subversion \ + tig \ + zsh \ && rm -rf /var/lib/apt/lists/* ### @@ -382,7 +388,15 @@ RUN set -eux \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache laravel/installer:2.2.0 \ && ln -s /usr/local/src/composer/vendor/laravel/installer/laravel /usr/local/bin/ \ && rm -rf /usr/local/src/composer/cache/* \ - && laravel --version | grep -E '^Laravel Installer\s[0-9][.0-9]+$' || (laravel --version; false) \ + && laravel --version | grep version | grep -E '[0-9]\.[0-9]+' || (laravel --version; false) \ + && true + +# -------------------- (composer) laravel-lumen -------------------- +RUN set -eux \ + && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache laravel/lumen-installer \ + && ln -s /usr/local/src/composer/vendor/laravel/lumen-installer/lumen /usr/local/bin/ \ + && rm -rf /usr/local/src/composer/cache/* \ + && lumen --version 2>/dev/null | grep ^Lumen | grep -E '[0-9]\.[0-9]+' || (lumen --version; false) \ && true # -------------------- (custom) linkcheck -------------------- @@ -392,14 +406,6 @@ RUN set -eux \ && linkcheck --version | grep -E 'v[0-9][.0-9]+' || (linkcheck --version; false) \ && true -# -------------------- (composer) lumen -------------------- -RUN set -eux \ - && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache laravel/lumen-installer \ - && ln -s /usr/local/src/composer/vendor/laravel/lumen-installer/lumen /usr/local/bin/ \ - && rm -rf /usr/local/src/composer/cache/* \ - && lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[0-9][.0-9]+$' || (lumen --version; false) \ - && true - # -------------------- (npm) mdlint -------------------- RUN set -eux \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force mdlint' devilbox \ @@ -407,6 +413,55 @@ RUN set -eux \ && mdlint --version | grep -E '[0-9][.0-9]+' || (mdlint --version; false) \ && true +# -------------------- (apt) mupdf-tools -------------------- +RUN set -eux \ + && echo test > test.txt \ + && mutool create -o test.pdf test.txt \ + && file test.pdf | gre 'PDF document' \ + && rm test.txt \ + && rm test.pdf \ + \ + && true + +# -------------------- (composer) phalcon-devtools -------------------- +RUN set -eux \ + && if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \ + echo "extension=phalcon.so" > /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if find /usr/local/lib/php/extensions/ -name psr.so | grep psr; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache phalcon/devtools:3.4.11 \ + && ln -s /usr/local/src/composer/vendor/phalcon/devtools/phalcon /usr/local/bin/ \ + && rm -rf /usr/local/src/composer/cache/* \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini ]; then \ + rm /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-psr.ini ]; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + && if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \ + echo "extension=phalcon.so" > /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if find /usr/local/lib/php/extensions/ -name psr.so | grep psr; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + \ + && phalcon commands | grep -E '[0-9][.0-9]+' || (phalcon commands; false) \ + \ + \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini ]; then \ + rm /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-psr.ini ]; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + && true + # -------------------- (custom) php-cs-fixer -------------------- RUN set -eux \ && PHP_CS_FIXER_URL="https://cs.symfony.com/download/php-cs-fixer-v2.phar" \ @@ -467,6 +522,16 @@ RUN set -eux \ && pwncat --version 2>&1 | grep -E 'Version [0-9][.0-9]+' || (pwncat --version; false) \ && true +# -------------------- (apt) ssh -------------------- +RUN set -eux \ + && ssh -V 2>&1 | grep ^OpenSSH || (ssh -V; false) \ + && true + +# -------------------- (apt) rsync -------------------- +RUN set -eux \ + && rsync --version | grep version | grep -E '[0-9]\.[0-9]+' || (rsync --version; false) \ + && true + # -------------------- (npm) sass -------------------- RUN set -eux \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force sass' devilbox \ @@ -486,12 +551,22 @@ RUN set -eux \ && stylelint --version | grep -E '[0-9][.0-9]+' || (stylelint --version; false) \ && true +# -------------------- (apt) svn -------------------- +RUN set -eux \ + && svn --version | grep version | grep -E '[0-9]+\.[0-9]+' || (svn --version; false) \ + && true + # -------------------- (custom) symfony-cli -------------------- RUN set -eux \ && curl -sS https://get.symfony.com/cli/installer | bash -s -- --install-dir /usr/local/bin \ && symfony --no-ansi -V | grep -E 'version [0-9][.0-9]+' || (symfony --no-ansi -V; false) \ && true +# -------------------- (apt) tig -------------------- +RUN set -eux \ + && tig --version 2>&1 | grep -E '[0-9][.0-9]+' || (tig --version; false) \ + && true + # -------------------- (npm) vue-cli -------------------- RUN set -eux \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force @vue/cli' devilbox \ @@ -526,6 +601,11 @@ RUN set -eux \ && yq --version 2>&1 | grep -E '[0-9][.0-9]+' || (yq --version; false) \ && true +# -------------------- (apt) zsh -------------------- +RUN set -eux \ + && zsh --version 2>&1 | grep -E '[0-9][.0-9]+' || (zsh --version; false) \ + && true + ### ### Post fixes ### @@ -563,7 +643,13 @@ RUN set -eux \ # ---------- type: apt ---------- git \ jq \ + mupdf-tools \ + openssh-client \ + rsync \ shellcheck \ + subversion \ + tig \ + zsh \ && rm -rf /var/lib/apt/lists/* ### @@ -677,7 +763,12 @@ RUN set -eux \ # -------------------- (composer) laravel-installer -------------------- RUN set -eux \ - && laravel --version | grep -E '^Laravel Installer\s[0-9][.0-9]+$' || (laravel --version; false) \ + && laravel --version | grep version | grep -E '[0-9]\.[0-9]+' || (laravel --version; false) \ + && true + +# -------------------- (composer) laravel-lumen -------------------- +RUN set -eux \ + && lumen --version 2>/dev/null | grep ^Lumen | grep -E '[0-9]\.[0-9]+' || (lumen --version; false) \ && true # -------------------- (custom) linkcheck -------------------- @@ -685,16 +776,43 @@ RUN set -eux \ && linkcheck --version | grep -E 'v[0-9][.0-9]+' || (linkcheck --version; false) \ && true -# -------------------- (composer) lumen -------------------- -RUN set -eux \ - && lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[0-9][.0-9]+$' || (lumen --version; false) \ - && true - # -------------------- (npm) mdlint -------------------- RUN set -eux \ && mdlint --version | grep -E '[0-9][.0-9]+' || (mdlint --version; false) \ && true +# -------------------- (apt) mupdf-tools -------------------- +RUN set -eux \ + && echo test > test.txt \ + && mutool create -o test.pdf test.txt \ + && file test.pdf | gre 'PDF document' \ + && rm test.txt \ + && rm test.pdf \ + \ + && true + +# -------------------- (composer) phalcon-devtools -------------------- +RUN set -eux \ + && if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \ + echo "extension=phalcon.so" > /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if find /usr/local/lib/php/extensions/ -name psr.so | grep psr; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + \ + && phalcon commands | grep -E '[0-9][.0-9]+' || (phalcon commands; false) \ + \ + \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini ]; then \ + rm /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-psr.ini ]; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + && true + # -------------------- (custom) php-cs-fixer -------------------- RUN set -eux \ && php-cs-fixer --version 2>&1 | grep -E 'Fixer\s+(version\s*)?[-_.0-9]+\s+' || (php-cs-fixer --version; false) \ @@ -730,6 +848,16 @@ RUN set -eux \ && pwncat --version 2>&1 | grep -E 'Version [0-9][.0-9]+' || (pwncat --version; false) \ && true +# -------------------- (apt) ssh -------------------- +RUN set -eux \ + && ssh -V 2>&1 | grep ^OpenSSH || (ssh -V; false) \ + && true + +# -------------------- (apt) rsync -------------------- +RUN set -eux \ + && rsync --version | grep version | grep -E '[0-9]\.[0-9]+' || (rsync --version; false) \ + && true + # -------------------- (npm) sass -------------------- RUN set -eux \ && sass --version | grep -E '[0-9][.0-9]+' || (sass --version; false) \ @@ -745,11 +873,21 @@ RUN set -eux \ && stylelint --version | grep -E '[0-9][.0-9]+' || (stylelint --version; false) \ && true +# -------------------- (apt) svn -------------------- +RUN set -eux \ + && svn --version | grep version | grep -E '[0-9]+\.[0-9]+' || (svn --version; false) \ + && true + # -------------------- (custom) symfony-cli -------------------- RUN set -eux \ && symfony --no-ansi -V | grep -E 'version [0-9][.0-9]+' || (symfony --no-ansi -V; false) \ && true +# -------------------- (apt) tig -------------------- +RUN set -eux \ + && tig --version 2>&1 | grep -E '[0-9][.0-9]+' || (tig --version; false) \ + && true + # -------------------- (npm) vue-cli -------------------- RUN set -eux \ && vue --version | grep -E '[0-9][.0-9]+' || (vue --version; false) \ @@ -775,6 +913,11 @@ RUN set -eux \ && yq --version 2>&1 | grep -E '[0-9][.0-9]+' || (yq --version; false) \ && true +# -------------------- (apt) zsh -------------------- +RUN set -eux \ + && zsh --version 2>&1 | grep -E '[0-9][.0-9]+' || (zsh --version; false) \ + && true + ### ### Re-activate modules which have been deactivated in mods (for testing). ### diff --git a/Dockerfiles/work/Dockerfile-7.1 b/Dockerfiles/work/Dockerfile-7.1 index b151e38..88d203b 100644 --- a/Dockerfiles/work/Dockerfile-7.1 +++ b/Dockerfiles/work/Dockerfile-7.1 @@ -271,7 +271,13 @@ RUN set -eux \ # ---------- type: apt ---------- git \ jq \ + mupdf-tools \ + openssh-client \ + rsync \ shellcheck \ + subversion \ + tig \ + zsh \ && rm -rf /var/lib/apt/lists/* ### @@ -382,7 +388,15 @@ RUN set -eux \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache laravel/installer:2.3.0 \ && ln -s /usr/local/src/composer/vendor/laravel/installer/laravel /usr/local/bin/ \ && rm -rf /usr/local/src/composer/cache/* \ - && laravel --version | grep -E '^Laravel Installer\s[0-9][.0-9]+$' || (laravel --version; false) \ + && laravel --version | grep version | grep -E '[0-9]\.[0-9]+' || (laravel --version; false) \ + && true + +# -------------------- (composer) laravel-lumen -------------------- +RUN set -eux \ + && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache laravel/lumen-installer \ + && ln -s /usr/local/src/composer/vendor/laravel/lumen-installer/lumen /usr/local/bin/ \ + && rm -rf /usr/local/src/composer/cache/* \ + && lumen --version 2>/dev/null | grep ^Lumen | grep -E '[0-9]\.[0-9]+' || (lumen --version; false) \ && true # -------------------- (custom) linkcheck -------------------- @@ -392,14 +406,6 @@ RUN set -eux \ && linkcheck --version | grep -E 'v[0-9][.0-9]+' || (linkcheck --version; false) \ && true -# -------------------- (composer) lumen -------------------- -RUN set -eux \ - && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache laravel/lumen-installer \ - && ln -s /usr/local/src/composer/vendor/laravel/lumen-installer/lumen /usr/local/bin/ \ - && rm -rf /usr/local/src/composer/cache/* \ - && lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[0-9][.0-9]+$' || (lumen --version; false) \ - && true - # -------------------- (npm) mdlint -------------------- RUN set -eux \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force mdlint' devilbox \ @@ -407,6 +413,55 @@ RUN set -eux \ && mdlint --version | grep -E '[0-9][.0-9]+' || (mdlint --version; false) \ && true +# -------------------- (apt) mupdf-tools -------------------- +RUN set -eux \ + && echo test > test.txt \ + && mutool create -o test.pdf test.txt \ + && file test.pdf | gre 'PDF document' \ + && rm test.txt \ + && rm test.pdf \ + \ + && true + +# -------------------- (composer) phalcon-devtools -------------------- +RUN set -eux \ + && if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \ + echo "extension=phalcon.so" > /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if find /usr/local/lib/php/extensions/ -name psr.so | grep psr; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache phalcon/devtools:3.4.11 \ + && ln -s /usr/local/src/composer/vendor/phalcon/devtools/phalcon /usr/local/bin/ \ + && rm -rf /usr/local/src/composer/cache/* \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini ]; then \ + rm /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-psr.ini ]; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + && if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \ + echo "extension=phalcon.so" > /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if find /usr/local/lib/php/extensions/ -name psr.so | grep psr; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + \ + && phalcon commands | grep -E '[0-9][.0-9]+' || (phalcon commands; false) \ + \ + \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini ]; then \ + rm /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-psr.ini ]; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + && true + # -------------------- (custom) php-cs-fixer -------------------- RUN set -eux \ && PHP_CS_FIXER_URL="https://cs.symfony.com/download/php-cs-fixer-v2.phar" \ @@ -467,6 +522,16 @@ RUN set -eux \ && pwncat --version 2>&1 | grep -E 'Version [0-9][.0-9]+' || (pwncat --version; false) \ && true +# -------------------- (apt) ssh -------------------- +RUN set -eux \ + && ssh -V 2>&1 | grep ^OpenSSH || (ssh -V; false) \ + && true + +# -------------------- (apt) rsync -------------------- +RUN set -eux \ + && rsync --version | grep version | grep -E '[0-9]\.[0-9]+' || (rsync --version; false) \ + && true + # -------------------- (npm) sass -------------------- RUN set -eux \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force sass' devilbox \ @@ -486,12 +551,22 @@ RUN set -eux \ && stylelint --version | grep -E '[0-9][.0-9]+' || (stylelint --version; false) \ && true +# -------------------- (apt) svn -------------------- +RUN set -eux \ + && svn --version | grep version | grep -E '[0-9]+\.[0-9]+' || (svn --version; false) \ + && true + # -------------------- (custom) symfony-cli -------------------- RUN set -eux \ && curl -sS https://get.symfony.com/cli/installer | bash -s -- --install-dir /usr/local/bin \ && symfony --no-ansi -V | grep -E 'version [0-9][.0-9]+' || (symfony --no-ansi -V; false) \ && true +# -------------------- (apt) tig -------------------- +RUN set -eux \ + && tig --version 2>&1 | grep -E '[0-9][.0-9]+' || (tig --version; false) \ + && true + # -------------------- (npm) vue-cli -------------------- RUN set -eux \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force @vue/cli' devilbox \ @@ -526,6 +601,11 @@ RUN set -eux \ && yq --version 2>&1 | grep -E '[0-9][.0-9]+' || (yq --version; false) \ && true +# -------------------- (apt) zsh -------------------- +RUN set -eux \ + && zsh --version 2>&1 | grep -E '[0-9][.0-9]+' || (zsh --version; false) \ + && true + ### ### Post fixes ### @@ -563,7 +643,13 @@ RUN set -eux \ # ---------- type: apt ---------- git \ jq \ + mupdf-tools \ + openssh-client \ + rsync \ shellcheck \ + subversion \ + tig \ + zsh \ && rm -rf /var/lib/apt/lists/* ### @@ -677,7 +763,12 @@ RUN set -eux \ # -------------------- (composer) laravel-installer -------------------- RUN set -eux \ - && laravel --version | grep -E '^Laravel Installer\s[0-9][.0-9]+$' || (laravel --version; false) \ + && laravel --version | grep version | grep -E '[0-9]\.[0-9]+' || (laravel --version; false) \ + && true + +# -------------------- (composer) laravel-lumen -------------------- +RUN set -eux \ + && lumen --version 2>/dev/null | grep ^Lumen | grep -E '[0-9]\.[0-9]+' || (lumen --version; false) \ && true # -------------------- (custom) linkcheck -------------------- @@ -685,16 +776,43 @@ RUN set -eux \ && linkcheck --version | grep -E 'v[0-9][.0-9]+' || (linkcheck --version; false) \ && true -# -------------------- (composer) lumen -------------------- -RUN set -eux \ - && lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[0-9][.0-9]+$' || (lumen --version; false) \ - && true - # -------------------- (npm) mdlint -------------------- RUN set -eux \ && mdlint --version | grep -E '[0-9][.0-9]+' || (mdlint --version; false) \ && true +# -------------------- (apt) mupdf-tools -------------------- +RUN set -eux \ + && echo test > test.txt \ + && mutool create -o test.pdf test.txt \ + && file test.pdf | gre 'PDF document' \ + && rm test.txt \ + && rm test.pdf \ + \ + && true + +# -------------------- (composer) phalcon-devtools -------------------- +RUN set -eux \ + && if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \ + echo "extension=phalcon.so" > /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if find /usr/local/lib/php/extensions/ -name psr.so | grep psr; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + \ + && phalcon commands | grep -E '[0-9][.0-9]+' || (phalcon commands; false) \ + \ + \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini ]; then \ + rm /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-psr.ini ]; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + && true + # -------------------- (custom) php-cs-fixer -------------------- RUN set -eux \ && php-cs-fixer --version 2>&1 | grep -E 'Fixer\s+(version\s*)?[-_.0-9]+\s+' || (php-cs-fixer --version; false) \ @@ -730,6 +848,16 @@ RUN set -eux \ && pwncat --version 2>&1 | grep -E 'Version [0-9][.0-9]+' || (pwncat --version; false) \ && true +# -------------------- (apt) ssh -------------------- +RUN set -eux \ + && ssh -V 2>&1 | grep ^OpenSSH || (ssh -V; false) \ + && true + +# -------------------- (apt) rsync -------------------- +RUN set -eux \ + && rsync --version | grep version | grep -E '[0-9]\.[0-9]+' || (rsync --version; false) \ + && true + # -------------------- (npm) sass -------------------- RUN set -eux \ && sass --version | grep -E '[0-9][.0-9]+' || (sass --version; false) \ @@ -745,11 +873,21 @@ RUN set -eux \ && stylelint --version | grep -E '[0-9][.0-9]+' || (stylelint --version; false) \ && true +# -------------------- (apt) svn -------------------- +RUN set -eux \ + && svn --version | grep version | grep -E '[0-9]+\.[0-9]+' || (svn --version; false) \ + && true + # -------------------- (custom) symfony-cli -------------------- RUN set -eux \ && symfony --no-ansi -V | grep -E 'version [0-9][.0-9]+' || (symfony --no-ansi -V; false) \ && true +# -------------------- (apt) tig -------------------- +RUN set -eux \ + && tig --version 2>&1 | grep -E '[0-9][.0-9]+' || (tig --version; false) \ + && true + # -------------------- (npm) vue-cli -------------------- RUN set -eux \ && vue --version | grep -E '[0-9][.0-9]+' || (vue --version; false) \ @@ -775,6 +913,11 @@ RUN set -eux \ && yq --version 2>&1 | grep -E '[0-9][.0-9]+' || (yq --version; false) \ && true +# -------------------- (apt) zsh -------------------- +RUN set -eux \ + && zsh --version 2>&1 | grep -E '[0-9][.0-9]+' || (zsh --version; false) \ + && true + ### ### Re-activate modules which have been deactivated in mods (for testing). ### diff --git a/Dockerfiles/work/Dockerfile-7.2 b/Dockerfiles/work/Dockerfile-7.2 index d867e5f..1f20261 100644 --- a/Dockerfiles/work/Dockerfile-7.2 +++ b/Dockerfiles/work/Dockerfile-7.2 @@ -271,7 +271,13 @@ RUN set -eux \ # ---------- type: apt ---------- git \ jq \ + mupdf-tools \ + openssh-client \ + rsync \ shellcheck \ + subversion \ + tig \ + zsh \ && rm -rf /var/lib/apt/lists/* ### @@ -382,7 +388,15 @@ RUN set -eux \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache laravel/installer:4.0.0 \ && ln -s /usr/local/src/composer/vendor/laravel/installer/bin/laravel /usr/local/bin/ \ && rm -rf /usr/local/src/composer/cache/* \ - && laravel --version | grep -E '^Laravel Installer\s[0-9][.0-9]+$' || (laravel --version; false) \ + && laravel --version | grep version | grep -E '[0-9]\.[0-9]+' || (laravel --version; false) \ + && true + +# -------------------- (composer) laravel-lumen -------------------- +RUN set -eux \ + && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache laravel/lumen-installer \ + && ln -s /usr/local/src/composer/vendor/laravel/lumen-installer/lumen /usr/local/bin/ \ + && rm -rf /usr/local/src/composer/cache/* \ + && lumen --version 2>/dev/null | grep ^Lumen | grep -E '[0-9]\.[0-9]+' || (lumen --version; false) \ && true # -------------------- (custom) linkcheck -------------------- @@ -392,14 +406,6 @@ RUN set -eux \ && linkcheck --version | grep -E 'v[0-9][.0-9]+' || (linkcheck --version; false) \ && true -# -------------------- (composer) lumen -------------------- -RUN set -eux \ - && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache laravel/lumen-installer \ - && ln -s /usr/local/src/composer/vendor/laravel/lumen-installer/lumen /usr/local/bin/ \ - && rm -rf /usr/local/src/composer/cache/* \ - && lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[0-9][.0-9]+$' || (lumen --version; false) \ - && true - # -------------------- (npm) mdlint -------------------- RUN set -eux \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force mdlint' devilbox \ @@ -407,6 +413,55 @@ RUN set -eux \ && mdlint --version | grep -E '[0-9][.0-9]+' || (mdlint --version; false) \ && true +# -------------------- (apt) mupdf-tools -------------------- +RUN set -eux \ + && echo test > test.txt \ + && mutool create -o test.pdf test.txt \ + && file test.pdf | gre 'PDF document' \ + && rm test.txt \ + && rm test.pdf \ + \ + && true + +# -------------------- (composer) phalcon-devtools -------------------- +RUN set -eux \ + && if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \ + echo "extension=phalcon.so" > /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if find /usr/local/lib/php/extensions/ -name psr.so | grep psr; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache phalcon/devtools \ + && ln -s /usr/local/src/composer/vendor/phalcon/devtools/phalcon /usr/local/bin/ \ + && rm -rf /usr/local/src/composer/cache/* \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini ]; then \ + rm /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-psr.ini ]; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + && if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \ + echo "extension=phalcon.so" > /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if find /usr/local/lib/php/extensions/ -name psr.so | grep psr; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + \ + && phalcon commands | grep -E '[0-9][.0-9]+' || (phalcon commands; false) \ + \ + \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini ]; then \ + rm /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-psr.ini ]; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + && true + # -------------------- (custom) php-cs-fixer -------------------- RUN set -eux \ && PHP_CS_FIXER_URL="https://cs.symfony.com/download/php-cs-fixer-v2.phar" \ @@ -467,6 +522,16 @@ RUN set -eux \ && pwncat --version 2>&1 | grep -E 'Version [0-9][.0-9]+' || (pwncat --version; false) \ && true +# -------------------- (apt) ssh -------------------- +RUN set -eux \ + && ssh -V 2>&1 | grep ^OpenSSH || (ssh -V; false) \ + && true + +# -------------------- (apt) rsync -------------------- +RUN set -eux \ + && rsync --version | grep version | grep -E '[0-9]\.[0-9]+' || (rsync --version; false) \ + && true + # -------------------- (npm) sass -------------------- RUN set -eux \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force sass' devilbox \ @@ -486,12 +551,22 @@ RUN set -eux \ && stylelint --version | grep -E '[0-9][.0-9]+' || (stylelint --version; false) \ && true +# -------------------- (apt) svn -------------------- +RUN set -eux \ + && svn --version | grep version | grep -E '[0-9]+\.[0-9]+' || (svn --version; false) \ + && true + # -------------------- (custom) symfony-cli -------------------- RUN set -eux \ && curl -sS https://get.symfony.com/cli/installer | bash -s -- --install-dir /usr/local/bin \ && symfony --no-ansi -V | grep -E 'version [0-9][.0-9]+' || (symfony --no-ansi -V; false) \ && true +# -------------------- (apt) tig -------------------- +RUN set -eux \ + && tig --version 2>&1 | grep -E '[0-9][.0-9]+' || (tig --version; false) \ + && true + # -------------------- (npm) vue-cli -------------------- RUN set -eux \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force @vue/cli' devilbox \ @@ -526,6 +601,11 @@ RUN set -eux \ && yq --version 2>&1 | grep -E '[0-9][.0-9]+' || (yq --version; false) \ && true +# -------------------- (apt) zsh -------------------- +RUN set -eux \ + && zsh --version 2>&1 | grep -E '[0-9][.0-9]+' || (zsh --version; false) \ + && true + ### ### Post fixes ### @@ -563,7 +643,13 @@ RUN set -eux \ # ---------- type: apt ---------- git \ jq \ + mupdf-tools \ + openssh-client \ + rsync \ shellcheck \ + subversion \ + tig \ + zsh \ && rm -rf /var/lib/apt/lists/* ### @@ -677,7 +763,12 @@ RUN set -eux \ # -------------------- (composer) laravel-installer -------------------- RUN set -eux \ - && laravel --version | grep -E '^Laravel Installer\s[0-9][.0-9]+$' || (laravel --version; false) \ + && laravel --version | grep version | grep -E '[0-9]\.[0-9]+' || (laravel --version; false) \ + && true + +# -------------------- (composer) laravel-lumen -------------------- +RUN set -eux \ + && lumen --version 2>/dev/null | grep ^Lumen | grep -E '[0-9]\.[0-9]+' || (lumen --version; false) \ && true # -------------------- (custom) linkcheck -------------------- @@ -685,16 +776,43 @@ RUN set -eux \ && linkcheck --version | grep -E 'v[0-9][.0-9]+' || (linkcheck --version; false) \ && true -# -------------------- (composer) lumen -------------------- -RUN set -eux \ - && lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[0-9][.0-9]+$' || (lumen --version; false) \ - && true - # -------------------- (npm) mdlint -------------------- RUN set -eux \ && mdlint --version | grep -E '[0-9][.0-9]+' || (mdlint --version; false) \ && true +# -------------------- (apt) mupdf-tools -------------------- +RUN set -eux \ + && echo test > test.txt \ + && mutool create -o test.pdf test.txt \ + && file test.pdf | gre 'PDF document' \ + && rm test.txt \ + && rm test.pdf \ + \ + && true + +# -------------------- (composer) phalcon-devtools -------------------- +RUN set -eux \ + && if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \ + echo "extension=phalcon.so" > /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if find /usr/local/lib/php/extensions/ -name psr.so | grep psr; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + \ + && phalcon commands | grep -E '[0-9][.0-9]+' || (phalcon commands; false) \ + \ + \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini ]; then \ + rm /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-psr.ini ]; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + && true + # -------------------- (custom) php-cs-fixer -------------------- RUN set -eux \ && php-cs-fixer --version 2>&1 | grep -E 'Fixer\s+(version\s*)?[-_.0-9]+\s+' || (php-cs-fixer --version; false) \ @@ -730,6 +848,16 @@ RUN set -eux \ && pwncat --version 2>&1 | grep -E 'Version [0-9][.0-9]+' || (pwncat --version; false) \ && true +# -------------------- (apt) ssh -------------------- +RUN set -eux \ + && ssh -V 2>&1 | grep ^OpenSSH || (ssh -V; false) \ + && true + +# -------------------- (apt) rsync -------------------- +RUN set -eux \ + && rsync --version | grep version | grep -E '[0-9]\.[0-9]+' || (rsync --version; false) \ + && true + # -------------------- (npm) sass -------------------- RUN set -eux \ && sass --version | grep -E '[0-9][.0-9]+' || (sass --version; false) \ @@ -745,11 +873,21 @@ RUN set -eux \ && stylelint --version | grep -E '[0-9][.0-9]+' || (stylelint --version; false) \ && true +# -------------------- (apt) svn -------------------- +RUN set -eux \ + && svn --version | grep version | grep -E '[0-9]+\.[0-9]+' || (svn --version; false) \ + && true + # -------------------- (custom) symfony-cli -------------------- RUN set -eux \ && symfony --no-ansi -V | grep -E 'version [0-9][.0-9]+' || (symfony --no-ansi -V; false) \ && true +# -------------------- (apt) tig -------------------- +RUN set -eux \ + && tig --version 2>&1 | grep -E '[0-9][.0-9]+' || (tig --version; false) \ + && true + # -------------------- (npm) vue-cli -------------------- RUN set -eux \ && vue --version | grep -E '[0-9][.0-9]+' || (vue --version; false) \ @@ -775,6 +913,11 @@ RUN set -eux \ && yq --version 2>&1 | grep -E '[0-9][.0-9]+' || (yq --version; false) \ && true +# -------------------- (apt) zsh -------------------- +RUN set -eux \ + && zsh --version 2>&1 | grep -E '[0-9][.0-9]+' || (zsh --version; false) \ + && true + ### ### Re-activate modules which have been deactivated in mods (for testing). ### diff --git a/Dockerfiles/work/Dockerfile-7.3 b/Dockerfiles/work/Dockerfile-7.3 index 7a0117d..72152ac 100644 --- a/Dockerfiles/work/Dockerfile-7.3 +++ b/Dockerfiles/work/Dockerfile-7.3 @@ -273,7 +273,13 @@ RUN set -eux \ # ---------- type: apt ---------- git \ jq \ + mupdf-tools \ + openssh-client \ + rsync \ shellcheck \ + subversion \ + tig \ + zsh \ && rm -rf /var/lib/apt/lists/* ### @@ -382,7 +388,15 @@ RUN set -eux \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache laravel/installer \ && ln -s /usr/local/src/composer/vendor/laravel/installer/bin/laravel /usr/local/bin/ \ && rm -rf /usr/local/src/composer/cache/* \ - && laravel --version | grep -E '^Laravel Installer\s[0-9][.0-9]+$' || (laravel --version; false) \ + && laravel --version | grep version | grep -E '[0-9]\.[0-9]+' || (laravel --version; false) \ + && true + +# -------------------- (composer) laravel-lumen -------------------- +RUN set -eux \ + && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache laravel/lumen-installer \ + && ln -s /usr/local/src/composer/vendor/laravel/lumen-installer/lumen /usr/local/bin/ \ + && rm -rf /usr/local/src/composer/cache/* \ + && lumen --version 2>/dev/null | grep ^Lumen | grep -E '[0-9]\.[0-9]+' || (lumen --version; false) \ && true # -------------------- (custom) linkcheck -------------------- @@ -392,14 +406,6 @@ RUN set -eux \ && linkcheck --version | grep -E 'v[0-9][.0-9]+' || (linkcheck --version; false) \ && true -# -------------------- (composer) lumen -------------------- -RUN set -eux \ - && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache laravel/lumen-installer \ - && ln -s /usr/local/src/composer/vendor/laravel/lumen-installer/lumen /usr/local/bin/ \ - && rm -rf /usr/local/src/composer/cache/* \ - && lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[0-9][.0-9]+$' || (lumen --version; false) \ - && true - # -------------------- (npm) mdlint -------------------- RUN set -eux \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force mdlint' devilbox \ @@ -407,6 +413,55 @@ RUN set -eux \ && mdlint --version | grep -E '[0-9][.0-9]+' || (mdlint --version; false) \ && true +# -------------------- (apt) mupdf-tools -------------------- +RUN set -eux \ + && echo test > test.txt \ + && mutool create -o test.pdf test.txt \ + && file test.pdf | gre 'PDF document' \ + && rm test.txt \ + && rm test.pdf \ + \ + && true + +# -------------------- (composer) phalcon-devtools -------------------- +RUN set -eux \ + && if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \ + echo "extension=phalcon.so" > /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if find /usr/local/lib/php/extensions/ -name psr.so | grep psr; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache phalcon/devtools \ + && ln -s /usr/local/src/composer/vendor/phalcon/devtools/phalcon /usr/local/bin/ \ + && rm -rf /usr/local/src/composer/cache/* \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini ]; then \ + rm /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-psr.ini ]; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + && if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \ + echo "extension=phalcon.so" > /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if find /usr/local/lib/php/extensions/ -name psr.so | grep psr; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + \ + && phalcon commands | grep -E '[0-9][.0-9]+' || (phalcon commands; false) \ + \ + \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini ]; then \ + rm /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-psr.ini ]; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + && true + # -------------------- (custom) php-cs-fixer -------------------- RUN set -eux \ && PHP_CS_FIXER_URL="https://cs.symfony.com/download/php-cs-fixer-v2.phar" \ @@ -467,6 +522,16 @@ RUN set -eux \ && pwncat --version 2>&1 | grep -E 'Version [0-9][.0-9]+' || (pwncat --version; false) \ && true +# -------------------- (apt) ssh -------------------- +RUN set -eux \ + && ssh -V 2>&1 | grep ^OpenSSH || (ssh -V; false) \ + && true + +# -------------------- (apt) rsync -------------------- +RUN set -eux \ + && rsync --version | grep version | grep -E '[0-9]\.[0-9]+' || (rsync --version; false) \ + && true + # -------------------- (npm) sass -------------------- RUN set -eux \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force sass' devilbox \ @@ -486,12 +551,22 @@ RUN set -eux \ && stylelint --version | grep -E '[0-9][.0-9]+' || (stylelint --version; false) \ && true +# -------------------- (apt) svn -------------------- +RUN set -eux \ + && svn --version | grep version | grep -E '[0-9]+\.[0-9]+' || (svn --version; false) \ + && true + # -------------------- (custom) symfony-cli -------------------- RUN set -eux \ && curl -sS https://get.symfony.com/cli/installer | bash -s -- --install-dir /usr/local/bin \ && symfony --no-ansi -V | grep -E 'version [0-9][.0-9]+' || (symfony --no-ansi -V; false) \ && true +# -------------------- (apt) tig -------------------- +RUN set -eux \ + && tig --version 2>&1 | grep -E '[0-9][.0-9]+' || (tig --version; false) \ + && true + # -------------------- (npm) vue-cli -------------------- RUN set -eux \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force @vue/cli' devilbox \ @@ -526,6 +601,11 @@ RUN set -eux \ && yq --version 2>&1 | grep -E '[0-9][.0-9]+' || (yq --version; false) \ && true +# -------------------- (apt) zsh -------------------- +RUN set -eux \ + && zsh --version 2>&1 | grep -E '[0-9][.0-9]+' || (zsh --version; false) \ + && true + ### ### Post fixes ### @@ -563,7 +643,13 @@ RUN set -eux \ # ---------- type: apt ---------- git \ jq \ + mupdf-tools \ + openssh-client \ + rsync \ shellcheck \ + subversion \ + tig \ + zsh \ && rm -rf /var/lib/apt/lists/* ### @@ -677,7 +763,12 @@ RUN set -eux \ # -------------------- (composer) laravel-installer -------------------- RUN set -eux \ - && laravel --version | grep -E '^Laravel Installer\s[0-9][.0-9]+$' || (laravel --version; false) \ + && laravel --version | grep version | grep -E '[0-9]\.[0-9]+' || (laravel --version; false) \ + && true + +# -------------------- (composer) laravel-lumen -------------------- +RUN set -eux \ + && lumen --version 2>/dev/null | grep ^Lumen | grep -E '[0-9]\.[0-9]+' || (lumen --version; false) \ && true # -------------------- (custom) linkcheck -------------------- @@ -685,16 +776,43 @@ RUN set -eux \ && linkcheck --version | grep -E 'v[0-9][.0-9]+' || (linkcheck --version; false) \ && true -# -------------------- (composer) lumen -------------------- -RUN set -eux \ - && lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[0-9][.0-9]+$' || (lumen --version; false) \ - && true - # -------------------- (npm) mdlint -------------------- RUN set -eux \ && mdlint --version | grep -E '[0-9][.0-9]+' || (mdlint --version; false) \ && true +# -------------------- (apt) mupdf-tools -------------------- +RUN set -eux \ + && echo test > test.txt \ + && mutool create -o test.pdf test.txt \ + && file test.pdf | gre 'PDF document' \ + && rm test.txt \ + && rm test.pdf \ + \ + && true + +# -------------------- (composer) phalcon-devtools -------------------- +RUN set -eux \ + && if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \ + echo "extension=phalcon.so" > /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if find /usr/local/lib/php/extensions/ -name psr.so | grep psr; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + \ + && phalcon commands | grep -E '[0-9][.0-9]+' || (phalcon commands; false) \ + \ + \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini ]; then \ + rm /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-psr.ini ]; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + && true + # -------------------- (custom) php-cs-fixer -------------------- RUN set -eux \ && php-cs-fixer --version 2>&1 | grep -E 'Fixer\s+(version\s*)?[-_.0-9]+\s+' || (php-cs-fixer --version; false) \ @@ -730,6 +848,16 @@ RUN set -eux \ && pwncat --version 2>&1 | grep -E 'Version [0-9][.0-9]+' || (pwncat --version; false) \ && true +# -------------------- (apt) ssh -------------------- +RUN set -eux \ + && ssh -V 2>&1 | grep ^OpenSSH || (ssh -V; false) \ + && true + +# -------------------- (apt) rsync -------------------- +RUN set -eux \ + && rsync --version | grep version | grep -E '[0-9]\.[0-9]+' || (rsync --version; false) \ + && true + # -------------------- (npm) sass -------------------- RUN set -eux \ && sass --version | grep -E '[0-9][.0-9]+' || (sass --version; false) \ @@ -745,11 +873,21 @@ RUN set -eux \ && stylelint --version | grep -E '[0-9][.0-9]+' || (stylelint --version; false) \ && true +# -------------------- (apt) svn -------------------- +RUN set -eux \ + && svn --version | grep version | grep -E '[0-9]+\.[0-9]+' || (svn --version; false) \ + && true + # -------------------- (custom) symfony-cli -------------------- RUN set -eux \ && symfony --no-ansi -V | grep -E 'version [0-9][.0-9]+' || (symfony --no-ansi -V; false) \ && true +# -------------------- (apt) tig -------------------- +RUN set -eux \ + && tig --version 2>&1 | grep -E '[0-9][.0-9]+' || (tig --version; false) \ + && true + # -------------------- (npm) vue-cli -------------------- RUN set -eux \ && vue --version | grep -E '[0-9][.0-9]+' || (vue --version; false) \ @@ -775,6 +913,11 @@ RUN set -eux \ && yq --version 2>&1 | grep -E '[0-9][.0-9]+' || (yq --version; false) \ && true +# -------------------- (apt) zsh -------------------- +RUN set -eux \ + && zsh --version 2>&1 | grep -E '[0-9][.0-9]+' || (zsh --version; false) \ + && true + ### ### Re-activate modules which have been deactivated in mods (for testing). ### diff --git a/Dockerfiles/work/Dockerfile-7.4 b/Dockerfiles/work/Dockerfile-7.4 index 3b56de5..9cb8554 100644 --- a/Dockerfiles/work/Dockerfile-7.4 +++ b/Dockerfiles/work/Dockerfile-7.4 @@ -273,7 +273,13 @@ RUN set -eux \ # ---------- type: apt ---------- git \ jq \ + mupdf-tools \ + openssh-client \ + rsync \ shellcheck \ + subversion \ + tig \ + zsh \ && rm -rf /var/lib/apt/lists/* ### @@ -382,7 +388,15 @@ RUN set -eux \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache laravel/installer \ && ln -s /usr/local/src/composer/vendor/laravel/installer/bin/laravel /usr/local/bin/ \ && rm -rf /usr/local/src/composer/cache/* \ - && laravel --version | grep -E '^Laravel Installer\s[0-9][.0-9]+$' || (laravel --version; false) \ + && laravel --version | grep version | grep -E '[0-9]\.[0-9]+' || (laravel --version; false) \ + && true + +# -------------------- (composer) laravel-lumen -------------------- +RUN set -eux \ + && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache laravel/lumen-installer \ + && ln -s /usr/local/src/composer/vendor/laravel/lumen-installer/lumen /usr/local/bin/ \ + && rm -rf /usr/local/src/composer/cache/* \ + && lumen --version 2>/dev/null | grep ^Lumen | grep -E '[0-9]\.[0-9]+' || (lumen --version; false) \ && true # -------------------- (custom) linkcheck -------------------- @@ -392,14 +406,6 @@ RUN set -eux \ && linkcheck --version | grep -E 'v[0-9][.0-9]+' || (linkcheck --version; false) \ && true -# -------------------- (composer) lumen -------------------- -RUN set -eux \ - && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache laravel/lumen-installer \ - && ln -s /usr/local/src/composer/vendor/laravel/lumen-installer/lumen /usr/local/bin/ \ - && rm -rf /usr/local/src/composer/cache/* \ - && lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[0-9][.0-9]+$' || (lumen --version; false) \ - && true - # -------------------- (npm) mdlint -------------------- RUN set -eux \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force mdlint' devilbox \ @@ -407,6 +413,55 @@ RUN set -eux \ && mdlint --version | grep -E '[0-9][.0-9]+' || (mdlint --version; false) \ && true +# -------------------- (apt) mupdf-tools -------------------- +RUN set -eux \ + && echo test > test.txt \ + && mutool create -o test.pdf test.txt \ + && file test.pdf | gre 'PDF document' \ + && rm test.txt \ + && rm test.pdf \ + \ + && true + +# -------------------- (composer) phalcon-devtools -------------------- +RUN set -eux \ + && if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \ + echo "extension=phalcon.so" > /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if find /usr/local/lib/php/extensions/ -name psr.so | grep psr; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache phalcon/devtools \ + && ln -s /usr/local/src/composer/vendor/phalcon/devtools/phalcon /usr/local/bin/ \ + && rm -rf /usr/local/src/composer/cache/* \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini ]; then \ + rm /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-psr.ini ]; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + && if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \ + echo "extension=phalcon.so" > /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if find /usr/local/lib/php/extensions/ -name psr.so | grep psr; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + \ + && phalcon commands | grep -E '[0-9][.0-9]+' || (phalcon commands; false) \ + \ + \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini ]; then \ + rm /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-psr.ini ]; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + && true + # -------------------- (custom) php-cs-fixer -------------------- RUN set -eux \ && PHP_CS_FIXER_URL="https://cs.symfony.com/download/php-cs-fixer-v3.phar" \ @@ -467,6 +522,16 @@ RUN set -eux \ && pwncat --version 2>&1 | grep -E 'Version [0-9][.0-9]+' || (pwncat --version; false) \ && true +# -------------------- (apt) ssh -------------------- +RUN set -eux \ + && ssh -V 2>&1 | grep ^OpenSSH || (ssh -V; false) \ + && true + +# -------------------- (apt) rsync -------------------- +RUN set -eux \ + && rsync --version | grep version | grep -E '[0-9]\.[0-9]+' || (rsync --version; false) \ + && true + # -------------------- (npm) sass -------------------- RUN set -eux \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force sass' devilbox \ @@ -486,12 +551,22 @@ RUN set -eux \ && stylelint --version | grep -E '[0-9][.0-9]+' || (stylelint --version; false) \ && true +# -------------------- (apt) svn -------------------- +RUN set -eux \ + && svn --version | grep version | grep -E '[0-9]+\.[0-9]+' || (svn --version; false) \ + && true + # -------------------- (custom) symfony-cli -------------------- RUN set -eux \ && curl -sS https://get.symfony.com/cli/installer | bash -s -- --install-dir /usr/local/bin \ && symfony --no-ansi -V | grep -E 'version [0-9][.0-9]+' || (symfony --no-ansi -V; false) \ && true +# -------------------- (apt) tig -------------------- +RUN set -eux \ + && tig --version 2>&1 | grep -E '[0-9][.0-9]+' || (tig --version; false) \ + && true + # -------------------- (npm) vue-cli -------------------- RUN set -eux \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force @vue/cli' devilbox \ @@ -526,6 +601,11 @@ RUN set -eux \ && yq --version 2>&1 | grep -E '[0-9][.0-9]+' || (yq --version; false) \ && true +# -------------------- (apt) zsh -------------------- +RUN set -eux \ + && zsh --version 2>&1 | grep -E '[0-9][.0-9]+' || (zsh --version; false) \ + && true + ### ### Post fixes ### @@ -563,7 +643,13 @@ RUN set -eux \ # ---------- type: apt ---------- git \ jq \ + mupdf-tools \ + openssh-client \ + rsync \ shellcheck \ + subversion \ + tig \ + zsh \ && rm -rf /var/lib/apt/lists/* ### @@ -677,7 +763,12 @@ RUN set -eux \ # -------------------- (composer) laravel-installer -------------------- RUN set -eux \ - && laravel --version | grep -E '^Laravel Installer\s[0-9][.0-9]+$' || (laravel --version; false) \ + && laravel --version | grep version | grep -E '[0-9]\.[0-9]+' || (laravel --version; false) \ + && true + +# -------------------- (composer) laravel-lumen -------------------- +RUN set -eux \ + && lumen --version 2>/dev/null | grep ^Lumen | grep -E '[0-9]\.[0-9]+' || (lumen --version; false) \ && true # -------------------- (custom) linkcheck -------------------- @@ -685,16 +776,43 @@ RUN set -eux \ && linkcheck --version | grep -E 'v[0-9][.0-9]+' || (linkcheck --version; false) \ && true -# -------------------- (composer) lumen -------------------- -RUN set -eux \ - && lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[0-9][.0-9]+$' || (lumen --version; false) \ - && true - # -------------------- (npm) mdlint -------------------- RUN set -eux \ && mdlint --version | grep -E '[0-9][.0-9]+' || (mdlint --version; false) \ && true +# -------------------- (apt) mupdf-tools -------------------- +RUN set -eux \ + && echo test > test.txt \ + && mutool create -o test.pdf test.txt \ + && file test.pdf | gre 'PDF document' \ + && rm test.txt \ + && rm test.pdf \ + \ + && true + +# -------------------- (composer) phalcon-devtools -------------------- +RUN set -eux \ + && if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \ + echo "extension=phalcon.so" > /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if find /usr/local/lib/php/extensions/ -name psr.so | grep psr; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + \ + && phalcon commands | grep -E '[0-9][.0-9]+' || (phalcon commands; false) \ + \ + \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini ]; then \ + rm /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-psr.ini ]; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + && true + # -------------------- (custom) php-cs-fixer -------------------- RUN set -eux \ && php-cs-fixer --version 2>&1 | grep -E 'Fixer\s+(version\s*)?[-_.0-9]+\s+' || (php-cs-fixer --version; false) \ @@ -730,6 +848,16 @@ RUN set -eux \ && pwncat --version 2>&1 | grep -E 'Version [0-9][.0-9]+' || (pwncat --version; false) \ && true +# -------------------- (apt) ssh -------------------- +RUN set -eux \ + && ssh -V 2>&1 | grep ^OpenSSH || (ssh -V; false) \ + && true + +# -------------------- (apt) rsync -------------------- +RUN set -eux \ + && rsync --version | grep version | grep -E '[0-9]\.[0-9]+' || (rsync --version; false) \ + && true + # -------------------- (npm) sass -------------------- RUN set -eux \ && sass --version | grep -E '[0-9][.0-9]+' || (sass --version; false) \ @@ -745,11 +873,21 @@ RUN set -eux \ && stylelint --version | grep -E '[0-9][.0-9]+' || (stylelint --version; false) \ && true +# -------------------- (apt) svn -------------------- +RUN set -eux \ + && svn --version | grep version | grep -E '[0-9]+\.[0-9]+' || (svn --version; false) \ + && true + # -------------------- (custom) symfony-cli -------------------- RUN set -eux \ && symfony --no-ansi -V | grep -E 'version [0-9][.0-9]+' || (symfony --no-ansi -V; false) \ && true +# -------------------- (apt) tig -------------------- +RUN set -eux \ + && tig --version 2>&1 | grep -E '[0-9][.0-9]+' || (tig --version; false) \ + && true + # -------------------- (npm) vue-cli -------------------- RUN set -eux \ && vue --version | grep -E '[0-9][.0-9]+' || (vue --version; false) \ @@ -775,6 +913,11 @@ RUN set -eux \ && yq --version 2>&1 | grep -E '[0-9][.0-9]+' || (yq --version; false) \ && true +# -------------------- (apt) zsh -------------------- +RUN set -eux \ + && zsh --version 2>&1 | grep -E '[0-9][.0-9]+' || (zsh --version; false) \ + && true + ### ### Re-activate modules which have been deactivated in mods (for testing). ### diff --git a/Dockerfiles/work/Dockerfile-8.0 b/Dockerfiles/work/Dockerfile-8.0 index e033bf7..7cc445e 100644 --- a/Dockerfiles/work/Dockerfile-8.0 +++ b/Dockerfiles/work/Dockerfile-8.0 @@ -273,7 +273,13 @@ RUN set -eux \ # ---------- type: apt ---------- git \ jq \ + mupdf-tools \ + openssh-client \ + rsync \ shellcheck \ + subversion \ + tig \ + zsh \ && rm -rf /var/lib/apt/lists/* ### @@ -382,7 +388,15 @@ RUN set -eux \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache laravel/installer \ && ln -s /usr/local/src/composer/vendor/laravel/installer/bin/laravel /usr/local/bin/ \ && rm -rf /usr/local/src/composer/cache/* \ - && laravel --version | grep -E '^Laravel Installer\s[0-9][.0-9]+$' || (laravel --version; false) \ + && laravel --version | grep version | grep -E '[0-9]\.[0-9]+' || (laravel --version; false) \ + && true + +# -------------------- (composer) laravel-lumen -------------------- +RUN set -eux \ + && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache laravel/lumen-installer \ + && ln -s /usr/local/src/composer/vendor/laravel/lumen-installer/lumen /usr/local/bin/ \ + && rm -rf /usr/local/src/composer/cache/* \ + && lumen --version 2>/dev/null | grep ^Lumen | grep -E '[0-9]\.[0-9]+' || (lumen --version; false) \ && true # -------------------- (custom) linkcheck -------------------- @@ -392,14 +406,6 @@ RUN set -eux \ && linkcheck --version | grep -E 'v[0-9][.0-9]+' || (linkcheck --version; false) \ && true -# -------------------- (composer) lumen -------------------- -RUN set -eux \ - && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache laravel/lumen-installer \ - && ln -s /usr/local/src/composer/vendor/laravel/lumen-installer/lumen /usr/local/bin/ \ - && rm -rf /usr/local/src/composer/cache/* \ - && lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[0-9][.0-9]+$' || (lumen --version; false) \ - && true - # -------------------- (npm) mdlint -------------------- RUN set -eux \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force mdlint' devilbox \ @@ -407,6 +413,55 @@ RUN set -eux \ && mdlint --version | grep -E '[0-9][.0-9]+' || (mdlint --version; false) \ && true +# -------------------- (apt) mupdf-tools -------------------- +RUN set -eux \ + && echo test > test.txt \ + && mutool create -o test.pdf test.txt \ + && file test.pdf | gre 'PDF document' \ + && rm test.txt \ + && rm test.pdf \ + \ + && true + +# -------------------- (composer) phalcon-devtools -------------------- +RUN set -eux \ + && if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \ + echo "extension=phalcon.so" > /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if find /usr/local/lib/php/extensions/ -name psr.so | grep psr; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache phalcon/devtools \ + && ln -s /usr/local/src/composer/vendor/phalcon/devtools/phalcon /usr/local/bin/ \ + && rm -rf /usr/local/src/composer/cache/* \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini ]; then \ + rm /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-psr.ini ]; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + && if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \ + echo "extension=phalcon.so" > /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if find /usr/local/lib/php/extensions/ -name psr.so | grep psr; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + \ + && phalcon commands | grep -E '[0-9][.0-9]+' || (phalcon commands; false) \ + \ + \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini ]; then \ + rm /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-psr.ini ]; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + && true + # -------------------- (custom) php-cs-fixer -------------------- RUN set -eux \ && PHP_CS_FIXER_URL="https://cs.symfony.com/download/php-cs-fixer-v3.phar" \ @@ -467,6 +522,16 @@ RUN set -eux \ && pwncat --version 2>&1 | grep -E 'Version [0-9][.0-9]+' || (pwncat --version; false) \ && true +# -------------------- (apt) ssh -------------------- +RUN set -eux \ + && ssh -V 2>&1 | grep ^OpenSSH || (ssh -V; false) \ + && true + +# -------------------- (apt) rsync -------------------- +RUN set -eux \ + && rsync --version | grep version | grep -E '[0-9]\.[0-9]+' || (rsync --version; false) \ + && true + # -------------------- (npm) sass -------------------- RUN set -eux \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force sass' devilbox \ @@ -486,12 +551,22 @@ RUN set -eux \ && stylelint --version | grep -E '[0-9][.0-9]+' || (stylelint --version; false) \ && true +# -------------------- (apt) svn -------------------- +RUN set -eux \ + && svn --version | grep version | grep -E '[0-9]+\.[0-9]+' || (svn --version; false) \ + && true + # -------------------- (custom) symfony-cli -------------------- RUN set -eux \ && curl -sS https://get.symfony.com/cli/installer | bash -s -- --install-dir /usr/local/bin \ && symfony --no-ansi -V | grep -E 'version [0-9][.0-9]+' || (symfony --no-ansi -V; false) \ && true +# -------------------- (apt) tig -------------------- +RUN set -eux \ + && tig --version 2>&1 | grep -E '[0-9][.0-9]+' || (tig --version; false) \ + && true + # -------------------- (npm) vue-cli -------------------- RUN set -eux \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force @vue/cli' devilbox \ @@ -526,6 +601,11 @@ RUN set -eux \ && yq --version 2>&1 | grep -E '[0-9][.0-9]+' || (yq --version; false) \ && true +# -------------------- (apt) zsh -------------------- +RUN set -eux \ + && zsh --version 2>&1 | grep -E '[0-9][.0-9]+' || (zsh --version; false) \ + && true + ### ### Post fixes ### @@ -563,7 +643,13 @@ RUN set -eux \ # ---------- type: apt ---------- git \ jq \ + mupdf-tools \ + openssh-client \ + rsync \ shellcheck \ + subversion \ + tig \ + zsh \ && rm -rf /var/lib/apt/lists/* ### @@ -677,7 +763,12 @@ RUN set -eux \ # -------------------- (composer) laravel-installer -------------------- RUN set -eux \ - && laravel --version | grep -E '^Laravel Installer\s[0-9][.0-9]+$' || (laravel --version; false) \ + && laravel --version | grep version | grep -E '[0-9]\.[0-9]+' || (laravel --version; false) \ + && true + +# -------------------- (composer) laravel-lumen -------------------- +RUN set -eux \ + && lumen --version 2>/dev/null | grep ^Lumen | grep -E '[0-9]\.[0-9]+' || (lumen --version; false) \ && true # -------------------- (custom) linkcheck -------------------- @@ -685,16 +776,43 @@ RUN set -eux \ && linkcheck --version | grep -E 'v[0-9][.0-9]+' || (linkcheck --version; false) \ && true -# -------------------- (composer) lumen -------------------- -RUN set -eux \ - && lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[0-9][.0-9]+$' || (lumen --version; false) \ - && true - # -------------------- (npm) mdlint -------------------- RUN set -eux \ && mdlint --version | grep -E '[0-9][.0-9]+' || (mdlint --version; false) \ && true +# -------------------- (apt) mupdf-tools -------------------- +RUN set -eux \ + && echo test > test.txt \ + && mutool create -o test.pdf test.txt \ + && file test.pdf | gre 'PDF document' \ + && rm test.txt \ + && rm test.pdf \ + \ + && true + +# -------------------- (composer) phalcon-devtools -------------------- +RUN set -eux \ + && if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \ + echo "extension=phalcon.so" > /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if find /usr/local/lib/php/extensions/ -name psr.so | grep psr; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + \ + && phalcon commands | grep -E '[0-9][.0-9]+' || (phalcon commands; false) \ + \ + \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini ]; then \ + rm /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-psr.ini ]; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + && true + # -------------------- (custom) php-cs-fixer -------------------- RUN set -eux \ && php-cs-fixer --version 2>&1 | grep -E 'Fixer\s+(version\s*)?[-_.0-9]+\s+' || (php-cs-fixer --version; false) \ @@ -730,6 +848,16 @@ RUN set -eux \ && pwncat --version 2>&1 | grep -E 'Version [0-9][.0-9]+' || (pwncat --version; false) \ && true +# -------------------- (apt) ssh -------------------- +RUN set -eux \ + && ssh -V 2>&1 | grep ^OpenSSH || (ssh -V; false) \ + && true + +# -------------------- (apt) rsync -------------------- +RUN set -eux \ + && rsync --version | grep version | grep -E '[0-9]\.[0-9]+' || (rsync --version; false) \ + && true + # -------------------- (npm) sass -------------------- RUN set -eux \ && sass --version | grep -E '[0-9][.0-9]+' || (sass --version; false) \ @@ -745,11 +873,21 @@ RUN set -eux \ && stylelint --version | grep -E '[0-9][.0-9]+' || (stylelint --version; false) \ && true +# -------------------- (apt) svn -------------------- +RUN set -eux \ + && svn --version | grep version | grep -E '[0-9]+\.[0-9]+' || (svn --version; false) \ + && true + # -------------------- (custom) symfony-cli -------------------- RUN set -eux \ && symfony --no-ansi -V | grep -E 'version [0-9][.0-9]+' || (symfony --no-ansi -V; false) \ && true +# -------------------- (apt) tig -------------------- +RUN set -eux \ + && tig --version 2>&1 | grep -E '[0-9][.0-9]+' || (tig --version; false) \ + && true + # -------------------- (npm) vue-cli -------------------- RUN set -eux \ && vue --version | grep -E '[0-9][.0-9]+' || (vue --version; false) \ @@ -775,6 +913,11 @@ RUN set -eux \ && yq --version 2>&1 | grep -E '[0-9][.0-9]+' || (yq --version; false) \ && true +# -------------------- (apt) zsh -------------------- +RUN set -eux \ + && zsh --version 2>&1 | grep -E '[0-9][.0-9]+' || (zsh --version; false) \ + && true + ### ### Re-activate modules which have been deactivated in mods (for testing). ### diff --git a/Dockerfiles/work/Dockerfile-8.1 b/Dockerfiles/work/Dockerfile-8.1 index 834dbd7..4fb8edb 100644 --- a/Dockerfiles/work/Dockerfile-8.1 +++ b/Dockerfiles/work/Dockerfile-8.1 @@ -273,7 +273,13 @@ RUN set -eux \ # ---------- type: apt ---------- git \ jq \ + mupdf-tools \ + openssh-client \ + rsync \ shellcheck \ + subversion \ + tig \ + zsh \ && rm -rf /var/lib/apt/lists/* ### @@ -382,7 +388,15 @@ RUN set -eux \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache laravel/installer \ && ln -s /usr/local/src/composer/vendor/laravel/installer/bin/laravel /usr/local/bin/ \ && rm -rf /usr/local/src/composer/cache/* \ - && laravel --version | grep -E '^Laravel Installer\s[0-9][.0-9]+$' || (laravel --version; false) \ + && laravel --version | grep version | grep -E '[0-9]\.[0-9]+' || (laravel --version; false) \ + && true + +# -------------------- (composer) laravel-lumen -------------------- +RUN set -eux \ + && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache laravel/lumen-installer \ + && ln -s /usr/local/src/composer/vendor/laravel/lumen-installer/lumen /usr/local/bin/ \ + && rm -rf /usr/local/src/composer/cache/* \ + && lumen --version 2>/dev/null | grep ^Lumen | grep -E '[0-9]\.[0-9]+' || (lumen --version; false) \ && true # -------------------- (custom) linkcheck -------------------- @@ -392,14 +406,6 @@ RUN set -eux \ && linkcheck --version | grep -E 'v[0-9][.0-9]+' || (linkcheck --version; false) \ && true -# -------------------- (composer) lumen -------------------- -RUN set -eux \ - && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache laravel/lumen-installer \ - && ln -s /usr/local/src/composer/vendor/laravel/lumen-installer/lumen /usr/local/bin/ \ - && rm -rf /usr/local/src/composer/cache/* \ - && lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[0-9][.0-9]+$' || (lumen --version; false) \ - && true - # -------------------- (npm) mdlint -------------------- RUN set -eux \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force mdlint' devilbox \ @@ -407,6 +413,55 @@ RUN set -eux \ && mdlint --version | grep -E '[0-9][.0-9]+' || (mdlint --version; false) \ && true +# -------------------- (apt) mupdf-tools -------------------- +RUN set -eux \ + && echo test > test.txt \ + && mutool create -o test.pdf test.txt \ + && file test.pdf | gre 'PDF document' \ + && rm test.txt \ + && rm test.pdf \ + \ + && true + +# -------------------- (composer) phalcon-devtools -------------------- +RUN set -eux \ + && if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \ + echo "extension=phalcon.so" > /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if find /usr/local/lib/php/extensions/ -name psr.so | grep psr; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache phalcon/devtools \ + && ln -s /usr/local/src/composer/vendor/phalcon/devtools/phalcon /usr/local/bin/ \ + && rm -rf /usr/local/src/composer/cache/* \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini ]; then \ + rm /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-psr.ini ]; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + && if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \ + echo "extension=phalcon.so" > /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if find /usr/local/lib/php/extensions/ -name psr.so | grep psr; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + \ + && phalcon commands | grep -E '[0-9][.0-9]+' || (phalcon commands; false) \ + \ + \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini ]; then \ + rm /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-psr.ini ]; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + && true + # -------------------- (custom) php-cs-fixer -------------------- RUN set -eux \ && PHP_CS_FIXER_URL="https://cs.symfony.com/download/php-cs-fixer-v3.phar" \ @@ -467,6 +522,16 @@ RUN set -eux \ && pwncat --version 2>&1 | grep -E 'Version [0-9][.0-9]+' || (pwncat --version; false) \ && true +# -------------------- (apt) ssh -------------------- +RUN set -eux \ + && ssh -V 2>&1 | grep ^OpenSSH || (ssh -V; false) \ + && true + +# -------------------- (apt) rsync -------------------- +RUN set -eux \ + && rsync --version | grep version | grep -E '[0-9]\.[0-9]+' || (rsync --version; false) \ + && true + # -------------------- (npm) sass -------------------- RUN set -eux \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force sass' devilbox \ @@ -486,12 +551,22 @@ RUN set -eux \ && stylelint --version | grep -E '[0-9][.0-9]+' || (stylelint --version; false) \ && true +# -------------------- (apt) svn -------------------- +RUN set -eux \ + && svn --version | grep version | grep -E '[0-9]+\.[0-9]+' || (svn --version; false) \ + && true + # -------------------- (custom) symfony-cli -------------------- RUN set -eux \ && curl -sS https://get.symfony.com/cli/installer | bash -s -- --install-dir /usr/local/bin \ && symfony --no-ansi -V | grep -E 'version [0-9][.0-9]+' || (symfony --no-ansi -V; false) \ && true +# -------------------- (apt) tig -------------------- +RUN set -eux \ + && tig --version 2>&1 | grep -E '[0-9][.0-9]+' || (tig --version; false) \ + && true + # -------------------- (npm) vue-cli -------------------- RUN set -eux \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force @vue/cli' devilbox \ @@ -526,6 +601,11 @@ RUN set -eux \ && yq --version 2>&1 | grep -E '[0-9][.0-9]+' || (yq --version; false) \ && true +# -------------------- (apt) zsh -------------------- +RUN set -eux \ + && zsh --version 2>&1 | grep -E '[0-9][.0-9]+' || (zsh --version; false) \ + && true + ### ### Post fixes ### @@ -563,7 +643,13 @@ RUN set -eux \ # ---------- type: apt ---------- git \ jq \ + mupdf-tools \ + openssh-client \ + rsync \ shellcheck \ + subversion \ + tig \ + zsh \ && rm -rf /var/lib/apt/lists/* ### @@ -677,7 +763,12 @@ RUN set -eux \ # -------------------- (composer) laravel-installer -------------------- RUN set -eux \ - && laravel --version | grep -E '^Laravel Installer\s[0-9][.0-9]+$' || (laravel --version; false) \ + && laravel --version | grep version | grep -E '[0-9]\.[0-9]+' || (laravel --version; false) \ + && true + +# -------------------- (composer) laravel-lumen -------------------- +RUN set -eux \ + && lumen --version 2>/dev/null | grep ^Lumen | grep -E '[0-9]\.[0-9]+' || (lumen --version; false) \ && true # -------------------- (custom) linkcheck -------------------- @@ -685,16 +776,43 @@ RUN set -eux \ && linkcheck --version | grep -E 'v[0-9][.0-9]+' || (linkcheck --version; false) \ && true -# -------------------- (composer) lumen -------------------- -RUN set -eux \ - && lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[0-9][.0-9]+$' || (lumen --version; false) \ - && true - # -------------------- (npm) mdlint -------------------- RUN set -eux \ && mdlint --version | grep -E '[0-9][.0-9]+' || (mdlint --version; false) \ && true +# -------------------- (apt) mupdf-tools -------------------- +RUN set -eux \ + && echo test > test.txt \ + && mutool create -o test.pdf test.txt \ + && file test.pdf | gre 'PDF document' \ + && rm test.txt \ + && rm test.pdf \ + \ + && true + +# -------------------- (composer) phalcon-devtools -------------------- +RUN set -eux \ + && if find /usr/local/lib/php/extensions/ -name phalcon.so | grep phalcon; then \ + echo "extension=phalcon.so" > /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if find /usr/local/lib/php/extensions/ -name psr.so | grep psr; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + \ + && phalcon commands | grep -E '[0-9][.0-9]+' || (phalcon commands; false) \ + \ + \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini ]; then \ + rm /usr/local/etc/php/conf.d/docker-php-ext-phalcon.ini; \ + fi \ + && if [ -f /usr/local/etc/php/conf.d/docker-php-ext-psr.ini ]; then \ + echo "extension=psr.so" > /usr/local/etc/php/conf.d/docker-php-ext-psr.ini; \ + fi \ + \ + && true + # -------------------- (custom) php-cs-fixer -------------------- RUN set -eux \ && php-cs-fixer --version 2>&1 | grep -E 'Fixer\s+(version\s*)?[-_.0-9]+\s+' || (php-cs-fixer --version; false) \ @@ -730,6 +848,16 @@ RUN set -eux \ && pwncat --version 2>&1 | grep -E 'Version [0-9][.0-9]+' || (pwncat --version; false) \ && true +# -------------------- (apt) ssh -------------------- +RUN set -eux \ + && ssh -V 2>&1 | grep ^OpenSSH || (ssh -V; false) \ + && true + +# -------------------- (apt) rsync -------------------- +RUN set -eux \ + && rsync --version | grep version | grep -E '[0-9]\.[0-9]+' || (rsync --version; false) \ + && true + # -------------------- (npm) sass -------------------- RUN set -eux \ && sass --version | grep -E '[0-9][.0-9]+' || (sass --version; false) \ @@ -745,11 +873,21 @@ RUN set -eux \ && stylelint --version | grep -E '[0-9][.0-9]+' || (stylelint --version; false) \ && true +# -------------------- (apt) svn -------------------- +RUN set -eux \ + && svn --version | grep version | grep -E '[0-9]+\.[0-9]+' || (svn --version; false) \ + && true + # -------------------- (custom) symfony-cli -------------------- RUN set -eux \ && symfony --no-ansi -V | grep -E 'version [0-9][.0-9]+' || (symfony --no-ansi -V; false) \ && true +# -------------------- (apt) tig -------------------- +RUN set -eux \ + && tig --version 2>&1 | grep -E '[0-9][.0-9]+' || (tig --version; false) \ + && true + # -------------------- (npm) vue-cli -------------------- RUN set -eux \ && vue --version | grep -E '[0-9][.0-9]+' || (vue --version; false) \ @@ -775,6 +913,11 @@ RUN set -eux \ && yq --version 2>&1 | grep -E '[0-9][.0-9]+' || (yq --version; false) \ && true +# -------------------- (apt) zsh -------------------- +RUN set -eux \ + && zsh --version 2>&1 | grep -E '[0-9][.0-9]+' || (zsh --version; false) \ + && true + ### ### Re-activate modules which have been deactivated in mods (for testing). ### diff --git a/Dockerfiles/work/Dockerfile-8.2 b/Dockerfiles/work/Dockerfile-8.2 index a8a5415..5408d96 100644 --- a/Dockerfiles/work/Dockerfile-8.2 +++ b/Dockerfiles/work/Dockerfile-8.2 @@ -273,7 +273,13 @@ RUN set -eux \ # ---------- type: apt ---------- git \ jq \ + mupdf-tools \ + openssh-client \ + rsync \ shellcheck \ + subversion \ + tig \ + zsh \ && rm -rf /var/lib/apt/lists/* ### @@ -382,7 +388,15 @@ RUN set -eux \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache laravel/installer \ && ln -s /usr/local/src/composer/vendor/laravel/installer/bin/laravel /usr/local/bin/ \ && rm -rf /usr/local/src/composer/cache/* \ - && laravel --version | grep -E '^Laravel Installer\s[0-9][.0-9]+$' || (laravel --version; false) \ + && laravel --version | grep version | grep -E '[0-9]\.[0-9]+' || (laravel --version; false) \ + && true + +# -------------------- (composer) laravel-lumen -------------------- +RUN set -eux \ + && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache laravel/lumen-installer \ + && ln -s /usr/local/src/composer/vendor/laravel/lumen-installer/lumen /usr/local/bin/ \ + && rm -rf /usr/local/src/composer/cache/* \ + && lumen --version 2>/dev/null | grep ^Lumen | grep -E '[0-9]\.[0-9]+' || (lumen --version; false) \ && true # -------------------- (custom) linkcheck -------------------- @@ -392,14 +406,6 @@ RUN set -eux \ && linkcheck --version | grep -E 'v[0-9][.0-9]+' || (linkcheck --version; false) \ && true -# -------------------- (composer) lumen -------------------- -RUN set -eux \ - && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer-2 global require --no-interaction --no-cache laravel/lumen-installer \ - && ln -s /usr/local/src/composer/vendor/laravel/lumen-installer/lumen /usr/local/bin/ \ - && rm -rf /usr/local/src/composer/cache/* \ - && lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[0-9][.0-9]+$' || (lumen --version; false) \ - && true - # -------------------- (npm) mdlint -------------------- RUN set -eux \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force mdlint' devilbox \ @@ -407,12 +413,14 @@ RUN set -eux \ && mdlint --version | grep -E '[0-9][.0-9]+' || (mdlint --version; false) \ && true -# -------------------- (custom) php-cs-fixer -------------------- +# -------------------- (apt) mupdf-tools -------------------- RUN set -eux \ - && PHP_CS_FIXER_URL="https://cs.symfony.com/download/php-cs-fixer-v3.phar" \ - && curl -sS -k -L --fail -L "${PHP_CS_FIXER_URL}" -o /usr/local/bin/php-cs-fixer \ - && chmod +x /usr/local/bin/php-cs-fixer \ - && php-cs-fixer --version 2>&1 | grep -E 'Fixer\s+(version\s*)?[-_.0-9]+\s+' || (php-cs-fixer --version; false) \ + && echo test > test.txt \ + && mutool create -o test.pdf test.txt \ + && file test.pdf | gre 'PDF document' \ + && rm test.txt \ + && rm test.pdf \ + \ && true # -------------------- (custom) phpcbf -------------------- @@ -467,6 +475,16 @@ RUN set -eux \ && pwncat --version 2>&1 | grep -E 'Version [0-9][.0-9]+' || (pwncat --version; false) \ && true +# -------------------- (apt) ssh -------------------- +RUN set -eux \ + && ssh -V 2>&1 | grep ^OpenSSH || (ssh -V; false) \ + && true + +# -------------------- (apt) rsync -------------------- +RUN set -eux \ + && rsync --version | grep version | grep -E '[0-9]\.[0-9]+' || (rsync --version; false) \ + && true + # -------------------- (npm) sass -------------------- RUN set -eux \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force sass' devilbox \ @@ -486,12 +504,22 @@ RUN set -eux \ && stylelint --version | grep -E '[0-9][.0-9]+' || (stylelint --version; false) \ && true +# -------------------- (apt) svn -------------------- +RUN set -eux \ + && svn --version | grep version | grep -E '[0-9]+\.[0-9]+' || (svn --version; false) \ + && true + # -------------------- (custom) symfony-cli -------------------- RUN set -eux \ && curl -sS https://get.symfony.com/cli/installer | bash -s -- --install-dir /usr/local/bin \ && symfony --no-ansi -V | grep -E 'version [0-9][.0-9]+' || (symfony --no-ansi -V; false) \ && true +# -------------------- (apt) tig -------------------- +RUN set -eux \ + && tig --version 2>&1 | grep -E '[0-9][.0-9]+' || (tig --version; false) \ + && true + # -------------------- (npm) vue-cli -------------------- RUN set -eux \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force @vue/cli' devilbox \ @@ -526,6 +554,11 @@ RUN set -eux \ && yq --version 2>&1 | grep -E '[0-9][.0-9]+' || (yq --version; false) \ && true +# -------------------- (apt) zsh -------------------- +RUN set -eux \ + && zsh --version 2>&1 | grep -E '[0-9][.0-9]+' || (zsh --version; false) \ + && true + ### ### Post fixes ### @@ -563,7 +596,13 @@ RUN set -eux \ # ---------- type: apt ---------- git \ jq \ + mupdf-tools \ + openssh-client \ + rsync \ shellcheck \ + subversion \ + tig \ + zsh \ && rm -rf /var/lib/apt/lists/* ### @@ -677,7 +716,12 @@ RUN set -eux \ # -------------------- (composer) laravel-installer -------------------- RUN set -eux \ - && laravel --version | grep -E '^Laravel Installer\s[0-9][.0-9]+$' || (laravel --version; false) \ + && laravel --version | grep version | grep -E '[0-9]\.[0-9]+' || (laravel --version; false) \ + && true + +# -------------------- (composer) laravel-lumen -------------------- +RUN set -eux \ + && lumen --version 2>/dev/null | grep ^Lumen | grep -E '[0-9]\.[0-9]+' || (lumen --version; false) \ && true # -------------------- (custom) linkcheck -------------------- @@ -685,19 +729,19 @@ RUN set -eux \ && linkcheck --version | grep -E 'v[0-9][.0-9]+' || (linkcheck --version; false) \ && true -# -------------------- (composer) lumen -------------------- -RUN set -eux \ - && lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[0-9][.0-9]+$' || (lumen --version; false) \ - && true - # -------------------- (npm) mdlint -------------------- RUN set -eux \ && mdlint --version | grep -E '[0-9][.0-9]+' || (mdlint --version; false) \ && true -# -------------------- (custom) php-cs-fixer -------------------- +# -------------------- (apt) mupdf-tools -------------------- RUN set -eux \ - && php-cs-fixer --version 2>&1 | grep -E 'Fixer\s+(version\s*)?[-_.0-9]+\s+' || (php-cs-fixer --version; false) \ + && echo test > test.txt \ + && mutool create -o test.pdf test.txt \ + && file test.pdf | gre 'PDF document' \ + && rm test.txt \ + && rm test.pdf \ + \ && true # -------------------- (custom) phpcbf -------------------- @@ -730,6 +774,16 @@ RUN set -eux \ && pwncat --version 2>&1 | grep -E 'Version [0-9][.0-9]+' || (pwncat --version; false) \ && true +# -------------------- (apt) ssh -------------------- +RUN set -eux \ + && ssh -V 2>&1 | grep ^OpenSSH || (ssh -V; false) \ + && true + +# -------------------- (apt) rsync -------------------- +RUN set -eux \ + && rsync --version | grep version | grep -E '[0-9]\.[0-9]+' || (rsync --version; false) \ + && true + # -------------------- (npm) sass -------------------- RUN set -eux \ && sass --version | grep -E '[0-9][.0-9]+' || (sass --version; false) \ @@ -745,11 +799,21 @@ RUN set -eux \ && stylelint --version | grep -E '[0-9][.0-9]+' || (stylelint --version; false) \ && true +# -------------------- (apt) svn -------------------- +RUN set -eux \ + && svn --version | grep version | grep -E '[0-9]+\.[0-9]+' || (svn --version; false) \ + && true + # -------------------- (custom) symfony-cli -------------------- RUN set -eux \ && symfony --no-ansi -V | grep -E 'version [0-9][.0-9]+' || (symfony --no-ansi -V; false) \ && true +# -------------------- (apt) tig -------------------- +RUN set -eux \ + && tig --version 2>&1 | grep -E '[0-9][.0-9]+' || (tig --version; false) \ + && true + # -------------------- (npm) vue-cli -------------------- RUN set -eux \ && vue --version | grep -E '[0-9][.0-9]+' || (vue --version; false) \ @@ -775,6 +839,11 @@ RUN set -eux \ && yq --version 2>&1 | grep -E '[0-9][.0-9]+' || (yq --version; false) \ && true +# -------------------- (apt) zsh -------------------- +RUN set -eux \ + && zsh --version 2>&1 | grep -E '[0-9][.0-9]+' || (zsh --version; false) \ + && true + ### ### Re-activate modules which have been deactivated in mods (for testing). ### diff --git a/bin/gen-docs-php-tools.py b/bin/gen-docs-php-tools.py index b4fc83d..fd3a368 100755 --- a/bin/gen-docs-php-tools.py +++ b/bin/gen-docs-php-tools.py @@ -156,7 +156,7 @@ def get_markdown(tools: List[Dict[str, Any]]) -> str: if str(php) in tool["exclude"]: markdown += " |" else: - markdown += " 🗸 |" + markdown += " ✓ |" markdown += "\n" markdown += "\n" diff --git a/doc/available-tools.md b/doc/available-tools.md index 2166ab7..41896cf 100644 --- a/doc/available-tools.md +++ b/doc/available-tools.md @@ -42,179 +42,195 @@ The following PHP cli tools are available on the `slim` flavour:
digmhsendmailmysqldump-securenetcatpingsudo