Compare commits

..

41 Commits
0.101 ... 0.108

Author SHA1 Message Date
cytopia
83b4cb6b43 Merge pull request #167 from devilbox/release-0.108
Release 0.108
2020-08-08 18:11:27 +02:00
cytopia
dc438b0aad Fixes policy.xml for Imagick 2020-08-08 12:16:37 +02:00
cytopia
c8bd21ebbe Update CHANGELOG 2020-08-08 12:03:13 +02:00
cytopia
b2476e3851 Add gsfonts, mupdf and mupdf-tools 2020-08-08 12:02:39 +02:00
cytopia
c06a3d2237 Fix Redis for PHP 8.0 2020-08-08 12:02:04 +02:00
cytopia
ce4f022c70 Update CHANGELOG 2020-08-08 11:12:20 +02:00
cytopia
9c5326dc0f Stricter version check for installed tools 2020-08-08 11:11:35 +02:00
cytopia
2701a524b9 Fixed MongoDB module for PHP 5.6 2020-08-08 11:10:22 +02:00
cytopia
acea0ac0fe Fixed Ansible installation 2020-08-08 11:09:19 +02:00
cytopia
3153b329f1 Added imagick PDF support (via ghostscript) 2020-08-08 11:08:05 +02:00
cytopia
10285279c7 Merge pull request #159 from devilbox/release-0.107
Release 0.107
2020-06-27 23:36:51 +02:00
cytopia
0a04342e46 Adding certbot binary 2020-06-27 18:46:50 +02:00
cytopia
dad684bfd1 Re-added imap for PHP 7.4 2020-06-27 16:23:07 +02:00
cytopia
9fabcf3b71 Fixes imagick segfault by setting its threads to 1 2020-06-27 15:52:01 +02:00
cytopia
0669d92289 Adjust travis.yml 2020-06-27 12:16:48 +02:00
cytopia
6d2053878a Fix broken pipelines 2020-06-26 10:00:26 +02:00
cytopia
c3f46d3706 Fix push to Dockerhub 2020-04-07 12:01:29 +02:00
cytopia
de9642c2b5 Merge pull request #157 from devilbox/release-0.106
Release 0.106
2020-03-18 13:58:09 +01:00
cytopia
6fa341748b Disable PHP-FPM 8.0 uploadprogress module due to startup warnings 2020-03-18 10:03:45 +01:00
cytopia
5f719f60ce Fix build of PHP-FPM 8.0 uploadprogress module 2020-03-18 07:35:45 +01:00
cytopia
ffc8df1906 Fix build of PHP-FPM 7.4 snmp module 2020-03-18 07:13:11 +01:00
cytopia
186bf71519 Merge pull request #153 from anatolinicolae/master
Add sorting for startup files
2020-03-18 06:57:32 +01:00
cytopia
422e559ee3 Merge branch 'master' into master 2020-02-08 18:45:22 +01:00
cytopia
eb85e3e288 Merge pull request #155 from devilbox/release-0.105
Release 0.105
2020-02-06 07:55:17 +01:00
cytopia
5ed5dd2503 Use COMPOSER_MEMORY_LIMIT env var 2020-02-05 17:52:18 +01:00
cytopia
1225d564a7 Fix sqlsrv install for PHP 7.1 2020-02-04 19:13:13 +01:00
cytopia
a4102e3d7f Update changelog 2020-02-04 18:13:36 +01:00
cytopia
982dd44701 Add phalcon binary to PHP 7.3 and 7.4 2020-02-04 18:13:22 +01:00
cytopia
bc851cca0f Fix build of pdo_sqlsrv for PHP 7.1 2020-02-04 17:36:03 +01:00
cytopia
ef5b2ed58c Fix composer install 2020-02-04 17:33:21 +01:00
Anatoli Nicolae
cbd4f58876 Add sorting for startup files
Alphanumerically sort files found in /startup.1.d and /startup.2.d directories, to prevent non regular script execution.

Signed-off-by: Anatoli Nicolae <desk@anatolinicolae.com>
2020-01-29 15:09:56 +01:00
cytopia
fd6550627d Merge pull request #152 from devilbox/release-0.104
Release 0.104
2020-01-17 12:16:32 +01:00
cytopia
af150ba371 Fix xdebug install for PHP 7.0 2020-01-17 09:38:48 +01:00
cytopia
47800a7ede Merge pull request #151 from devilbox/release-0.103
Release v0.103
2020-01-14 20:32:06 +01:00
cytopia
d977d941ac Add PHP yaml module 2020-01-14 17:39:37 +01:00
cytopia
2ae551e5a5 Merge pull request #150 from devilbox/UPDATE-README
Update available tools
2020-01-09 13:12:14 +01:00
cytopia
37747d392a Update available tools 2020-01-09 13:13:53 +01:00
cytopia
0a5aadd2a2 Merge pull request #149 from devilbox/release-0.102
Release 0.102
2020-01-09 13:10:07 +01:00
cytopia
64c41f7786 Replace scss-lint with stylelint 2020-01-08 15:44:08 +01:00
cytopia
8bef4c7167 Fixes #144 Adding CHANGELOG 2020-01-08 13:31:56 +01:00
cytopia
58ecd35153 Fixes #123 Replace Ruby Sass with Dart Sass 2020-01-08 13:30:08 +01:00
36 changed files with 1379 additions and 822 deletions

View File

@@ -118,8 +118,8 @@ jobs:
- name: Build Base - name: Build Base
run: | run: |
retry() { retry() {
for ((n=0; n<${RETRIES}; n++)); do for n in $(seq ${RETRIES}); do
echo "[${n}] ${*}"; echo "[${n}/${RETRIES}] ${*}";
if eval "${*}"; then if eval "${*}"; then
return 0; return 0;
fi; fi;
@@ -135,8 +135,8 @@ jobs:
- name: Test Base - name: Test Base
run: | run: |
retry() { retry() {
for ((n=0; n<${RETRIES}; n++)); do for n in $(seq ${RETRIES}); do
echo "[${n}] ${*}"; echo "[${n}/${RETRIES}] ${*}";
if eval "${*}"; then if eval "${*}"; then
return 0; return 0;
fi; fi;
@@ -156,8 +156,8 @@ jobs:
- name: Build Mods - name: Build Mods
run: | run: |
retry() { retry() {
for ((n=0; n<${RETRIES}; n++)); do for n in $(seq ${RETRIES}); do
echo "[${n}] ${*}"; echo "[${n}/${RETRIES}] ${*}";
if eval "${*}"; then if eval "${*}"; then
return 0; return 0;
fi; fi;
@@ -173,8 +173,8 @@ jobs:
- name: Test Mods - name: Test Mods
run: | run: |
retry() { retry() {
for ((n=0; n<${RETRIES}; n++)); do for n in $(seq ${RETRIES}); do
echo "[${n}] ${*}"; echo "[${n}/${RETRIES}] ${*}";
if eval "${*}"; then if eval "${*}"; then
return 0; return 0;
fi; fi;
@@ -194,8 +194,8 @@ jobs:
- name: Build Prod - name: Build Prod
run: | run: |
retry() { retry() {
for ((n=0; n<${RETRIES}; n++)); do for n in $(seq ${RETRIES}); do
echo "[${n}] ${*}"; echo "[${n}/${RETRIES}] ${*}";
if eval "${*}"; then if eval "${*}"; then
return 0; return 0;
fi; fi;
@@ -211,8 +211,8 @@ jobs:
- name: Test Prod - name: Test Prod
run: | run: |
retry() { retry() {
for ((n=0; n<${RETRIES}; n++)); do for n in $(seq ${RETRIES}); do
echo "[${n}] ${*}"; echo "[${n}/${RETRIES}] ${*}";
if eval "${*}"; then if eval "${*}"; then
return 0; return 0;
fi; fi;
@@ -232,8 +232,8 @@ jobs:
- name: Build Work - name: Build Work
run: | run: |
retry() { retry() {
for ((n=0; n<${RETRIES}; n++)); do for n in $(seq ${RETRIES}); do
echo "[${n}] ${*}"; echo "[${n}/${RETRIES}] ${*}";
if eval "${*}"; then if eval "${*}"; then
return 0; return 0;
fi; fi;
@@ -249,8 +249,8 @@ jobs:
- name: Test Work - name: Test Work
run: | run: |
retry() { retry() {
for ((n=0; n<${RETRIES}; n++)); do for n in $(seq ${RETRIES}); do
echo "[${n}] ${*}"; echo "[${n}/${RETRIES}] ${*}";
if eval "${*}"; then if eval "${*}"; then
return 0; return 0;
fi; fi;
@@ -283,8 +283,8 @@ jobs:
- name: Publish images (only repo owner) - name: Publish images (only repo owner)
run: | run: |
retry() { retry() {
for ((n=0; n<${RETRIES}; n++)); do for n in $(seq ${RETRIES}); do
echo "[${n}] ${*}"; echo "[${n}/${RETRIES}] ${*}";
if eval "${*}"; then if eval "${*}"; then
return 0; return 0;
fi; fi;

View File

@@ -15,7 +15,6 @@ on:
- cron: '0 0 * * *' - cron: '0 0 * * *'
# ------------------------------------------------------------------------------------------------- # -------------------------------------------------------------------------------------------------
# What to run # What to run
# ------------------------------------------------------------------------------------------------- # -------------------------------------------------------------------------------------------------
@@ -55,6 +54,12 @@ jobs:
RUNNER_CONTEXT: ${{ toJson(runner) }} RUNNER_CONTEXT: ${{ toJson(runner) }}
run: echo "${RUNNER_CONTEXT}" run: echo "${RUNNER_CONTEXT}"
- name: Show git info
env:
RUNNER_CONTEXT: ${{ toJson(runner) }}
run: |
git log | head -20
build: build:
name: "[ ${{ matrix.version }} ]" name: "[ ${{ matrix.version }} ]"
@@ -113,8 +118,8 @@ jobs:
- name: Build Base - name: Build Base
run: | run: |
retry() { retry() {
for ((n=0; n<${RETRIES}; n++)); do for n in $(seq ${RETRIES}); do
echo "[${n}] ${*}"; echo "[${n}/${RETRIES}] ${*}";
if eval "${*}"; then if eval "${*}"; then
return 0; return 0;
fi; fi;
@@ -130,8 +135,8 @@ jobs:
- name: Test Base - name: Test Base
run: | run: |
retry() { retry() {
for ((n=0; n<${RETRIES}; n++)); do for n in $(seq ${RETRIES}); do
echo "[${n}] ${*}"; echo "[${n}/${RETRIES}] ${*}";
if eval "${*}"; then if eval "${*}"; then
return 0; return 0;
fi; fi;
@@ -151,8 +156,8 @@ jobs:
- name: Build Mods - name: Build Mods
run: | run: |
retry() { retry() {
for ((n=0; n<${RETRIES}; n++)); do for n in $(seq ${RETRIES}); do
echo "[${n}] ${*}"; echo "[${n}/${RETRIES}] ${*}";
if eval "${*}"; then if eval "${*}"; then
return 0; return 0;
fi; fi;
@@ -168,8 +173,8 @@ jobs:
- name: Test Mods - name: Test Mods
run: | run: |
retry() { retry() {
for ((n=0; n<${RETRIES}; n++)); do for n in $(seq ${RETRIES}); do
echo "[${n}] ${*}"; echo "[${n}/${RETRIES}] ${*}";
if eval "${*}"; then if eval "${*}"; then
return 0; return 0;
fi; fi;
@@ -189,8 +194,8 @@ jobs:
- name: Build Prod - name: Build Prod
run: | run: |
retry() { retry() {
for ((n=0; n<${RETRIES}; n++)); do for n in $(seq ${RETRIES}); do
echo "[${n}] ${*}"; echo "[${n}/${RETRIES}] ${*}";
if eval "${*}"; then if eval "${*}"; then
return 0; return 0;
fi; fi;
@@ -206,8 +211,8 @@ jobs:
- name: Test Prod - name: Test Prod
run: | run: |
retry() { retry() {
for ((n=0; n<${RETRIES}; n++)); do for n in $(seq ${RETRIES}); do
echo "[${n}] ${*}"; echo "[${n}/${RETRIES}] ${*}";
if eval "${*}"; then if eval "${*}"; then
return 0; return 0;
fi; fi;
@@ -227,8 +232,8 @@ jobs:
- name: Build Work - name: Build Work
run: | run: |
retry() { retry() {
for ((n=0; n<${RETRIES}; n++)); do for n in $(seq ${RETRIES}); do
echo "[${n}] ${*}"; echo "[${n}/${RETRIES}] ${*}";
if eval "${*}"; then if eval "${*}"; then
return 0; return 0;
fi; fi;
@@ -244,8 +249,8 @@ jobs:
- name: Test Work - name: Test Work
run: | run: |
retry() { retry() {
for ((n=0; n<${RETRIES}; n++)); do for n in $(seq ${RETRIES}); do
echo "[${n}] ${*}"; echo "[${n}/${RETRIES}] ${*}";
if eval "${*}"; then if eval "${*}"; then
return 0; return 0;
fi; fi;
@@ -278,8 +283,8 @@ jobs:
- name: Publish images (only repo owner) - name: Publish images (only repo owner)
run: | run: |
retry() { retry() {
for ((n=0; n<${RETRIES}; n++)); do for n in $(seq ${RETRIES}); do
echo "[${n}] ${*}"; echo "[${n}/${RETRIES}] ${*}";
if eval "${*}"; then if eval "${*}"; then
return 0; return 0;
fi; fi;

View File

@@ -15,13 +15,6 @@ services:
env: env:
global: global:
- IMAGE: devilbox/php-fpm - IMAGE: devilbox/php-fpm
# travis encrypt DOCKER_USERNAME=user
# travis encrypt DOCKER_PASSWORD=pass
# Must be regenerated when repository name/owner changes
# DOCKER_USERNAME
- secure: "Y7xt3qZW9Zwrsgdd/aCf8ZqA7I039506ZDf/u/WVzGwNHta5YJJ7XYy8XG7XugyqGGXRVpfBiaqmDH4xsPLXyHXdOt2G38GXZHZXIgJOiEJ6aUfpdUxyeu8XIXkD2MDMmc3Kb27Yub/OadxRMLWEflzRnSXXs3KJ8TsbPHh0yRWDMsmHYOYl16gDGUX1izLkEx4J+9iA3+JwIFZk8by/OUuIIQ93bSNORpwHT8A1j7Y1kh8kYkPZ6nRxWO8xrc2wI1Rbp0X+ivLnOotxDZo53UI/0KroeSckDpoWfoz+B7mP+M+5B6kGlI2pKDNQB/ErYvnya6PdtFSS9skbvepR4tBhUOZDDY7NMRg9m3w0b9T1no+g3A4LBGXy6+OZZoiYAGy9LvqMhFkINqbBhRBX+mZhtG0pNXunfcu5dk81Ni/XpXDiy9JU98jItwsRj4SeaPfSt0LUNNXMS/fEwZyTy6TihN1CM3krJpV30Ic5rN64FRnrRjUuNU4lJ/W36yUhM29gb13ahh+f7sDsYoCzMwDM9HFe0YLb3ar3mW1lb3FuUugU2f2EupgCPY60X2XrY9aSgCfbdiVsA84dbLtRfHTPG7UbEcJW5RH8HS+9qVZBK+AcPqon9jbOJRVh7q99YW+R8X/XeyYpz7amacVmRus80+toZ16bbU7D2Qgjdek="
# DOCKER_PASSWORD
- secure: "ZRrVOVOkSCS2UxEi1HNF1iKefK4sDT/sPRl1HxMQjLnRRaAMdG0aRnBwQf2YAM2qzhCfN85qt6zZtC4awc2mHiZ88JrAZxBjK6xj4BwOyLbDuzpBsKXnx8Nix+wyYYKSjsC3LOYrsUe+4rvkw3tVvVaX8G2llojwdksF34VDmmHBmzCG/Bsexk7UqC+qw0PZm7BtctQO+IL0btmMDijRDElxfR+AuPvf9JdkhYzw9TOO7Jqd53NssNVGyL+XSV0dfGn8PkZTp1e8D+28pLK4oGVog+Wk7Cq94hSGjk5AkWKvL5441rupG1AA8K3njeDNMKdov4o+dmnkAH7Jh8tjShMhNhoxHce3IzpczjhoE1EyYQcyPf1qdfhV35Xv096iWX5809pp1MZF2oE5eism8JaU9NpGClryVbKVKtup8ko9/tCqz01Czq5Vue40feMkGtdePulg59OhyyPLYldsObw8QlZydkrmgVZe6b+GyybeiHraTfDq4pvTgUrC4Cmm5J3IB5Ig1THEiYKHfRJ5hSSMDDODeBXc8Xh6mFssEVshNx/jbUQWuAVYQFw/GIquVHxr6btbevrWIoD+zmqcc0L98u9pYH8w7b+gMgVJNCC4QQz2NCGGWw9l9/TmLrKJgeXbG18n8D314le1zuna6/VfH9pXIlbNO4hgz5NLHJk="
matrix: matrix:
- PHP=5.2 - PHP=5.2
- PHP=5.3 - PHP=5.3
@@ -103,44 +96,44 @@ before_script:
### ###
script: script:
- if [ "${TRAVIS_PULL_REQUEST}" == "false" ]; then - if [ "${TRAVIS_PULL_REQUEST}" == "false" ]; then
echo "${DOCKER_PASSWORD}" | docker login --username "${DOCKER_USERNAME}" --password-stdin && make login USERNAME="${DOCKER_USERNAME}" PASSWORD="${DOCKER_PASSWORD}";
if [ "${TRAVIS_BRANCH}" == "master" ]; then if [ "${TRAVIS_BRANCH}" == "master" ]; then
echo "Pushing latest"; echo "Pushing latest";
until docker push "${IMAGE}:${PHP}-base"; do sleep 1; done; make push TAG="${PHP}-base" &&
until docker push "${IMAGE}:${PHP}-mods"; do sleep 1; done; make push TAG="${PHP}-mods" &&
until docker push "${IMAGE}:${PHP}-prod"; do sleep 1; done; make push TAG="${PHP}-prod" &&
until docker push "${IMAGE}:${PHP}-work"; do sleep 1; done; make push TAG="${PHP}-work";
elif [[ ${TRAVIS_BRANCH} =~ ^(release-[.0-9]+)$ ]]; then elif [[ ${TRAVIS_BRANCH} =~ ^(release-[.0-9]+)$ ]]; then
echo "Pushing branch ${TRAVIS_BRANCH}"; echo "Pushing branch ${TRAVIS_BRANCH}";
docker tag "${IMAGE}:${PHP}-base" "${IMAGE}:${PHP}-base-${TRAVIS_BRANCH}" && make tag OLD_TAG="${PHP}-base" NEW_TAG="${PHP}-base-${TRAVIS_BRANCH}" &&
docker tag "${IMAGE}:${PHP}-mods" "${IMAGE}:${PHP}-mods-${TRAVIS_BRANCH}" && make tag OLD_TAG="${PHP}-mods" NEW_TAG="${PHP}-mods-${TRAVIS_BRANCH}" &&
docker tag "${IMAGE}:${PHP}-prod" "${IMAGE}:${PHP}-prod-${TRAVIS_BRANCH}" && make tag OLD_TAG="${PHP}-prod" NEW_TAG="${PHP}-prod-${TRAVIS_BRANCH}" &&
docker tag "${IMAGE}:${PHP}-work" "${IMAGE}:${PHP}-work-${TRAVIS_BRANCH}" && make tag OLD_TAG="${PHP}-work" NEW_TAG="${PHP}-work-${TRAVIS_BRANCH}" &&
until docker push "${IMAGE}:${PHP}-base-${TRAVIS_BRANCH}"; do sleep 1; done; make push TAG="${PHP}-base-${TRAVIS_BRANCH}" &&
until docker push "${IMAGE}:${PHP}-mods-${TRAVIS_BRANCH}"; do sleep 1; done; make push TAG="${PHP}-mods-${TRAVIS_BRANCH}" &&
until docker push "${IMAGE}:${PHP}-prod-${TRAVIS_BRANCH}"; do sleep 1; done; make push TAG="${PHP}-prod-${TRAVIS_BRANCH}" &&
until docker push "${IMAGE}:${PHP}-work-${TRAVIS_BRANCH}"; do sleep 1; done; make push TAG="${PHP}-work-${TRAVIS_BRANCH}";
elif [ -n "${TRAVIS_TAG}" ]; then elif [ -n "${TRAVIS_TAG}" ]; then
echo "Pushing tag ${TRAVIS_TAG}"; echo "Pushing tag ${TRAVIS_TAG}";
docker tag "${IMAGE}:${PHP}-base" "${IMAGE}:${PHP}-base-${TRAVIS_TAG}" && make tag OLD_TAG="${PHP}-base" NEW_TAG="${PHP}-base-${TRAVIS_TAG}" &&
docker tag "${IMAGE}:${PHP}-mods" "${IMAGE}:${PHP}-mods-${TRAVIS_TAG}" && make tag OLD_TAG="${PHP}-mods" NEW_TAG="${PHP}-mods-${TRAVIS_TAG}" &&
docker tag "${IMAGE}:${PHP}-prod" "${IMAGE}:${PHP}-prod-${TRAVIS_TAG}" && make tag OLD_TAG="${PHP}-prod" NEW_TAG="${PHP}-prod-${TRAVIS_TAG}" &&
docker tag "${IMAGE}:${PHP}-work" "${IMAGE}:${PHP}-work-${TRAVIS_TAG}" && make tag OLD_TAG="${PHP}-work" NEW_TAG="${PHP}-work-${TRAVIS_TAG}" &&
until docker push "${IMAGE}:${PHP}-base-${TRAVIS_TAG}"; do sleep 1; done; make push TAG="${PHP}-base-${TRAVIS_TAG}" &&
until docker push "${IMAGE}:${PHP}-mods-${TRAVIS_TAG}"; do sleep 1; done; make push TAG="${PHP}-mods-${TRAVIS_TAG}" &&
until docker push "${IMAGE}:${PHP}-prod-${TRAVIS_TAG}"; do sleep 1; done; make push TAG="${PHP}-prod-${TRAVIS_TAG}" &&
until docker push "${IMAGE}:${PHP}-work-${TRAVIS_TAG}"; do sleep 1; done; make push TAG="${PHP}-work-${TRAVIS_TAG}";
elif [ "${TRAVIS_EVENT_TYPE}" = "cron" ]; then elif [ "${TRAVIS_EVENT_TYPE}" = "cron" ]; then
if MY_TAG="$( git describe --exact-match "$(git rev-parse HEAD)" 2>/dev/null )"; then if MY_TAG="$( git describe --exact-match "$(git rev-parse HEAD)" 2>/dev/null )"; then
echo "Pushing cron tag ${MY_TAG}"; echo "Pushing cron tag ${MY_TAG}";
docker tag "${IMAGE}:${PHP}-base" "${IMAGE}:${PHP}-base-${MY_TAG}" && make tag OLD_TAG="${PHP}-base" NEW_TAG="${PHP}-base-${MY_TAG}" &&
docker tag "${IMAGE}:${PHP}-mods" "${IMAGE}:${PHP}-mods-${MY_TAG}" && make tag OLD_TAG="${PHP}-mods" NEW_TAG="${PHP}-mods-${MY_TAG}" &&
docker tag "${IMAGE}:${PHP}-prod" "${IMAGE}:${PHP}-prod-${MY_TAG}" && make tag OLD_TAG="${PHP}-prod" NEW_TAG="${PHP}-prod-${MY_TAG}" &&
docker tag "${IMAGE}:${PHP}-work" "${IMAGE}:${PHP}-work-${MY_TAG}" && make tag OLD_TAG="${PHP}-work" NEW_TAG="${PHP}-work-${MY_TAG}" &&
until docker push "${IMAGE}:${PHP}-base-${MY_TAG}"; do sleep 1; done; make push TAG="${PHP}-base-${MY_TAG}" &&
until docker push "${IMAGE}:${PHP}-mods-${MY_TAG}"; do sleep 1; done; make push TAG="${PHP}-mods-${MY_TAG}" &&
until docker push "${IMAGE}:${PHP}-prod-${MY_TAG}"; do sleep 1; done; make push TAG="${PHP}-prod-${MY_TAG}" &&
until docker push "${IMAGE}:${PHP}-work-${MY_TAG}"; do sleep 1; done; make push TAG="${PHP}-work-${MY_TAG}";
fi fi
else else
echo "Skipping push to dockerhub on normal branches"; echo "Skipping push to dockerhub on normal branches";

74
CHANGELOG.md Normal file
View File

@@ -0,0 +1,74 @@
# Changelog
## Unreleased
## Release 0.108
#### Added
- Added ghostscript
- Added gsfonts
- Added imagick PDF support (via ghostscript)
- Added mupdf and mupdf-tools
#### Fixed
- Fixes Ansible installation
- Fixes MongoDB for PHP 5.6
- Fixes Redis for PHP 8.0
- Fixes policy.xml for Imagick
#### Changed
- Stricter version check for installed tools
## Release 0.107
#### Fixed
- Fixes login to Dockerhub for CI jobs
- Fixes imagick segfault by setting its threads to 1
#### Added
- Re-added imap for PHP 7.4
- Adding `certbot` binary
## Release 0.106
#### Fixed
- [#153](https://github.com/devilbox/docker-php-fpm/pull/153) Use numeric order for startup files
- Fix build of PHP-FPM 7.4 snmp module
- Disable PHP-FPM 8.0 uploadprogress module due to startup warnings
## Release 0.105
#### Fixed
- Fix pdo_sqlsrv install for PHP 7.1
- Fix sqlsrv install for PHP 7.1
- Fix composer memory issues during install
#### Added
- `phalcon` binary for PHP 7.3 and 7.4
## Release 0.104
#### Fixed
- Fix xdebug install for PHP 7.0
## Release 0.103
#### Added
- Add PHP [yaml](https://pecl.php.net/package/yaml) module
## Release 0.102
#### Added
- [#144](https://github.com/devilbox/docker-php-fpm/issues/144) Added CHANGELOG
#### Changed
- [#123](https://github.com/devilbox/docker-php-fpm/issues/123) Added Dart Sass and removed Ruby Sass
- Replace [scss-lint](https://github.com/sds/scss-lint) with [stylelint](https://github.com/stylelint/stylelint)

View File

@@ -455,7 +455,7 @@ RUN set -eux \
# -------------------- Installing PHP Extension: uploadprogress -------------------- # -------------------- Installing PHP Extension: uploadprogress --------------------
RUN set -eux \ RUN set -eux \
# Installation: Generic # Installation: Version specific
# Type: PECL extension # Type: PECL extension
# Default: Pecl command # Default: Pecl command
&& pecl install uploadprogress \ && pecl install uploadprogress \

View File

@@ -43,6 +43,7 @@ RUN set -eux \
libxml2-dev \ libxml2-dev \
libxpm-dev \ libxpm-dev \
libxslt-dev \ libxslt-dev \
libyaml-dev \
snmp \ snmp \
zlib1g-dev \ zlib1g-dev \
ca-certificates \ ca-certificates \
@@ -554,7 +555,7 @@ RUN set -eux \
# -------------------- Installing PHP Extension: uploadprogress -------------------- # -------------------- Installing PHP Extension: uploadprogress --------------------
RUN set -eux \ RUN set -eux \
# Installation: Generic # Installation: Version specific
# Type: PECL extension # Type: PECL extension
# Default: Pecl command # Default: Pecl command
&& pecl install uploadprogress \ && pecl install uploadprogress \
@@ -602,6 +603,17 @@ RUN set -eux \
&& true && true
# -------------------- Installing PHP Extension: yaml --------------------
RUN set -eux \
# Installation: Version specific
# Type: PECL extension
# Default: Pecl command
&& pecl install yaml-1.3.2 \
# Enabling
&& docker-php-ext-enable yaml \
&& true
# -------------------- Installing PHP Extension: zip -------------------- # -------------------- Installing PHP Extension: zip --------------------
RUN set -eux \ RUN set -eux \
# Installation: Version specific # Installation: Version specific
@@ -691,6 +703,7 @@ RUN set -eux \
libvpx1 \ libvpx1 \
libxpm4 \ libxpm4 \
libxslt1.1 \ libxslt1.1 \
libyaml-0-2 \
snmp \ snmp \
ca-certificates \ ca-certificates \
&& rm -rf /var/lib/apt/lists/* \ && rm -rf /var/lib/apt/lists/* \
@@ -887,6 +900,8 @@ RUN set -eux \
&& php-fpm -m | grep -oiE '^xmlwriter$' \ && php-fpm -m | grep -oiE '^xmlwriter$' \
&& php -m | grep -oiE '^xsl$' \ && php -m | grep -oiE '^xsl$' \
&& php-fpm -m | grep -oiE '^xsl$' \ && php-fpm -m | grep -oiE '^xsl$' \
&& php -m | grep -oiE '^yaml$' \
&& php-fpm -m | grep -oiE '^yaml$' \
&& php -m | grep -oiE '^zip$' \ && php -m | grep -oiE '^zip$' \
&& php-fpm -m | grep -oiE '^zip$' \ && php-fpm -m | grep -oiE '^zip$' \
&& true && true

View File

@@ -43,6 +43,7 @@ RUN set -eux \
libxml2-dev \ libxml2-dev \
libxpm-dev \ libxpm-dev \
libxslt-dev \ libxslt-dev \
libyaml-dev \
snmp \ snmp \
zlib1g-dev \ zlib1g-dev \
ca-certificates \ ca-certificates \
@@ -573,7 +574,7 @@ RUN set -eux \
# -------------------- Installing PHP Extension: uploadprogress -------------------- # -------------------- Installing PHP Extension: uploadprogress --------------------
RUN set -eux \ RUN set -eux \
# Installation: Generic # Installation: Version specific
# Type: PECL extension # Type: PECL extension
# Default: Pecl command # Default: Pecl command
&& pecl install uploadprogress \ && pecl install uploadprogress \
@@ -621,6 +622,17 @@ RUN set -eux \
&& true && true
# -------------------- Installing PHP Extension: yaml --------------------
RUN set -eux \
# Installation: Version specific
# Type: PECL extension
# Default: Pecl command
&& pecl install yaml-1.3.2 \
# Enabling
&& docker-php-ext-enable yaml \
&& true
# -------------------- Installing PHP Extension: zip -------------------- # -------------------- Installing PHP Extension: zip --------------------
RUN set -eux \ RUN set -eux \
# Installation: Version specific # Installation: Version specific
@@ -710,6 +722,7 @@ RUN set -eux \
libvpx1 \ libvpx1 \
libxpm4 \ libxpm4 \
libxslt1.1 \ libxslt1.1 \
libyaml-0-2 \
snmp \ snmp \
ca-certificates \ ca-certificates \
&& rm -rf /var/lib/apt/lists/* \ && rm -rf /var/lib/apt/lists/* \
@@ -908,6 +921,8 @@ RUN set -eux \
&& php-fpm -m | grep -oiE '^xmlwriter$' \ && php-fpm -m | grep -oiE '^xmlwriter$' \
&& php -m | grep -oiE '^xsl$' \ && php -m | grep -oiE '^xsl$' \
&& php-fpm -m | grep -oiE '^xsl$' \ && php-fpm -m | grep -oiE '^xsl$' \
&& php -m | grep -oiE '^yaml$' \
&& php-fpm -m | grep -oiE '^yaml$' \
&& php -m | grep -oiE '^zip$' \ && php -m | grep -oiE '^zip$' \
&& php-fpm -m | grep -oiE '^zip$' \ && php-fpm -m | grep -oiE '^zip$' \
&& true && true

View File

@@ -12,6 +12,7 @@ RUN set -eux \
alien \ alien \
firebird-dev \ firebird-dev \
freetds-dev \ freetds-dev \
ghostscript \
libaio-dev \ libaio-dev \
libbz2-dev \ libbz2-dev \
libc-client-dev \ libc-client-dev \
@@ -26,6 +27,7 @@ RUN set -eux \
libjpeg-dev \ libjpeg-dev \
libkrb5-dev \ libkrb5-dev \
libldap2-dev \ libldap2-dev \
libmagickwand-dev \
libmcrypt-dev \ libmcrypt-dev \
libmemcached-dev \ libmemcached-dev \
libnghttp2-dev \ libnghttp2-dev \
@@ -41,9 +43,11 @@ RUN set -eux \
libssl-dev \ libssl-dev \
libtidy-dev \ libtidy-dev \
libvpx-dev \ libvpx-dev \
libwebp5 \
libxml2-dev \ libxml2-dev \
libxpm-dev \ libxpm-dev \
libxslt-dev \ libxslt-dev \
libyaml-dev \
snmp \ snmp \
zlib1g-dev \ zlib1g-dev \
ca-certificates \ ca-certificates \
@@ -193,6 +197,28 @@ RUN set -eux \
&& true && true
# -------------------- Installing PHP Extension: imagick --------------------
RUN set -eux \
# Installation: Version specific
# Type: PECL extension
# Default: Pecl command
&& pecl install imagick \
# Enabling
&& docker-php-ext-enable imagick \
# Generic post-command
&& sed -i'' 's|.*"thread".*| <policy domain="resource" name="thread" value="1"/>|g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS2".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS3".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"EPS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PDF".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"XPS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="delegate".*pattern="gs".*||g' /etc/ImageMagick-6/policy.xml \
\
&& true
# -------------------- Installing PHP Extension: imap -------------------- # -------------------- Installing PHP Extension: imap --------------------
RUN set -eux \ RUN set -eux \
# Generic pre-command # Generic pre-command
@@ -561,7 +587,7 @@ RUN set -eux \
# -------------------- Installing PHP Extension: uploadprogress -------------------- # -------------------- Installing PHP Extension: uploadprogress --------------------
RUN set -eux \ RUN set -eux \
# Installation: Generic # Installation: Version specific
# Type: PECL extension # Type: PECL extension
# Default: Pecl command # Default: Pecl command
&& pecl install uploadprogress \ && pecl install uploadprogress \
@@ -609,6 +635,17 @@ RUN set -eux \
&& true && true
# -------------------- Installing PHP Extension: yaml --------------------
RUN set -eux \
# Installation: Version specific
# Type: PECL extension
# Default: Pecl command
&& pecl install yaml-1.3.2 \
# Enabling
&& docker-php-ext-enable yaml \
&& true
# -------------------- Installing PHP Extension: zip -------------------- # -------------------- Installing PHP Extension: zip --------------------
RUN set -eux \ RUN set -eux \
# Installation: Version specific # Installation: Version specific
@@ -676,6 +713,7 @@ COPY --from=builder /usr/lib/oracle/ /usr/lib/oracle/
RUN set -eux \ RUN set -eux \
&& DEBIAN_FRONTEND=noninteractive apt-get update -qq \ && DEBIAN_FRONTEND=noninteractive apt-get update -qq \
&& DEBIAN_FRONTEND=noninteractive apt-get install -qq -y --no-install-recommends --no-install-suggests \ && DEBIAN_FRONTEND=noninteractive apt-get install -qq -y --no-install-recommends --no-install-suggests \
ghostscript \
libaio1 \ libaio1 \
libaspell15 \ libaspell15 \
libc-client2007e \ libc-client2007e \
@@ -684,6 +722,7 @@ RUN set -eux \
libfreetype6 \ libfreetype6 \
libicu52 \ libicu52 \
libjpeg62-turbo \ libjpeg62-turbo \
libmagickwand-6.q16-2 \
libmcrypt4 \ libmcrypt4 \
libmemcachedutil2 \ libmemcachedutil2 \
libmysqlclient18 \ libmysqlclient18 \
@@ -696,8 +735,10 @@ RUN set -eux \
libsybdb5 \ libsybdb5 \
libtidy-0.99-0 \ libtidy-0.99-0 \
libvpx1 \ libvpx1 \
libwebp5 \
libxpm4 \ libxpm4 \
libxslt1.1 \ libxslt1.1 \
libyaml-0-2 \
snmp \ snmp \
ca-certificates \ ca-certificates \
&& rm -rf /var/lib/apt/lists/* \ && rm -rf /var/lib/apt/lists/* \
@@ -709,6 +750,17 @@ RUN set -eux \
### Post Install ### Post Install
### ###
RUN set -eux \ RUN set -eux \
# ---------- imagick ----------
&& sed -i'' 's|.*"thread".*| <policy domain="resource" name="thread" value="1"/>|g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS2".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS3".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"EPS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PDF".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"XPS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="delegate".*pattern="gs".*||g' /etc/ImageMagick-6/policy.xml \
\
# ---------- oci8 ---------- # ---------- oci8 ----------
&& ORACLE_HREF="$( curl -sS https://yum.oracle.com/repo/OracleLinux/OL7/oracle/instantclient/x86_64/ | tac | tac | grep -Eo 'href="getPackage/oracle-instantclient.+basiclite.+rpm"' | tail -1 )" \ && ORACLE_HREF="$( curl -sS https://yum.oracle.com/repo/OracleLinux/OL7/oracle/instantclient/x86_64/ | tac | tac | grep -Eo 'href="getPackage/oracle-instantclient.+basiclite.+rpm"' | tail -1 )" \
&& ORACLE_VERSION_MAJOR="$( echo "${ORACLE_HREF}" | grep -Eo 'instantclient[.0-9]+' | sed 's/instantclient//g' )" \ && ORACLE_VERSION_MAJOR="$( echo "${ORACLE_HREF}" | grep -Eo 'instantclient[.0-9]+' | sed 's/instantclient//g' )" \
@@ -777,6 +829,8 @@ RUN set -eux \
&& php-fpm -m | grep -oiE '^iconv$' \ && php-fpm -m | grep -oiE '^iconv$' \
&& php -m | grep -oiE '^igbinary$' \ && php -m | grep -oiE '^igbinary$' \
&& php-fpm -m | grep -oiE '^igbinary$' \ && php-fpm -m | grep -oiE '^igbinary$' \
&& php -m | grep -oiE '^imagick$' \
&& php-fpm -m | grep -oiE '^imagick$' \
&& php -m | grep -oiE '^imap$' \ && php -m | grep -oiE '^imap$' \
&& php-fpm -m | grep -oiE '^imap$' \ && php-fpm -m | grep -oiE '^imap$' \
&& php -m | grep -oiE '^interbase$' \ && php -m | grep -oiE '^interbase$' \
@@ -896,6 +950,8 @@ RUN set -eux \
&& php-fpm -m | grep -oiE '^xmlwriter$' \ && php-fpm -m | grep -oiE '^xmlwriter$' \
&& php -m | grep -oiE '^xsl$' \ && php -m | grep -oiE '^xsl$' \
&& php-fpm -m | grep -oiE '^xsl$' \ && php-fpm -m | grep -oiE '^xsl$' \
&& php -m | grep -oiE '^yaml$' \
&& php-fpm -m | grep -oiE '^yaml$' \
&& php -m | grep -oiE '^zip$' \ && php -m | grep -oiE '^zip$' \
&& php-fpm -m | grep -oiE '^zip$' \ && php-fpm -m | grep -oiE '^zip$' \
&& true && true

View File

@@ -12,6 +12,7 @@ RUN set -eux \
alien \ alien \
firebird-dev \ firebird-dev \
freetds-dev \ freetds-dev \
ghostscript \
libaio-dev \ libaio-dev \
libbz2-dev \ libbz2-dev \
libc-client-dev \ libc-client-dev \
@@ -47,6 +48,7 @@ RUN set -eux \
libxml2-dev \ libxml2-dev \
libxpm-dev \ libxpm-dev \
libxslt-dev \ libxslt-dev \
libyaml-dev \
libzip-dev \ libzip-dev \
snmp \ snmp \
zlib1g-dev \ zlib1g-dev \
@@ -219,6 +221,17 @@ RUN set -eux \
&& pecl install imagick \ && pecl install imagick \
# Enabling # Enabling
&& docker-php-ext-enable imagick \ && docker-php-ext-enable imagick \
# Generic post-command
&& sed -i'' 's|.*"thread".*| <policy domain="resource" name="thread" value="1"/>|g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS2".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS3".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"EPS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PDF".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"XPS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="delegate".*pattern="gs".*||g' /etc/ImageMagick-6/policy.xml \
\
&& true && true
@@ -317,10 +330,10 @@ RUN set -eux \
# -------------------- Installing PHP Extension: mongodb -------------------- # -------------------- Installing PHP Extension: mongodb --------------------
RUN set -eux \ RUN set -eux \
# Installation: Generic # Installation: Version specific
# Type: PECL extension # Type: PECL extension
# Default: Pecl command # Default: Pecl command
&& pecl install mongodb \ && pecl install mongodb-1.7.5 \
# Enabling # Enabling
&& docker-php-ext-enable mongodb \ && docker-php-ext-enable mongodb \
&& true && true
@@ -591,7 +604,7 @@ RUN set -eux \
# -------------------- Installing PHP Extension: uploadprogress -------------------- # -------------------- Installing PHP Extension: uploadprogress --------------------
RUN set -eux \ RUN set -eux \
# Installation: Generic # Installation: Version specific
# Type: PECL extension # Type: PECL extension
# Default: Pecl command # Default: Pecl command
&& pecl install uploadprogress \ && pecl install uploadprogress \
@@ -639,6 +652,17 @@ RUN set -eux \
&& true && true
# -------------------- Installing PHP Extension: yaml --------------------
RUN set -eux \
# Installation: Version specific
# Type: PECL extension
# Default: Pecl command
&& pecl install yaml-1.3.2 \
# Enabling
&& docker-php-ext-enable yaml \
&& true
# -------------------- Installing PHP Extension: zip -------------------- # -------------------- Installing PHP Extension: zip --------------------
RUN set -eux \ RUN set -eux \
# Installation: Generic # Installation: Generic
@@ -705,6 +729,7 @@ COPY --from=builder /usr/lib/oracle/ /usr/lib/oracle/
RUN set -eux \ RUN set -eux \
&& DEBIAN_FRONTEND=noninteractive apt-get update -qq \ && DEBIAN_FRONTEND=noninteractive apt-get update -qq \
&& DEBIAN_FRONTEND=noninteractive apt-get install -qq -y --no-install-recommends --no-install-suggests \ && DEBIAN_FRONTEND=noninteractive apt-get install -qq -y --no-install-recommends --no-install-suggests \
ghostscript \
libaio1 \ libaio1 \
libaspell15 \ libaspell15 \
libc-client2007e \ libc-client2007e \
@@ -729,6 +754,7 @@ RUN set -eux \
libwebp6 \ libwebp6 \
libxpm4 \ libxpm4 \
libxslt1.1 \ libxslt1.1 \
libyaml-0-2 \
libzip4 \ libzip4 \
snmp \ snmp \
ca-certificates \ ca-certificates \
@@ -741,6 +767,17 @@ RUN set -eux \
### Post Install ### Post Install
### ###
RUN set -eux \ RUN set -eux \
# ---------- imagick ----------
&& sed -i'' 's|.*"thread".*| <policy domain="resource" name="thread" value="1"/>|g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS2".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS3".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"EPS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PDF".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"XPS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="delegate".*pattern="gs".*||g' /etc/ImageMagick-6/policy.xml \
\
# ---------- oci8 ---------- # ---------- oci8 ----------
&& ORACLE_HREF="$( curl -sS https://yum.oracle.com/repo/OracleLinux/OL7/oracle/instantclient/x86_64/ | tac | tac | grep -Eo 'href="getPackage/oracle-instantclient.+basiclite.+rpm"' | tail -1 )" \ && ORACLE_HREF="$( curl -sS https://yum.oracle.com/repo/OracleLinux/OL7/oracle/instantclient/x86_64/ | tac | tac | grep -Eo 'href="getPackage/oracle-instantclient.+basiclite.+rpm"' | tail -1 )" \
&& ORACLE_VERSION_MAJOR="$( echo "${ORACLE_HREF}" | grep -Eo 'instantclient[.0-9]+' | sed 's/instantclient//g' )" \ && ORACLE_VERSION_MAJOR="$( echo "${ORACLE_HREF}" | grep -Eo 'instantclient[.0-9]+' | sed 's/instantclient//g' )" \
@@ -930,6 +967,8 @@ RUN set -eux \
&& php-fpm -m | grep -oiE '^xmlwriter$' \ && php-fpm -m | grep -oiE '^xmlwriter$' \
&& php -m | grep -oiE '^xsl$' \ && php -m | grep -oiE '^xsl$' \
&& php-fpm -m | grep -oiE '^xsl$' \ && php-fpm -m | grep -oiE '^xsl$' \
&& php -m | grep -oiE '^yaml$' \
&& php-fpm -m | grep -oiE '^yaml$' \
&& php -m | grep -oiE '^zip$' \ && php -m | grep -oiE '^zip$' \
&& php-fpm -m | grep -oiE '^zip$' \ && php-fpm -m | grep -oiE '^zip$' \
&& true && true

View File

@@ -12,6 +12,7 @@ RUN set -eux \
alien \ alien \
firebird-dev \ firebird-dev \
freetds-dev \ freetds-dev \
ghostscript \
libaio-dev \ libaio-dev \
libbz2-dev \ libbz2-dev \
libc-client-dev \ libc-client-dev \
@@ -48,6 +49,7 @@ RUN set -eux \
libxml2-dev \ libxml2-dev \
libxpm-dev \ libxpm-dev \
libxslt-dev \ libxslt-dev \
libyaml-dev \
libzip-dev \ libzip-dev \
snmp \ snmp \
unixodbc-dev \ unixodbc-dev \
@@ -221,6 +223,17 @@ RUN set -eux \
&& pecl install imagick \ && pecl install imagick \
# Enabling # Enabling
&& docker-php-ext-enable imagick \ && docker-php-ext-enable imagick \
# Generic post-command
&& sed -i'' 's|.*"thread".*| <policy domain="resource" name="thread" value="1"/>|g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS2".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS3".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"EPS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PDF".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"XPS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="delegate".*pattern="gs".*||g' /etc/ImageMagick-6/policy.xml \
\
&& true && true
@@ -632,7 +645,7 @@ RUN set -eux \
# -------------------- Installing PHP Extension: uploadprogress -------------------- # -------------------- Installing PHP Extension: uploadprogress --------------------
RUN set -eux \ RUN set -eux \
# Installation: Version specific # Installation: Generic
# Type: GIT extension # Type: GIT extension
&& git clone https://github.com/php/pecl-php-uploadprogress /tmp/uploadprogress \ && git clone https://github.com/php/pecl-php-uploadprogress /tmp/uploadprogress \
&& cd /tmp/uploadprogress \ && cd /tmp/uploadprogress \
@@ -658,10 +671,10 @@ RUN set -eux \
# -------------------- Installing PHP Extension: xdebug -------------------- # -------------------- Installing PHP Extension: xdebug --------------------
RUN set -eux \ RUN set -eux \
# Installation: Generic # Installation: Version specific
# Type: PECL extension # Type: PECL extension
# Default: Pecl command # Default: Pecl command
&& pecl install xdebug \ && pecl install xdebug-2.9.0 \
# Enabling # Enabling
&& docker-php-ext-enable xdebug \ && docker-php-ext-enable xdebug \
&& true && true
@@ -685,6 +698,17 @@ RUN set -eux \
&& true && true
# -------------------- Installing PHP Extension: yaml --------------------
RUN set -eux \
# Installation: Version specific
# Type: PECL extension
# Default: Pecl command
&& pecl install yaml-2.0.4 \
# Enabling
&& docker-php-ext-enable yaml \
&& true
# -------------------- Installing PHP Extension: zip -------------------- # -------------------- Installing PHP Extension: zip --------------------
RUN set -eux \ RUN set -eux \
# Installation: Generic # Installation: Generic
@@ -751,6 +775,7 @@ COPY --from=builder /usr/lib/oracle/ /usr/lib/oracle/
RUN set -eux \ RUN set -eux \
&& DEBIAN_FRONTEND=noninteractive apt-get update -qq \ && DEBIAN_FRONTEND=noninteractive apt-get update -qq \
&& DEBIAN_FRONTEND=noninteractive apt-get install -qq -y --no-install-recommends --no-install-suggests \ && DEBIAN_FRONTEND=noninteractive apt-get install -qq -y --no-install-recommends --no-install-suggests \
ghostscript \
libaio1 \ libaio1 \
libaspell15 \ libaspell15 \
libc-client2007e \ libc-client2007e \
@@ -775,6 +800,7 @@ RUN set -eux \
libwebp6 \ libwebp6 \
libxpm4 \ libxpm4 \
libxslt1.1 \ libxslt1.1 \
libyaml-0-2 \
libzip4 \ libzip4 \
snmp \ snmp \
unixodbc \ unixodbc \
@@ -788,6 +814,17 @@ RUN set -eux \
### Post Install ### Post Install
### ###
RUN set -eux \ RUN set -eux \
# ---------- imagick ----------
&& sed -i'' 's|.*"thread".*| <policy domain="resource" name="thread" value="1"/>|g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS2".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS3".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"EPS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PDF".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"XPS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="delegate".*pattern="gs".*||g' /etc/ImageMagick-6/policy.xml \
\
# ---------- oci8 ---------- # ---------- oci8 ----------
&& ORACLE_HREF="$( curl -sS https://yum.oracle.com/repo/OracleLinux/OL7/oracle/instantclient/x86_64/ | tac | tac | grep -Eo 'href="getPackage/oracle-instantclient.+basiclite.+rpm"' | tail -1 )" \ && ORACLE_HREF="$( curl -sS https://yum.oracle.com/repo/OracleLinux/OL7/oracle/instantclient/x86_64/ | tac | tac | grep -Eo 'href="getPackage/oracle-instantclient.+basiclite.+rpm"' | tail -1 )" \
&& ORACLE_VERSION_MAJOR="$( echo "${ORACLE_HREF}" | grep -Eo 'instantclient[.0-9]+' | sed 's/instantclient//g' )" \ && ORACLE_VERSION_MAJOR="$( echo "${ORACLE_HREF}" | grep -Eo 'instantclient[.0-9]+' | sed 's/instantclient//g' )" \
@@ -981,6 +1018,8 @@ RUN set -eux \
&& php-fpm -m | grep -oiE '^xmlwriter$' \ && php-fpm -m | grep -oiE '^xmlwriter$' \
&& php -m | grep -oiE '^xsl$' \ && php -m | grep -oiE '^xsl$' \
&& php-fpm -m | grep -oiE '^xsl$' \ && php-fpm -m | grep -oiE '^xsl$' \
&& php -m | grep -oiE '^yaml$' \
&& php-fpm -m | grep -oiE '^yaml$' \
&& php -m | grep -oiE '^zip$' \ && php -m | grep -oiE '^zip$' \
&& php-fpm -m | grep -oiE '^zip$' \ && php-fpm -m | grep -oiE '^zip$' \
&& true && true

View File

@@ -12,6 +12,7 @@ RUN set -eux \
alien \ alien \
firebird-dev \ firebird-dev \
freetds-dev \ freetds-dev \
ghostscript \
libaio-dev \ libaio-dev \
libbz2-dev \ libbz2-dev \
libc-client-dev \ libc-client-dev \
@@ -48,6 +49,7 @@ RUN set -eux \
libxml2-dev \ libxml2-dev \
libxpm-dev \ libxpm-dev \
libxslt-dev \ libxslt-dev \
libyaml-dev \
libzip-dev \ libzip-dev \
snmp \ snmp \
unixodbc-dev \ unixodbc-dev \
@@ -221,6 +223,17 @@ RUN set -eux \
&& pecl install imagick \ && pecl install imagick \
# Enabling # Enabling
&& docker-php-ext-enable imagick \ && docker-php-ext-enable imagick \
# Generic post-command
&& sed -i'' 's|.*"thread".*| <policy domain="resource" name="thread" value="1"/>|g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS2".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS3".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"EPS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PDF".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"XPS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="delegate".*pattern="gs".*||g' /etc/ImageMagick-6/policy.xml \
\
&& true && true
@@ -446,10 +459,10 @@ RUN set -eux \
# -------------------- Installing PHP Extension: pdo_sqlsrv -------------------- # -------------------- Installing PHP Extension: pdo_sqlsrv --------------------
RUN set -eux \ RUN set -eux \
# Installation: Generic # Installation: Version specific
# Type: PECL extension # Type: PECL extension
# Default: Pecl command # Default: Pecl command
&& pecl install pdo_sqlsrv \ && pecl install pdo_sqlsrv-5.6.1 \
# Enabling # Enabling
&& docker-php-ext-enable pdo_sqlsrv \ && docker-php-ext-enable pdo_sqlsrv \
&& true && true
@@ -576,10 +589,10 @@ RUN set -eux \
# -------------------- Installing PHP Extension: sqlsrv -------------------- # -------------------- Installing PHP Extension: sqlsrv --------------------
RUN set -eux \ RUN set -eux \
# Installation: Generic # Installation: Version specific
# Type: PECL extension # Type: PECL extension
# Default: Pecl command # Default: Pecl command
&& pecl install sqlsrv \ && pecl install sqlsrv-5.6.1 \
# Enabling # Enabling
&& docker-php-ext-enable sqlsrv \ && docker-php-ext-enable sqlsrv \
&& true && true
@@ -641,7 +654,7 @@ RUN set -eux \
# -------------------- Installing PHP Extension: uploadprogress -------------------- # -------------------- Installing PHP Extension: uploadprogress --------------------
RUN set -eux \ RUN set -eux \
# Installation: Version specific # Installation: Generic
# Type: GIT extension # Type: GIT extension
&& git clone https://github.com/php/pecl-php-uploadprogress /tmp/uploadprogress \ && git clone https://github.com/php/pecl-php-uploadprogress /tmp/uploadprogress \
&& cd /tmp/uploadprogress \ && cd /tmp/uploadprogress \
@@ -694,6 +707,17 @@ RUN set -eux \
&& true && true
# -------------------- Installing PHP Extension: yaml --------------------
RUN set -eux \
# Installation: Generic
# Type: PECL extension
# Default: Pecl command
&& pecl install yaml \
# Enabling
&& docker-php-ext-enable yaml \
&& true
# -------------------- Installing PHP Extension: zip -------------------- # -------------------- Installing PHP Extension: zip --------------------
RUN set -eux \ RUN set -eux \
# Installation: Generic # Installation: Generic
@@ -760,6 +784,7 @@ COPY --from=builder /usr/lib/oracle/ /usr/lib/oracle/
RUN set -eux \ RUN set -eux \
&& DEBIAN_FRONTEND=noninteractive apt-get update -qq \ && DEBIAN_FRONTEND=noninteractive apt-get update -qq \
&& DEBIAN_FRONTEND=noninteractive apt-get install -qq -y --no-install-recommends --no-install-suggests \ && DEBIAN_FRONTEND=noninteractive apt-get install -qq -y --no-install-recommends --no-install-suggests \
ghostscript \
libaio1 \ libaio1 \
libaspell15 \ libaspell15 \
libc-client2007e \ libc-client2007e \
@@ -785,6 +810,7 @@ RUN set -eux \
libwebp6 \ libwebp6 \
libxpm4 \ libxpm4 \
libxslt1.1 \ libxslt1.1 \
libyaml-0-2 \
libzip4 \ libzip4 \
snmp \ snmp \
unixodbc \ unixodbc \
@@ -798,6 +824,17 @@ RUN set -eux \
### Post Install ### Post Install
### ###
RUN set -eux \ RUN set -eux \
# ---------- imagick ----------
&& sed -i'' 's|.*"thread".*| <policy domain="resource" name="thread" value="1"/>|g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS2".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS3".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"EPS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PDF".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"XPS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="delegate".*pattern="gs".*||g' /etc/ImageMagick-6/policy.xml \
\
# ---------- oci8 ---------- # ---------- oci8 ----------
&& ORACLE_HREF="$( curl -sS https://yum.oracle.com/repo/OracleLinux/OL7/oracle/instantclient/x86_64/ | tac | tac | grep -Eo 'href="getPackage/oracle-instantclient.+basiclite.+rpm"' | tail -1 )" \ && ORACLE_HREF="$( curl -sS https://yum.oracle.com/repo/OracleLinux/OL7/oracle/instantclient/x86_64/ | tac | tac | grep -Eo 'href="getPackage/oracle-instantclient.+basiclite.+rpm"' | tail -1 )" \
&& ORACLE_VERSION_MAJOR="$( echo "${ORACLE_HREF}" | grep -Eo 'instantclient[.0-9]+' | sed 's/instantclient//g' )" \ && ORACLE_VERSION_MAJOR="$( echo "${ORACLE_HREF}" | grep -Eo 'instantclient[.0-9]+' | sed 's/instantclient//g' )" \
@@ -993,6 +1030,8 @@ RUN set -eux \
&& php-fpm -m | grep -oiE '^xmlwriter$' \ && php-fpm -m | grep -oiE '^xmlwriter$' \
&& php -m | grep -oiE '^xsl$' \ && php -m | grep -oiE '^xsl$' \
&& php-fpm -m | grep -oiE '^xsl$' \ && php-fpm -m | grep -oiE '^xsl$' \
&& php -m | grep -oiE '^yaml$' \
&& php-fpm -m | grep -oiE '^yaml$' \
&& php -m | grep -oiE '^zip$' \ && php -m | grep -oiE '^zip$' \
&& php-fpm -m | grep -oiE '^zip$' \ && php-fpm -m | grep -oiE '^zip$' \
&& true && true

View File

@@ -12,6 +12,7 @@ RUN set -eux \
alien \ alien \
firebird-dev \ firebird-dev \
freetds-dev \ freetds-dev \
ghostscript \
libaio-dev \ libaio-dev \
libbz2-dev \ libbz2-dev \
libc-client-dev \ libc-client-dev \
@@ -48,6 +49,7 @@ RUN set -eux \
libxml2-dev \ libxml2-dev \
libxpm-dev \ libxpm-dev \
libxslt-dev \ libxslt-dev \
libyaml-dev \
libzip-dev \ libzip-dev \
snmp \ snmp \
unixodbc-dev \ unixodbc-dev \
@@ -221,6 +223,17 @@ RUN set -eux \
&& pecl install imagick \ && pecl install imagick \
# Enabling # Enabling
&& docker-php-ext-enable imagick \ && docker-php-ext-enable imagick \
# Generic post-command
&& sed -i'' 's|.*"thread".*| <policy domain="resource" name="thread" value="1"/>|g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS2".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS3".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"EPS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PDF".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"XPS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="delegate".*pattern="gs".*||g' /etc/ImageMagick-6/policy.xml \
\
&& true && true
@@ -645,7 +658,7 @@ RUN set -eux \
# -------------------- Installing PHP Extension: uploadprogress -------------------- # -------------------- Installing PHP Extension: uploadprogress --------------------
RUN set -eux \ RUN set -eux \
# Installation: Version specific # Installation: Generic
# Type: GIT extension # Type: GIT extension
&& git clone https://github.com/php/pecl-php-uploadprogress /tmp/uploadprogress \ && git clone https://github.com/php/pecl-php-uploadprogress /tmp/uploadprogress \
&& cd /tmp/uploadprogress \ && cd /tmp/uploadprogress \
@@ -698,6 +711,17 @@ RUN set -eux \
&& true && true
# -------------------- Installing PHP Extension: yaml --------------------
RUN set -eux \
# Installation: Generic
# Type: PECL extension
# Default: Pecl command
&& pecl install yaml \
# Enabling
&& docker-php-ext-enable yaml \
&& true
# -------------------- Installing PHP Extension: zip -------------------- # -------------------- Installing PHP Extension: zip --------------------
RUN set -eux \ RUN set -eux \
# Installation: Generic # Installation: Generic
@@ -764,6 +788,7 @@ COPY --from=builder /usr/lib/oracle/ /usr/lib/oracle/
RUN set -eux \ RUN set -eux \
&& DEBIAN_FRONTEND=noninteractive apt-get update -qq \ && DEBIAN_FRONTEND=noninteractive apt-get update -qq \
&& DEBIAN_FRONTEND=noninteractive apt-get install -qq -y --no-install-recommends --no-install-suggests \ && DEBIAN_FRONTEND=noninteractive apt-get install -qq -y --no-install-recommends --no-install-suggests \
ghostscript \
libaio1 \ libaio1 \
libaspell15 \ libaspell15 \
libc-client2007e \ libc-client2007e \
@@ -789,6 +814,7 @@ RUN set -eux \
libwebp6 \ libwebp6 \
libxpm4 \ libxpm4 \
libxslt1.1 \ libxslt1.1 \
libyaml-0-2 \
libzip4 \ libzip4 \
snmp \ snmp \
unixodbc \ unixodbc \
@@ -802,6 +828,17 @@ RUN set -eux \
### Post Install ### Post Install
### ###
RUN set -eux \ RUN set -eux \
# ---------- imagick ----------
&& sed -i'' 's|.*"thread".*| <policy domain="resource" name="thread" value="1"/>|g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS2".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS3".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"EPS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PDF".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"XPS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="delegate".*pattern="gs".*||g' /etc/ImageMagick-6/policy.xml \
\
# ---------- oci8 ---------- # ---------- oci8 ----------
&& ORACLE_HREF="$( curl -sS https://yum.oracle.com/repo/OracleLinux/OL7/oracle/instantclient/x86_64/ | tac | tac | grep -Eo 'href="getPackage/oracle-instantclient.+basiclite.+rpm"' | tail -1 )" \ && ORACLE_HREF="$( curl -sS https://yum.oracle.com/repo/OracleLinux/OL7/oracle/instantclient/x86_64/ | tac | tac | grep -Eo 'href="getPackage/oracle-instantclient.+basiclite.+rpm"' | tail -1 )" \
&& ORACLE_VERSION_MAJOR="$( echo "${ORACLE_HREF}" | grep -Eo 'instantclient[.0-9]+' | sed 's/instantclient//g' )" \ && ORACLE_VERSION_MAJOR="$( echo "${ORACLE_HREF}" | grep -Eo 'instantclient[.0-9]+' | sed 's/instantclient//g' )" \
@@ -999,6 +1036,8 @@ RUN set -eux \
&& php-fpm -m | grep -oiE '^xmlwriter$' \ && php-fpm -m | grep -oiE '^xmlwriter$' \
&& php -m | grep -oiE '^xsl$' \ && php -m | grep -oiE '^xsl$' \
&& php-fpm -m | grep -oiE '^xsl$' \ && php-fpm -m | grep -oiE '^xsl$' \
&& php -m | grep -oiE '^yaml$' \
&& php-fpm -m | grep -oiE '^yaml$' \
&& php -m | grep -oiE '^zip$' \ && php -m | grep -oiE '^zip$' \
&& php-fpm -m | grep -oiE '^zip$' \ && php-fpm -m | grep -oiE '^zip$' \
&& true && true

View File

@@ -12,6 +12,7 @@ RUN set -eux \
alien \ alien \
firebird-dev \ firebird-dev \
freetds-dev \ freetds-dev \
ghostscript \
libaio-dev \ libaio-dev \
libbz2-dev \ libbz2-dev \
libc-client-dev \ libc-client-dev \
@@ -48,6 +49,7 @@ RUN set -eux \
libxml2-dev \ libxml2-dev \
libxpm-dev \ libxpm-dev \
libxslt-dev \ libxslt-dev \
libyaml-dev \
libzip-dev \ libzip-dev \
snmp \ snmp \
unixodbc-dev \ unixodbc-dev \
@@ -221,6 +223,17 @@ RUN set -eux \
&& pecl install imagick \ && pecl install imagick \
# Enabling # Enabling
&& docker-php-ext-enable imagick \ && docker-php-ext-enable imagick \
# Generic post-command
&& sed -i'' 's|.*"thread".*| <policy domain="resource" name="thread" value="1"/>|g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS2".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS3".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"EPS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PDF".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"XPS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="delegate".*pattern="gs".*||g' /etc/ImageMagick-6/policy.xml \
\
&& true && true
@@ -645,7 +658,7 @@ RUN set -eux \
# -------------------- Installing PHP Extension: uploadprogress -------------------- # -------------------- Installing PHP Extension: uploadprogress --------------------
RUN set -eux \ RUN set -eux \
# Installation: Version specific # Installation: Generic
# Type: GIT extension # Type: GIT extension
&& git clone https://github.com/php/pecl-php-uploadprogress /tmp/uploadprogress \ && git clone https://github.com/php/pecl-php-uploadprogress /tmp/uploadprogress \
&& cd /tmp/uploadprogress \ && cd /tmp/uploadprogress \
@@ -698,6 +711,17 @@ RUN set -eux \
&& true && true
# -------------------- Installing PHP Extension: yaml --------------------
RUN set -eux \
# Installation: Generic
# Type: PECL extension
# Default: Pecl command
&& pecl install yaml \
# Enabling
&& docker-php-ext-enable yaml \
&& true
# -------------------- Installing PHP Extension: zip -------------------- # -------------------- Installing PHP Extension: zip --------------------
RUN set -eux \ RUN set -eux \
# Installation: Generic # Installation: Generic
@@ -764,6 +788,7 @@ COPY --from=builder /usr/lib/oracle/ /usr/lib/oracle/
RUN set -eux \ RUN set -eux \
&& DEBIAN_FRONTEND=noninteractive apt-get update -qq \ && DEBIAN_FRONTEND=noninteractive apt-get update -qq \
&& DEBIAN_FRONTEND=noninteractive apt-get install -qq -y --no-install-recommends --no-install-suggests \ && DEBIAN_FRONTEND=noninteractive apt-get install -qq -y --no-install-recommends --no-install-suggests \
ghostscript \
libaio1 \ libaio1 \
libaspell15 \ libaspell15 \
libc-client2007e \ libc-client2007e \
@@ -789,6 +814,7 @@ RUN set -eux \
libwebp6 \ libwebp6 \
libxpm4 \ libxpm4 \
libxslt1.1 \ libxslt1.1 \
libyaml-0-2 \
libzip4 \ libzip4 \
snmp \ snmp \
unixodbc \ unixodbc \
@@ -802,6 +828,17 @@ RUN set -eux \
### Post Install ### Post Install
### ###
RUN set -eux \ RUN set -eux \
# ---------- imagick ----------
&& sed -i'' 's|.*"thread".*| <policy domain="resource" name="thread" value="1"/>|g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS2".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS3".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"EPS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PDF".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"XPS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="delegate".*pattern="gs".*||g' /etc/ImageMagick-6/policy.xml \
\
# ---------- oci8 ---------- # ---------- oci8 ----------
&& ORACLE_HREF="$( curl -sS https://yum.oracle.com/repo/OracleLinux/OL7/oracle/instantclient/x86_64/ | tac | tac | grep -Eo 'href="getPackage/oracle-instantclient.+basiclite.+rpm"' | tail -1 )" \ && ORACLE_HREF="$( curl -sS https://yum.oracle.com/repo/OracleLinux/OL7/oracle/instantclient/x86_64/ | tac | tac | grep -Eo 'href="getPackage/oracle-instantclient.+basiclite.+rpm"' | tail -1 )" \
&& ORACLE_VERSION_MAJOR="$( echo "${ORACLE_HREF}" | grep -Eo 'instantclient[.0-9]+' | sed 's/instantclient//g' )" \ && ORACLE_VERSION_MAJOR="$( echo "${ORACLE_HREF}" | grep -Eo 'instantclient[.0-9]+' | sed 's/instantclient//g' )" \
@@ -999,6 +1036,8 @@ RUN set -eux \
&& php-fpm -m | grep -oiE '^xmlwriter$' \ && php-fpm -m | grep -oiE '^xmlwriter$' \
&& php -m | grep -oiE '^xsl$' \ && php -m | grep -oiE '^xsl$' \
&& php-fpm -m | grep -oiE '^xsl$' \ && php-fpm -m | grep -oiE '^xsl$' \
&& php -m | grep -oiE '^yaml$' \
&& php-fpm -m | grep -oiE '^yaml$' \
&& php -m | grep -oiE '^zip$' \ && php -m | grep -oiE '^zip$' \
&& php-fpm -m | grep -oiE '^zip$' \ && php-fpm -m | grep -oiE '^zip$' \
&& true && true

View File

@@ -12,8 +12,10 @@ RUN set -eux \
alien \ alien \
firebird-dev \ firebird-dev \
freetds-dev \ freetds-dev \
ghostscript \
libaio-dev \ libaio-dev \
libbz2-dev \ libbz2-dev \
libc-client-dev \
libcurl4-openssl-dev \ libcurl4-openssl-dev \
libenchant-dev \ libenchant-dev \
libevent-dev \ libevent-dev \
@@ -24,6 +26,7 @@ RUN set -eux \
libib-util \ libib-util \
libicu-dev \ libicu-dev \
libjpeg-dev \ libjpeg-dev \
libkrb5-dev \
libldap2-dev \ libldap2-dev \
libmagickwand-dev \ libmagickwand-dev \
libmcrypt-dev \ libmcrypt-dev \
@@ -46,6 +49,7 @@ RUN set -eux \
libxml2-dev \ libxml2-dev \
libxpm-dev \ libxpm-dev \
libxslt-dev \ libxslt-dev \
libyaml-dev \
libzip-dev \ libzip-dev \
snmp \ snmp \
zlib1g-dev \ zlib1g-dev \
@@ -218,6 +222,29 @@ RUN set -eux \
&& pecl install imagick \ && pecl install imagick \
# Enabling # Enabling
&& docker-php-ext-enable imagick \ && docker-php-ext-enable imagick \
# Generic post-command
&& sed -i'' 's|.*"thread".*| <policy domain="resource" name="thread" value="1"/>|g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS2".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS3".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"EPS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PDF".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"XPS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="delegate".*pattern="gs".*||g' /etc/ImageMagick-6/policy.xml \
\
&& true
# -------------------- Installing PHP Extension: imap --------------------
RUN set -eux \
# Generic pre-command
&& ln -s /usr/lib/x86_64-linux-gnu/libkrb5* /usr/lib/ \
# Installation: Generic
# Type: Built-in extension
# Custom: configure command
&& docker-php-ext-configure imap --with-kerberos --with-imap-ssl --with-imap \
&& docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) imap \
&& true && true
@@ -503,10 +530,9 @@ RUN set -eux \
# -------------------- Installing PHP Extension: snmp -------------------- # -------------------- Installing PHP Extension: snmp --------------------
RUN set -eux \ RUN set -eux \
# Installation: Generic # Installation: Version specific
# Type: Built-in extension # Type: Built-in extension
# Custom: configure command # Installation
&& docker-php-ext-configure snmp --with-openssl-dir \
&& docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) snmp \ && docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) snmp \
&& true && true
@@ -595,7 +621,7 @@ RUN set -eux \
# -------------------- Installing PHP Extension: uploadprogress -------------------- # -------------------- Installing PHP Extension: uploadprogress --------------------
RUN set -eux \ RUN set -eux \
# Installation: Version specific # Installation: Generic
# Type: GIT extension # Type: GIT extension
&& git clone https://github.com/php/pecl-php-uploadprogress /tmp/uploadprogress \ && git clone https://github.com/php/pecl-php-uploadprogress /tmp/uploadprogress \
&& cd /tmp/uploadprogress \ && cd /tmp/uploadprogress \
@@ -639,6 +665,17 @@ RUN set -eux \
&& true && true
# -------------------- Installing PHP Extension: yaml --------------------
RUN set -eux \
# Installation: Generic
# Type: PECL extension
# Default: Pecl command
&& pecl install yaml \
# Enabling
&& docker-php-ext-enable yaml \
&& true
# -------------------- Installing PHP Extension: zip -------------------- # -------------------- Installing PHP Extension: zip --------------------
RUN set -eux \ RUN set -eux \
# Installation: Version specific # Installation: Version specific
@@ -706,8 +743,10 @@ COPY --from=builder /usr/lib/oracle/ /usr/lib/oracle/
RUN set -eux \ RUN set -eux \
&& DEBIAN_FRONTEND=noninteractive apt-get update -qq \ && DEBIAN_FRONTEND=noninteractive apt-get update -qq \
&& DEBIAN_FRONTEND=noninteractive apt-get install -qq -y --no-install-recommends --no-install-suggests \ && DEBIAN_FRONTEND=noninteractive apt-get install -qq -y --no-install-recommends --no-install-suggests \
ghostscript \
libaio1 \ libaio1 \
libaspell15 \ libaspell15 \
libc-client2007e \
libenchant1c2a \ libenchant1c2a \
libfbclient2 \ libfbclient2 \
libffi6 \ libffi6 \
@@ -730,6 +769,7 @@ RUN set -eux \
libwebp6 \ libwebp6 \
libxpm4 \ libxpm4 \
libxslt1.1 \ libxslt1.1 \
libyaml-0-2 \
libzip4 \ libzip4 \
snmp \ snmp \
ca-certificates \ ca-certificates \
@@ -742,6 +782,17 @@ RUN set -eux \
### Post Install ### Post Install
### ###
RUN set -eux \ RUN set -eux \
# ---------- imagick ----------
&& sed -i'' 's|.*"thread".*| <policy domain="resource" name="thread" value="1"/>|g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS2".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS3".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"EPS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PDF".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"XPS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="delegate".*pattern="gs".*||g' /etc/ImageMagick-6/policy.xml \
\
# ---------- oci8 ---------- # ---------- oci8 ----------
&& ORACLE_HREF="$( curl -sS https://yum.oracle.com/repo/OracleLinux/OL7/oracle/instantclient/x86_64/ | tac | tac | grep -Eo 'href="getPackage/oracle-instantclient.+basiclite.+rpm"' | tail -1 )" \ && ORACLE_HREF="$( curl -sS https://yum.oracle.com/repo/OracleLinux/OL7/oracle/instantclient/x86_64/ | tac | tac | grep -Eo 'href="getPackage/oracle-instantclient.+basiclite.+rpm"' | tail -1 )" \
&& ORACLE_VERSION_MAJOR="$( echo "${ORACLE_HREF}" | grep -Eo 'instantclient[.0-9]+' | sed 's/instantclient//g' )" \ && ORACLE_VERSION_MAJOR="$( echo "${ORACLE_HREF}" | grep -Eo 'instantclient[.0-9]+' | sed 's/instantclient//g' )" \
@@ -814,6 +865,8 @@ RUN set -eux \
&& php-fpm -m | grep -oiE '^igbinary$' \ && php-fpm -m | grep -oiE '^igbinary$' \
&& php -m | grep -oiE '^imagick$' \ && php -m | grep -oiE '^imagick$' \
&& php-fpm -m | grep -oiE '^imagick$' \ && php-fpm -m | grep -oiE '^imagick$' \
&& php -m | grep -oiE '^imap$' \
&& php-fpm -m | grep -oiE '^imap$' \
&& php -m | grep -oiE '^intl$' \ && php -m | grep -oiE '^intl$' \
&& php-fpm -m | grep -oiE '^intl$' \ && php-fpm -m | grep -oiE '^intl$' \
&& php -m | grep -oiE '^json$' \ && php -m | grep -oiE '^json$' \
@@ -929,6 +982,8 @@ RUN set -eux \
&& php-fpm -m | grep -oiE '^xmlwriter$' \ && php-fpm -m | grep -oiE '^xmlwriter$' \
&& php -m | grep -oiE '^xsl$' \ && php -m | grep -oiE '^xsl$' \
&& php-fpm -m | grep -oiE '^xsl$' \ && php-fpm -m | grep -oiE '^xsl$' \
&& php -m | grep -oiE '^yaml$' \
&& php-fpm -m | grep -oiE '^yaml$' \
&& php -m | grep -oiE '^zip$' \ && php -m | grep -oiE '^zip$' \
&& php-fpm -m | grep -oiE '^zip$' \ && php-fpm -m | grep -oiE '^zip$' \
&& true && true

View File

@@ -179,48 +179,6 @@ RUN set -eux \
&& true && true
# -------------------- Installing PHP Extension: mongodb --------------------
RUN set -eux \
# Installation: Version specific
# Type: GIT extension
&& git clone https://github.com/mongodb/mongo-php-driver /tmp/mongodb \
&& cd /tmp/mongodb \
# Custom: Install command
&& git checkout v1.6 \
&& git submodule update --init \
# FIXME: This is a work-around to mitigate compile error with PHP 8.0
&& rgrep -I 'TSRMLS_C' | cut -d':' -f1 | sort -u | xargs -n1 sed -i'' 's/TSRMLS_C)/)/g' \
&& rgrep -I 'TSRMLS_C' | cut -d':' -f1 | sort -u | xargs -n1 sed -i'' 's/TSRMLS_C,/,/g' \
&& rgrep -I 'TSRMLS_CC' | cut -d':' -f1 | sort -u | xargs -n1 sed -i'' 's/TSRMLS_CC)/)/g' \
&& rgrep -I 'TSRMLS_CC' | cut -d':' -f1 | sort -u | xargs -n1 sed -i'' 's/TSRMLS_CC,/,/g' \
&& rgrep -I 'TSRMLS_DC' | cut -d':' -f1 | sort -u | xargs -n1 sed -i'' 's/TSRMLS_DC)/)/g' \
&& rgrep -I 'TSRMLS_DC' | cut -d':' -f1 | sort -u | xargs -n1 sed -i'' 's/TSRMLS_DC,/,/g' \
&& sed -i'' 's/TSRMLS_SET_CTX(ctx);/\/\/TSRMLS_SET_CTX(ctx);/g' php_phongo.c \
&& sed -i'' 's/TSRMLS_FETCH();/\/\/TSRMLS_FETCH();/g' php_phongo.c \
&& sed -i'' 's/TSRMLS_FETCH();/\/\/TSRMLS_FETCH();/g' phongo_compat.h \
&& sed -i'' 's/TSRMLS_FETCH();/\/\/TSRMLS_FETCH();/g' src/bson.c \
\
&& sed -i'' 's/php_phongo_handler_binary.compare_objects.*//g' src/BSON/Binary.c \
&& sed -i'' 's/php_phongo_handler_dbpointer.compare_objects.*//g' src/BSON/DBPointer.c \
&& sed -i'' 's/php_phongo_handler_int64.compare_objects.*//g' src/BSON/Int64.c \
&& sed -i'' 's/php_phongo_handler_javascript.compare_objects.*//g' src/BSON/Javascript.c \
&& sed -i'' 's/php_phongo_handler_objectid.compare_objects.*//g' src/BSON/ObjectId.c \
&& sed -i'' 's/php_phongo_handler_symbol.compare_objects.*//g' src/BSON/Symbol.c \
&& sed -i'' 's/php_phongo_handler_timestamp.compare_objects.*//g' src/BSON/Timestamp.c \
&& sed -i'' 's/php_phongo_handler_regex.compare_objects.*//g' src/BSON/Regex.c \
&& sed -i'' 's/php_phongo_handler_server.compare_objects.*//g' src/MongoDB/Server.c \
&& sed -i'' 's/php_phongo_handler_utcdatetime.compare_objects.*//g' src/BSON/UTCDateTime.c \
\
&& phpize \
&& ./configure --enable-mongodb \
&& make all \
&& make install \
\
# Enabling
&& docker-php-ext-enable mongodb \
&& true
# -------------------- Installing PHP Extension: mysqli -------------------- # -------------------- Installing PHP Extension: mysqli --------------------
RUN set -eux \ RUN set -eux \
# Installation: Generic # Installation: Generic
@@ -365,6 +323,10 @@ RUN set -eux \
&& git checkout $(git for-each-ref --format='%(refname)' refs/tags | grep -E 'tags/[.0-9]+$' | sed 's|.*tags/||g' | sort -V | tail -1) \ && git checkout $(git for-each-ref --format='%(refname)' refs/tags | grep -E 'tags/[.0-9]+$' | sed 's|.*tags/||g' | sort -V | tail -1) \
# Custom: Install command # Custom: Install command
&& sed -i'' 's/, ZSTR_LEN(ra->algorithm)//g' redis_array_impl.c \ && sed -i'' 's/, ZSTR_LEN(ra->algorithm)//g' redis_array_impl.c \
&& sed -i'' 's|.*sctx->cb\.no_separation.*||g' library.c \
&& sed -i'' 's|.*sctx->cb\.no_separation.*||g' redis_array_impl.c \
&& sed -i'' 's|.*sctx->cb\.no_separation.*||g' cluster_library.c \
&& sed -i'' 's|.*->no_separation.*||g' redis_array_impl.c \
&& phpize \ && phpize \
&& ./configure --enable-redis \ && ./configure --enable-redis \
&& make -j$(getconf _NPROCESSORS_ONLN) \ && make -j$(getconf _NPROCESSORS_ONLN) \
@@ -451,39 +413,6 @@ RUN set -eux \
&& true && true
# -------------------- Installing PHP Extension: uploadprogress --------------------
RUN set -eux \
# Installation: Version specific
# Type: GIT extension
&& git clone https://github.com/php/pecl-php-uploadprogress /tmp/uploadprogress \
&& cd /tmp/uploadprogress \
# Custom: Install command
&& true \
# FIXME: This is a work-around to mitigate compile error with PHP 8.0
&& rgrep -I 'TSRMLS_CC' | cut -d':' -f1 | sort -u | xargs -n1 sed -i'' 's/TSRMLS_CC)/)/g' || true \
&& rgrep -I 'TSRMLS_CC' | cut -d':' -f1 | sort -u | xargs -n1 sed -i'' 's/TSRMLS_CC,/,/g' || true \
&& rgrep -I 'TSRMLS_DC' | cut -d':' -f1 | sort -u | xargs -n1 sed -i'' 's/TSRMLS_DC)/)/g' || true \
&& rgrep -I 'TSRMLS_DC' | cut -d':' -f1 | sort -u | xargs -n1 sed -i'' 's/TSRMLS_DC,/,/g' || true \
&& phpize \
&& ./configure --enable-uploadprogress \
&& make \
&& make install \
\
# Enabling
&& docker-php-ext-enable uploadprogress \
&& true
# -------------------- Installing PHP Extension: xmlrpc --------------------
RUN set -eux \
# Installation: Generic
# Type: Built-in extension
# Custom: configure command
&& docker-php-ext-configure xmlrpc --with-libxml-dir=/usr --with-iconv-dir=/usr \
&& docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) xmlrpc \
&& true
# -------------------- Installing PHP Extension: xsl -------------------- # -------------------- Installing PHP Extension: xsl --------------------
RUN set -eux \ RUN set -eux \
# Installation: Generic # Installation: Generic
@@ -663,8 +592,6 @@ RUN set -eux \
&& php-fpm -m | grep -oiE '^mbstring$' \ && php-fpm -m | grep -oiE '^mbstring$' \
&& php -m | grep -oiE '^memcached$' \ && php -m | grep -oiE '^memcached$' \
&& php-fpm -m | grep -oiE '^memcached$' \ && php-fpm -m | grep -oiE '^memcached$' \
&& php -m | grep -oiE '^mongodb$' \
&& php-fpm -m | grep -oiE '^mongodb$' \
&& php -m | grep -oiE '^mysqli$' \ && php -m | grep -oiE '^mysqli$' \
&& php-fpm -m | grep -oiE '^mysqli$' \ && php-fpm -m | grep -oiE '^mysqli$' \
&& php -m | grep -oiE '^mysqlnd$' \ && php -m | grep -oiE '^mysqlnd$' \
@@ -732,14 +659,10 @@ RUN set -eux \
&& php-fpm -m | grep -oiE '^tidy$' \ && php-fpm -m | grep -oiE '^tidy$' \
&& php -m | grep -oiE '^tokenizer$' \ && php -m | grep -oiE '^tokenizer$' \
&& php-fpm -m | grep -oiE '^tokenizer$' \ && php-fpm -m | grep -oiE '^tokenizer$' \
&& php -m | grep -oiE '^uploadprogress$' \
&& php-fpm -m | grep -oiE '^uploadprogress$' \
&& php -m | grep -oiE '^xml$' \ && php -m | grep -oiE '^xml$' \
&& php-fpm -m | grep -oiE '^xml$' \ && php-fpm -m | grep -oiE '^xml$' \
&& php -m | grep -oiE '^xmlreader$' \ && php -m | grep -oiE '^xmlreader$' \
&& php-fpm -m | grep -oiE '^xmlreader$' \ && php-fpm -m | grep -oiE '^xmlreader$' \
&& php -m | grep -oiE '^xmlrpc$' \
&& php-fpm -m | grep -oiE '^xmlrpc$' \
&& php -m | grep -oiE '^xmlwriter$' \ && php -m | grep -oiE '^xmlwriter$' \
&& php-fpm -m | grep -oiE '^xmlwriter$' \ && php-fpm -m | grep -oiE '^xmlwriter$' \
&& php -m | grep -oiE '^xsl$' \ && php -m | grep -oiE '^xsl$' \

View File

@@ -19,7 +19,7 @@ execute_custom_scripts() {
if [ ! -d "${script_dir}" ]; then if [ ! -d "${script_dir}" ]; then
run "mkdir -p ${script_dir}" "${debug}" run "mkdir -p ${script_dir}" "${debug}"
fi fi
script_files="$( find -L "${script_dir}" -type f -iname '*.sh' )" script_files="$( find -L "${script_dir}" -type f -iname '*.sh' | sort -n )"
# loop over them line by line # loop over them line by line
IFS=' IFS='

View File

@@ -74,6 +74,7 @@ RUN set -eux \
git-svn \ git-svn \
ghostscript \ ghostscript \
graphviz \ graphviz \
gsfonts \
hostname \ hostname \
htop \ htop \
imagemagick \ imagemagick \
@@ -89,6 +90,8 @@ RUN set -eux \
mongodb-org-tools \ mongodb-org-tools \
moreutils \ moreutils \
mysql-client \ mysql-client \
mupdf \
mupdf-tools \
nano \ nano \
net-tools \ net-tools \
netcat \ netcat \
@@ -321,6 +324,12 @@ RUN set -eux \
# -------------------- mdlint -------------------- # -------------------- mdlint --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force mdlint' devilbox \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force mdlint' devilbox \
\ \
# -------------------- sass --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force sass' devilbox \
\
# -------------------- stylelint --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force stylelint' devilbox \
\
# -------------------- vue_cli -------------------- # -------------------- vue_cli --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force @vue/cli' devilbox \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force @vue/cli' devilbox \
\ \
@@ -354,18 +363,15 @@ RUN set -eux \
# -------------------- mixlib_config -------------------- # -------------------- mixlib_config --------------------
&& gem install mixlib-config -v 2.2.4 \ && gem install mixlib-config -v 2.2.4 \
\ \
# -------------------- ffi --------------------
&& gem install ffi -v 1.12.2 \
\
# -------------------- rb_inotify -------------------- # -------------------- rb_inotify --------------------
&& gem install rb-inotify -v 0.9.10 \ && gem install rb-inotify -v 0.9.10 \
\ \
# -------------------- mdl -------------------- # -------------------- mdl --------------------
&& gem install mdl -v 0.5.0 \ && gem install mdl -v 0.5.0 \
\ \
# -------------------- scss_lint --------------------
&& gem install scss_lint -v 0.57.1 \
\
# -------------------- sass --------------------
&& gem install sass \
\
\ \
&& rm -rf /root/.gem \ && rm -rf /root/.gem \
&& rm -rf /tmp/* \ && rm -rf /tmp/* \
@@ -381,13 +387,13 @@ RUN set -eux \
### ###
RUN set -eux \ RUN set -eux \
# -------------------- ansible -------------------- # -------------------- ansible --------------------
&& pip install --no-cache-dir --force-reinstall ansible \ && pip install --no-cache-dir --force-reinstall ansible || true \
\ \
# -------------------- yamllint -------------------- # -------------------- yamllint --------------------
&& pip install --no-cache-dir --force-reinstall yamllint \ && pip install --no-cache-dir --force-reinstall yamllint || true \
\ \
# -------------------- yq -------------------- # -------------------- yq --------------------
&& pip install --no-cache-dir --force-reinstall yq \ && pip install --no-cache-dir --force-reinstall yq || true \
\ \
\ \
&& rm -rf /root/.cache/pip \ && rm -rf /root/.cache/pip \
@@ -440,37 +446,38 @@ RUN set -eux \
RUN set -eux \ RUN set -eux \
# -------------------- Software -------------------- # -------------------- Software --------------------
&& su -c '. /opt/nvm/nvm.sh; nvm --version' devilbox | grep -E '^[.0-9]+' \ && su -c '. /opt/nvm/nvm.sh; nvm --version' devilbox | grep -E '^[0-9][.0-9]+' \
&& regex-grep --version | grep -E '[.0-9]+' \ && regex-grep --version | grep -E '[0-9][.0-9]+' \
&& git-flow version | grep -E '[.0-9]+' \ && git-flow version | grep -E '[0-9][.0-9]+' \
&& linkcheck --version | grep -E '^linkcheck\sv[.0-9]+' \ && linkcheck --version | grep -E '^linkcheck\sv[0-9][.0-9]+' \
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[.0-9]+' \ && su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[0-9][.0-9]+' \
&& mysqldump-secure --version | grep -E 'Version:\s*[.0-9]+' \ && mysqldump-secure --version | grep -E 'Version:\s*[0-9][.0-9]+' \
&& phpcs --version | grep -E 'version [.0-9]+' \ && phpcs --version | grep -E 'version [0-9][.0-9]+' \
&& phpcbf --version | grep -E 'version [.0-9]+' \ && phpcbf --version | grep -E 'version [0-9][.0-9]+' \
&& wkhtmltopdf --version | grep -E "^wkhtmltopdf [.0-9]+\s+\(.+patched.+\)" \ && wkhtmltopdf --version | grep -E "^wkhtmltopdf [0-9][.0-9]+\s+\(.+patched.+\)" \
\ \
# -------------------- Composer -------------------- # -------------------- Composer --------------------
\ \
# -------------------- PIP -------------------- # -------------------- PIP --------------------
&& ansible --version | grep -E '^ansible [.0-9]+$' \ && ansible --version | grep -E '^ansible [0-9][.0-9]+$' \
&& yamllint --version 2>&1 | grep -E '[.0-9]+' \ && yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' \
&& yq --version 2>&1 | grep -E '^yq\s+[.0-9]+$' \ && yq --version 2>&1 | grep -E '^yq\s+[0-9][.0-9]+$' \
\ \
# -------------------- NPM -------------------- # -------------------- NPM --------------------
&& ng version 2>&1 | grep -iE 'Angular CLI:\s*[.0-9]+' \ && ng version 2>&1 | grep -iE 'Angular CLI:\s*[0-9][.0-9]+' \
&& eslint -v | grep -E '[.0-9]+' \ && eslint -v | grep -E '[0-9][.0-9]+' \
&& grunt --version | grep -E '[.0-9]+' \ && grunt --version | grep -E '[0-9][.0-9]+' \
&& gulp --version | grep -E '[.0-9]+' \ && gulp --version | grep -E '[0-9][.0-9]+' \
&& jsonlint --version | grep -E '[.0-9]+' \ && jsonlint --version | grep -E '[0-9][.0-9]+' \
&& pm2 --no-daemon --version | grep -E '[.0-9]+' \ && pm2 --no-daemon --version | tail -1 | grep -E '[0-9][.0-9]+' \
&& mdlint --version | grep -E '[.0-9]+' \ && mdlint --version | grep -E '[0-9][.0-9]+' \
&& vue --version | grep -E '[.0-9]+' \ && sass --version | grep -E '[0-9][.0-9]+' \
&& webpack --version | grep -E '[.0-9]+' \ && stylelint --version | grep -E '[0-9][.0-9]+' \
&& vue --version | grep -E '[0-9][.0-9]+' \
&& webpack --version | grep -E '[0-9][.0-9]+' \
\ \
# -------------------- GEM -------------------- # -------------------- GEM --------------------
&& mdl --version | grep -E '[.0-9]+' \ && mdl --version | grep -E '[0-9][.0-9]+' \
&& sass --version | grep -E '[.0-9]+' \
\ \
# -------------------- Cleanup -------------------- # -------------------- Cleanup --------------------
&& rm -rf /home/devilbox/.cache/ \ && rm -rf /home/devilbox/.cache/ \

View File

@@ -74,6 +74,7 @@ RUN set -eux \
git-svn \ git-svn \
ghostscript \ ghostscript \
graphviz \ graphviz \
gsfonts \
hostname \ hostname \
htop \ htop \
imagemagick \ imagemagick \
@@ -89,6 +90,8 @@ RUN set -eux \
mongodb-org-tools \ mongodb-org-tools \
moreutils \ moreutils \
mysql-client \ mysql-client \
mupdf \
mupdf-tools \
nano \ nano \
net-tools \ net-tools \
netcat \ netcat \
@@ -175,7 +178,7 @@ RUN set -eux \
&& git checkout 7.4.0 \ && git checkout 7.4.0 \
\ \
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush7 \ && chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush7 \
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush7 && composer install --no-interaction --no-progress --no-dev' \ && su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush7 && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install --no-interaction --no-progress --no-dev' \
&& ln -s /usr/local/src/drush7/drush /usr/local/bin/drush7 \ && ln -s /usr/local/src/drush7/drush /usr/local/bin/drush7 \
&& rm -rf /usr/local/src/drush7/.git \ && rm -rf /usr/local/src/drush7/.git \
&& rm -rf /usr/local/src/drush7/docs \ && rm -rf /usr/local/src/drush7/docs \
@@ -334,11 +337,11 @@ RUN set -eux \
### ###
RUN set -eux \ RUN set -eux \
# -------------------- codeception -------------------- # -------------------- codeception --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require codeception/codeception \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require codeception/codeception \
&& ln -s /usr/local/src/composer/vendor/codeception/codeception/codecept /usr/local/bin/ \ && ln -s /usr/local/src/composer/vendor/codeception/codeception/codecept /usr/local/bin/ \
\ \
# -------------------- prestissimo -------------------- # -------------------- prestissimo --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require hirak/prestissimo \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require hirak/prestissimo \
\ \
\ \
&& rm -rf /tmp/* \ && rm -rf /tmp/* \
@@ -377,6 +380,12 @@ RUN set -eux \
# -------------------- mdlint -------------------- # -------------------- mdlint --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force mdlint' devilbox \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force mdlint' devilbox \
\ \
# -------------------- sass --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force sass' devilbox \
\
# -------------------- stylelint --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force stylelint' devilbox \
\
# -------------------- vue_cli -------------------- # -------------------- vue_cli --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force @vue/cli' devilbox \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force @vue/cli' devilbox \
\ \
@@ -410,18 +419,15 @@ RUN set -eux \
# -------------------- mixlib_config -------------------- # -------------------- mixlib_config --------------------
&& gem install mixlib-config -v 2.2.4 \ && gem install mixlib-config -v 2.2.4 \
\ \
# -------------------- ffi --------------------
&& gem install ffi -v 1.12.2 \
\
# -------------------- rb_inotify -------------------- # -------------------- rb_inotify --------------------
&& gem install rb-inotify -v 0.9.10 \ && gem install rb-inotify -v 0.9.10 \
\ \
# -------------------- mdl -------------------- # -------------------- mdl --------------------
&& gem install mdl -v 0.5.0 \ && gem install mdl -v 0.5.0 \
\ \
# -------------------- scss_lint --------------------
&& gem install scss_lint -v 0.57.1 \
\
# -------------------- sass --------------------
&& gem install sass \
\
\ \
&& rm -rf /root/.gem \ && rm -rf /root/.gem \
&& rm -rf /tmp/* \ && rm -rf /tmp/* \
@@ -437,13 +443,13 @@ RUN set -eux \
### ###
RUN set -eux \ RUN set -eux \
# -------------------- ansible -------------------- # -------------------- ansible --------------------
&& pip install --no-cache-dir --force-reinstall ansible \ && pip install --no-cache-dir --force-reinstall ansible || true \
\ \
# -------------------- yamllint -------------------- # -------------------- yamllint --------------------
&& pip install --no-cache-dir --force-reinstall yamllint \ && pip install --no-cache-dir --force-reinstall yamllint || true \
\ \
# -------------------- yq -------------------- # -------------------- yq --------------------
&& pip install --no-cache-dir --force-reinstall yq \ && pip install --no-cache-dir --force-reinstall yq || true \
\ \
\ \
&& rm -rf /root/.cache/pip \ && rm -rf /root/.cache/pip \
@@ -496,45 +502,46 @@ RUN set -eux \
RUN set -eux \ RUN set -eux \
# -------------------- Software -------------------- # -------------------- Software --------------------
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \ && composer --version 2>/dev/null | grep -E 'version\s*[0-9][.0-9]+' \
&& su -c '. /opt/nvm/nvm.sh; nvm --version' devilbox | grep -E '^[.0-9]+' \ && su -c '. /opt/nvm/nvm.sh; nvm --version' devilbox | grep -E '^[0-9][.0-9]+' \
&& regex-grep --version | grep -E '[.0-9]+' \ && regex-grep --version | grep -E '[0-9][.0-9]+' \
&& drush7 --version | grep -E '7[.0-9]+\s*$' \ && drush7 --version | grep -E '7[.0-9]+\s*$' \
&& git-flow version | grep -E '[.0-9]+' \ && git-flow version | grep -E '[0-9][.0-9]+' \
&& linkcheck --version | grep -E '^linkcheck\sv[.0-9]+' \ && linkcheck --version | grep -E '^linkcheck\sv[0-9][.0-9]+' \
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[.0-9]+' \ && su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[0-9][.0-9]+' \
&& mysqldump-secure --version | grep -E 'Version:\s*[.0-9]+' \ && mysqldump-secure --version | grep -E 'Version:\s*[0-9][.0-9]+' \
&& phalcon commands | grep -E '[.0-9]+' \ && phalcon commands | grep -E '[0-9][.0-9]+' \
&& phpcs --version | grep -E 'version [.0-9]+' \ && phpcs --version | grep -E 'version [0-9][.0-9]+' \
&& phpcbf --version | grep -E 'version [.0-9]+' \ && phpcbf --version | grep -E 'version [0-9][.0-9]+' \
&& php-cs-fixer --version 2>&1 | grep -E 'Fixer\s+(version\s*)?[-_.0-9]+\s+' \ && php-cs-fixer --version 2>&1 | grep -E 'Fixer\s+(version\s*)?[-_.0-9]+\s+' \
&& phpmd --version | grep -E '^PHPMD [.0-9]+' \ && phpmd --version | grep -E '^PHPMD [0-9][.0-9]+' \
&& phpunit --version | grep -iE '^PHPUnit\s[.0-9]+' \ && phpunit --version | grep -iE '^PHPUnit\s[0-9][.0-9]+' \
&& wkhtmltopdf --version | grep -E "^wkhtmltopdf [.0-9]+\s+\(.+patched.+\)" \ && wkhtmltopdf --version | grep -E "^wkhtmltopdf [0-9][.0-9]+\s+\(.+patched.+\)" \
&& wp --allow-root --version | grep -E '[.0-9]+' \ && wp --allow-root --version | grep -E '[0-9][.0-9]+' \
\ \
# -------------------- Composer -------------------- # -------------------- Composer --------------------
&& codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[.0-9]+$' \ && codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[0-9][.0-9]+$' \
\ \
# -------------------- PIP -------------------- # -------------------- PIP --------------------
&& ansible --version | grep -E '^ansible [.0-9]+$' \ && ansible --version | grep -E '^ansible [0-9][.0-9]+$' \
&& yamllint --version 2>&1 | grep -E '[.0-9]+' \ && yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' \
&& yq --version 2>&1 | grep -E '^yq\s+[.0-9]+$' \ && yq --version 2>&1 | grep -E '^yq\s+[0-9][.0-9]+$' \
\ \
# -------------------- NPM -------------------- # -------------------- NPM --------------------
&& ng version 2>&1 | grep -iE 'Angular CLI:\s*[.0-9]+' \ && ng version 2>&1 | grep -iE 'Angular CLI:\s*[0-9][.0-9]+' \
&& eslint -v | grep -E '[.0-9]+' \ && eslint -v | grep -E '[0-9][.0-9]+' \
&& grunt --version | grep -E '[.0-9]+' \ && grunt --version | grep -E '[0-9][.0-9]+' \
&& gulp --version | grep -E '[.0-9]+' \ && gulp --version | grep -E '[0-9][.0-9]+' \
&& jsonlint --version | grep -E '[.0-9]+' \ && jsonlint --version | grep -E '[0-9][.0-9]+' \
&& pm2 --no-daemon --version | grep -E '[.0-9]+' \ && pm2 --no-daemon --version | tail -1 | grep -E '[0-9][.0-9]+' \
&& mdlint --version | grep -E '[.0-9]+' \ && mdlint --version | grep -E '[0-9][.0-9]+' \
&& vue --version | grep -E '[.0-9]+' \ && sass --version | grep -E '[0-9][.0-9]+' \
&& webpack --version | grep -E '[.0-9]+' \ && stylelint --version | grep -E '[0-9][.0-9]+' \
&& vue --version | grep -E '[0-9][.0-9]+' \
&& webpack --version | grep -E '[0-9][.0-9]+' \
\ \
# -------------------- GEM -------------------- # -------------------- GEM --------------------
&& mdl --version | grep -E '[.0-9]+' \ && mdl --version | grep -E '[0-9][.0-9]+' \
&& sass --version | grep -E '[.0-9]+' \
\ \
# -------------------- Cleanup -------------------- # -------------------- Cleanup --------------------
&& rm -rf /home/devilbox/.cache/ \ && rm -rf /home/devilbox/.cache/ \

View File

@@ -74,6 +74,7 @@ RUN set -eux \
git-svn \ git-svn \
ghostscript \ ghostscript \
graphviz \ graphviz \
gsfonts \
hostname \ hostname \
htop \ htop \
imagemagick \ imagemagick \
@@ -89,6 +90,8 @@ RUN set -eux \
mongodb-org-tools \ mongodb-org-tools \
moreutils \ moreutils \
mysql-client \ mysql-client \
mupdf \
mupdf-tools \
nano \ nano \
net-tools \ net-tools \
netcat \ netcat \
@@ -179,7 +182,7 @@ RUN set -eux \
&& git checkout 7.4.0 \ && git checkout 7.4.0 \
\ \
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush7 \ && chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush7 \
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush7 && composer install --no-interaction --no-progress --no-dev' \ && su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush7 && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install --no-interaction --no-progress --no-dev' \
&& ln -s /usr/local/src/drush7/drush /usr/local/bin/drush7 \ && ln -s /usr/local/src/drush7/drush /usr/local/bin/drush7 \
&& rm -rf /usr/local/src/drush7/.git \ && rm -rf /usr/local/src/drush7/.git \
&& rm -rf /usr/local/src/drush7/docs \ && rm -rf /usr/local/src/drush7/docs \
@@ -193,7 +196,7 @@ RUN set -eux \
&& git checkout $( git for-each-ref --format='%(*creatordate:raw)%(creatordate:raw) %(refname)' refs/tags | sort -n | grep -E 'tags/8[.0-9]+$' | tail -1 | sed 's|.*/||g' ) \ && git checkout $( git for-each-ref --format='%(*creatordate:raw)%(creatordate:raw) %(refname)' refs/tags | sort -n | grep -E 'tags/8[.0-9]+$' | tail -1 | sed 's|.*/||g' ) \
\ \
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush8 \ && chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush8 \
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush8 && composer install --no-interaction --no-progress --no-dev' \ && su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush8 && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install --no-interaction --no-progress --no-dev' \
&& ln -s /usr/local/src/drush8/drush /usr/local/bin/drush8 \ && ln -s /usr/local/src/drush8/drush /usr/local/bin/drush8 \
&& rm -rf /usr/local/src/drush8/.git \ && rm -rf /usr/local/src/drush8/.git \
&& rm -rf /usr/local/src/drush8/docs \ && rm -rf /usr/local/src/drush8/docs \
@@ -214,7 +217,7 @@ RUN set -eux \
&& git checkout v1.3.7 \ && git checkout v1.3.7 \
\ \
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/laravel-installer \ && chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/laravel-installer \
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/laravel-installer && composer install --no-interaction --no-progress --no-dev' \ && su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/laravel-installer && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install --no-interaction --no-progress --no-dev' \
&& rm -rf /usr/local/src/laravel-installer/laravel/.git \ && rm -rf /usr/local/src/laravel-installer/laravel/.git \
\ \
&& ln -s /usr/local/src/laravel-installer/laravel /usr/local/bin/laravel \ && ln -s /usr/local/src/laravel-installer/laravel /usr/local/bin/laravel \
@@ -368,11 +371,11 @@ RUN set -eux \
### ###
RUN set -eux \ RUN set -eux \
# -------------------- codeception -------------------- # -------------------- codeception --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require codeception/codeception \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require codeception/codeception \
&& ln -s /usr/local/src/composer/vendor/codeception/codeception/codecept /usr/local/bin/ \ && ln -s /usr/local/src/composer/vendor/codeception/codeception/codecept /usr/local/bin/ \
\ \
# -------------------- prestissimo -------------------- # -------------------- prestissimo --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require hirak/prestissimo \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require hirak/prestissimo \
\ \
\ \
&& rm -rf /tmp/* \ && rm -rf /tmp/* \
@@ -411,6 +414,12 @@ RUN set -eux \
# -------------------- mdlint -------------------- # -------------------- mdlint --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force mdlint' devilbox \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force mdlint' devilbox \
\ \
# -------------------- sass --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force sass' devilbox \
\
# -------------------- stylelint --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force stylelint' devilbox \
\
# -------------------- vue_cli -------------------- # -------------------- vue_cli --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force @vue/cli' devilbox \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force @vue/cli' devilbox \
\ \
@@ -444,18 +453,15 @@ RUN set -eux \
# -------------------- mixlib_config -------------------- # -------------------- mixlib_config --------------------
&& gem install mixlib-config -v 2.2.4 \ && gem install mixlib-config -v 2.2.4 \
\ \
# -------------------- ffi --------------------
&& gem install ffi -v 1.12.2 \
\
# -------------------- rb_inotify -------------------- # -------------------- rb_inotify --------------------
&& gem install rb-inotify -v 0.9.10 \ && gem install rb-inotify -v 0.9.10 \
\ \
# -------------------- mdl -------------------- # -------------------- mdl --------------------
&& gem install mdl -v 0.5.0 \ && gem install mdl -v 0.5.0 \
\ \
# -------------------- scss_lint --------------------
&& gem install scss_lint -v 0.57.1 \
\
# -------------------- sass --------------------
&& gem install sass \
\
\ \
&& rm -rf /root/.gem \ && rm -rf /root/.gem \
&& rm -rf /tmp/* \ && rm -rf /tmp/* \
@@ -471,13 +477,13 @@ RUN set -eux \
### ###
RUN set -eux \ RUN set -eux \
# -------------------- ansible -------------------- # -------------------- ansible --------------------
&& pip install --no-cache-dir --force-reinstall ansible \ && pip install --no-cache-dir --force-reinstall ansible || true \
\ \
# -------------------- yamllint -------------------- # -------------------- yamllint --------------------
&& pip install --no-cache-dir --force-reinstall yamllint \ && pip install --no-cache-dir --force-reinstall yamllint || true \
\ \
# -------------------- yq -------------------- # -------------------- yq --------------------
&& pip install --no-cache-dir --force-reinstall yq \ && pip install --no-cache-dir --force-reinstall yq || true \
\ \
\ \
&& rm -rf /root/.cache/pip \ && rm -rf /root/.cache/pip \
@@ -530,49 +536,50 @@ RUN set -eux \
RUN set -eux \ RUN set -eux \
# -------------------- Software -------------------- # -------------------- Software --------------------
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \ && composer --version 2>/dev/null | grep -E 'version\s*[0-9][.0-9]+' \
&& su -c '. /opt/nvm/nvm.sh; nvm --version' devilbox | grep -E '^[.0-9]+' \ && su -c '. /opt/nvm/nvm.sh; nvm --version' devilbox | grep -E '^[0-9][.0-9]+' \
&& regex-grep --version | grep -E '[.0-9]+' \ && regex-grep --version | grep -E '[0-9][.0-9]+' \
&& dep --version 2>/dev/null | grep -Ei 'deployer\s*(version\s*)?[.0-9]+' \ && dep --version 2>/dev/null | grep -Ei 'deployer\s*(version\s*)?[0-9][.0-9]+' \
&& drush7 --version | grep -E '7[.0-9]+\s*$' \ && drush7 --version | grep -E '7[.0-9]+\s*$' \
&& drush8 --version | grep -E '8[.0-9]+\s*$' \ && drush8 --version | grep -E '8[.0-9]+\s*$' \
&& git-flow version | grep -E '[.0-9]+' \ && git-flow version | grep -E '[0-9][.0-9]+' \
&& laravel --version | grep -E '(Installer|version)\s*[.0-9]+' \ && laravel --version | grep -E '(Installer|version)\s*[0-9][.0-9]+' \
&& linkcheck --version | grep -E '^linkcheck\sv[.0-9]+' \ && linkcheck --version | grep -E '^linkcheck\sv[0-9][.0-9]+' \
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[.0-9]+' \ && su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[0-9][.0-9]+' \
&& mysqldump-secure --version | grep -E 'Version:\s*[.0-9]+' \ && mysqldump-secure --version | grep -E 'Version:\s*[0-9][.0-9]+' \
&& phalcon commands | grep -E '[.0-9]+' \ && phalcon commands | grep -E '[0-9][.0-9]+' \
&& phpcs --version | grep -E 'version [.0-9]+' \ && phpcs --version | grep -E 'version [0-9][.0-9]+' \
&& phpcbf --version | grep -E 'version [.0-9]+' \ && phpcbf --version | grep -E 'version [0-9][.0-9]+' \
&& php-cs-fixer --version 2>&1 | grep -E 'Fixer\s+(version\s*)?[-_.0-9]+\s+' \ && php-cs-fixer --version 2>&1 | grep -E 'Fixer\s+(version\s*)?[-_.0-9]+\s+' \
&& phpmd --version | grep -E '^PHPMD [.0-9]+' \ && phpmd --version | grep -E '^PHPMD [0-9][.0-9]+' \
&& phpunit --version | grep -iE '^PHPUnit\s[.0-9]+' \ && phpunit --version | grep -iE '^PHPUnit\s[0-9][.0-9]+' \
&& symfony -V | grep -Ei 'version\s*.*v[.0-9]+' \ && symfony -V | grep -Ei 'version\s*.*v[0-9][.0-9]+' \
&& wkhtmltopdf --version | grep -E "^wkhtmltopdf [.0-9]+\s+\(.+patched.+\)" \ && wkhtmltopdf --version | grep -E "^wkhtmltopdf [0-9][.0-9]+\s+\(.+patched.+\)" \
&& wp --allow-root --version | grep -E '[.0-9]+' \ && wp --allow-root --version | grep -E '[0-9][.0-9]+' \
\ \
# -------------------- Composer -------------------- # -------------------- Composer --------------------
&& codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[.0-9]+$' \ && codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[0-9][.0-9]+$' \
\ \
# -------------------- PIP -------------------- # -------------------- PIP --------------------
&& ansible --version | grep -E '^ansible [.0-9]+$' \ && ansible --version | grep -E '^ansible [0-9][.0-9]+$' \
&& yamllint --version 2>&1 | grep -E '[.0-9]+' \ && yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' \
&& yq --version 2>&1 | grep -E '^yq\s+[.0-9]+$' \ && yq --version 2>&1 | grep -E '^yq\s+[0-9][.0-9]+$' \
\ \
# -------------------- NPM -------------------- # -------------------- NPM --------------------
&& ng version 2>&1 | grep -iE 'Angular CLI:\s*[.0-9]+' \ && ng version 2>&1 | grep -iE 'Angular CLI:\s*[0-9][.0-9]+' \
&& eslint -v | grep -E '[.0-9]+' \ && eslint -v | grep -E '[0-9][.0-9]+' \
&& grunt --version | grep -E '[.0-9]+' \ && grunt --version | grep -E '[0-9][.0-9]+' \
&& gulp --version | grep -E '[.0-9]+' \ && gulp --version | grep -E '[0-9][.0-9]+' \
&& jsonlint --version | grep -E '[.0-9]+' \ && jsonlint --version | grep -E '[0-9][.0-9]+' \
&& pm2 --no-daemon --version | grep -E '[.0-9]+' \ && pm2 --no-daemon --version | tail -1 | grep -E '[0-9][.0-9]+' \
&& mdlint --version | grep -E '[.0-9]+' \ && mdlint --version | grep -E '[0-9][.0-9]+' \
&& vue --version | grep -E '[.0-9]+' \ && sass --version | grep -E '[0-9][.0-9]+' \
&& webpack --version | grep -E '[.0-9]+' \ && stylelint --version | grep -E '[0-9][.0-9]+' \
&& vue --version | grep -E '[0-9][.0-9]+' \
&& webpack --version | grep -E '[0-9][.0-9]+' \
\ \
# -------------------- GEM -------------------- # -------------------- GEM --------------------
&& mdl --version | grep -E '[.0-9]+' \ && mdl --version | grep -E '[0-9][.0-9]+' \
&& sass --version | grep -E '[.0-9]+' \
\ \
# -------------------- Cleanup -------------------- # -------------------- Cleanup --------------------
&& rm -rf /home/devilbox/.cache/ \ && rm -rf /home/devilbox/.cache/ \

View File

@@ -74,6 +74,7 @@ RUN set -eux \
git-svn \ git-svn \
ghostscript \ ghostscript \
graphviz \ graphviz \
gsfonts \
hostname \ hostname \
htop \ htop \
imagemagick \ imagemagick \
@@ -89,6 +90,8 @@ RUN set -eux \
mongodb-org-tools \ mongodb-org-tools \
moreutils \ moreutils \
mysql-client \ mysql-client \
mupdf \
mupdf-tools \
nano \ nano \
net-tools \ net-tools \
netcat \ netcat \
@@ -179,7 +182,7 @@ RUN set -eux \
&& git checkout 7.4.0 \ && git checkout 7.4.0 \
\ \
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush7 \ && chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush7 \
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush7 && composer install --no-interaction --no-progress --no-dev' \ && su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush7 && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install --no-interaction --no-progress --no-dev' \
&& ln -s /usr/local/src/drush7/drush /usr/local/bin/drush7 \ && ln -s /usr/local/src/drush7/drush /usr/local/bin/drush7 \
&& rm -rf /usr/local/src/drush7/.git \ && rm -rf /usr/local/src/drush7/.git \
&& rm -rf /usr/local/src/drush7/docs \ && rm -rf /usr/local/src/drush7/docs \
@@ -193,7 +196,7 @@ RUN set -eux \
&& git checkout $( git for-each-ref --format='%(*creatordate:raw)%(creatordate:raw) %(refname)' refs/tags | sort -n | grep -E 'tags/8[.0-9]+$' | tail -1 | sed 's|.*/||g' ) \ && git checkout $( git for-each-ref --format='%(*creatordate:raw)%(creatordate:raw) %(refname)' refs/tags | sort -n | grep -E 'tags/8[.0-9]+$' | tail -1 | sed 's|.*/||g' ) \
\ \
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush8 \ && chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush8 \
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush8 && composer install --no-interaction --no-progress --no-dev' \ && su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush8 && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install --no-interaction --no-progress --no-dev' \
&& ln -s /usr/local/src/drush8/drush /usr/local/bin/drush8 \ && ln -s /usr/local/src/drush8/drush /usr/local/bin/drush8 \
&& rm -rf /usr/local/src/drush8/.git \ && rm -rf /usr/local/src/drush8/.git \
&& rm -rf /usr/local/src/drush8/docs \ && rm -rf /usr/local/src/drush8/docs \
@@ -218,7 +221,7 @@ RUN set -eux \
&& git checkout v2.0.0 \ && git checkout v2.0.0 \
\ \
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/laravel-installer \ && chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/laravel-installer \
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/laravel-installer && composer install --no-interaction --no-progress --no-dev' \ && su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/laravel-installer && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install --no-interaction --no-progress --no-dev' \
&& rm -rf /usr/local/src/laravel-installer/laravel/.git \ && rm -rf /usr/local/src/laravel-installer/laravel/.git \
\ \
&& ln -s /usr/local/src/laravel-installer/laravel /usr/local/bin/laravel \ && ln -s /usr/local/src/laravel-installer/laravel /usr/local/bin/laravel \
@@ -373,23 +376,23 @@ RUN set -eux \
### ###
RUN set -eux \ RUN set -eux \
# -------------------- asgardcms -------------------- # -------------------- asgardcms --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require asgardcms/asgardcms-installer \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require asgardcms/asgardcms-installer \
&& ln -s /usr/local/src/composer/vendor/asgardcms/asgardcms-installer/asgardcms /usr/local/bin/ \ && ln -s /usr/local/src/composer/vendor/asgardcms/asgardcms-installer/asgardcms /usr/local/bin/ \
\ \
# -------------------- codeception -------------------- # -------------------- codeception --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require codeception/codeception \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require codeception/codeception \
&& ln -s /usr/local/src/composer/vendor/codeception/codeception/codecept /usr/local/bin/ \ && ln -s /usr/local/src/composer/vendor/codeception/codeception/codecept /usr/local/bin/ \
\ \
# -------------------- lumen -------------------- # -------------------- lumen --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require laravel/lumen-installer \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require laravel/lumen-installer \
&& ln -s /usr/local/src/composer/vendor/laravel/lumen-installer/lumen /usr/local/bin/ \ && ln -s /usr/local/src/composer/vendor/laravel/lumen-installer/lumen /usr/local/bin/ \
\ \
# -------------------- photon -------------------- # -------------------- photon --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require photoncms/installer \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require photoncms/installer \
&& ln -s /usr/local/src/composer/vendor/photoncms/installer/photon /usr/local/bin/ \ && ln -s /usr/local/src/composer/vendor/photoncms/installer/photon /usr/local/bin/ \
\ \
# -------------------- prestissimo -------------------- # -------------------- prestissimo --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require hirak/prestissimo \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require hirak/prestissimo \
\ \
\ \
&& rm -rf /tmp/* \ && rm -rf /tmp/* \
@@ -428,6 +431,12 @@ RUN set -eux \
# -------------------- mdlint -------------------- # -------------------- mdlint --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force mdlint' devilbox \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force mdlint' devilbox \
\ \
# -------------------- sass --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force sass' devilbox \
\
# -------------------- stylelint --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force stylelint' devilbox \
\
# -------------------- vue_cli -------------------- # -------------------- vue_cli --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force @vue/cli' devilbox \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force @vue/cli' devilbox \
\ \
@@ -461,18 +470,15 @@ RUN set -eux \
# -------------------- mixlib_config -------------------- # -------------------- mixlib_config --------------------
&& gem install mixlib-config -v 2.2.4 \ && gem install mixlib-config -v 2.2.4 \
\ \
# -------------------- ffi --------------------
&& gem install ffi -v 1.12.2 \
\
# -------------------- rb_inotify -------------------- # -------------------- rb_inotify --------------------
&& gem install rb-inotify -v 0.9.10 \ && gem install rb-inotify -v 0.9.10 \
\ \
# -------------------- mdl -------------------- # -------------------- mdl --------------------
&& gem install mdl -v 0.5.0 \ && gem install mdl -v 0.5.0 \
\ \
# -------------------- scss_lint --------------------
&& gem install scss_lint -v 0.57.1 \
\
# -------------------- sass --------------------
&& gem install sass \
\
\ \
&& rm -rf /root/.gem \ && rm -rf /root/.gem \
&& rm -rf /tmp/* \ && rm -rf /tmp/* \
@@ -488,13 +494,13 @@ RUN set -eux \
### ###
RUN set -eux \ RUN set -eux \
# -------------------- ansible -------------------- # -------------------- ansible --------------------
&& pip install --no-cache-dir --force-reinstall ansible \ && pip install --no-cache-dir --force-reinstall ansible || true \
\ \
# -------------------- yamllint -------------------- # -------------------- yamllint --------------------
&& pip install --no-cache-dir --force-reinstall yamllint \ && pip install --no-cache-dir --force-reinstall yamllint || true \
\ \
# -------------------- yq -------------------- # -------------------- yq --------------------
&& pip install --no-cache-dir --force-reinstall yq \ && pip install --no-cache-dir --force-reinstall yq || true \
\ \
\ \
&& rm -rf /root/.cache/pip \ && rm -rf /root/.cache/pip \
@@ -547,53 +553,54 @@ RUN set -eux \
RUN set -eux \ RUN set -eux \
# -------------------- Software -------------------- # -------------------- Software --------------------
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \ && composer --version 2>/dev/null | grep -E 'version\s*[0-9][.0-9]+' \
&& su -c '. /opt/nvm/nvm.sh; nvm --version' devilbox | grep -E '^[.0-9]+' \ && su -c '. /opt/nvm/nvm.sh; nvm --version' devilbox | grep -E '^[0-9][.0-9]+' \
&& regex-grep --version | grep -E '[.0-9]+' \ && regex-grep --version | grep -E '[0-9][.0-9]+' \
&& dep --version 2>/dev/null | grep -Ei 'deployer\s*(version\s*)?[.0-9]+' \ && dep --version 2>/dev/null | grep -Ei 'deployer\s*(version\s*)?[0-9][.0-9]+' \
&& drush7 --version | grep -E '7[.0-9]+\s*$' \ && drush7 --version | grep -E '7[.0-9]+\s*$' \
&& drush8 --version | grep -E '8[.0-9]+\s*$' \ && drush8 --version | grep -E '8[.0-9]+\s*$' \
&& drupal --version | grep -E 'Drupal Console Launcher\s*[.0-9]' \ && drupal --version | grep -E 'Drupal Console Launcher\s*[0-9][.0-9]' \
&& git-flow version | grep -E '[.0-9]+' \ && git-flow version | grep -E '[0-9][.0-9]+' \
&& laravel --version | grep -E '(Installer|version)\s*[.0-9]+' \ && laravel --version | grep -E '(Installer|version)\s*[0-9][.0-9]+' \
&& linkcheck --version | grep -E '^linkcheck\sv[.0-9]+' \ && linkcheck --version | grep -E '^linkcheck\sv[0-9][.0-9]+' \
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[.0-9]+' \ && su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[0-9][.0-9]+' \
&& mysqldump-secure --version | grep -E 'Version:\s*[.0-9]+' \ && mysqldump-secure --version | grep -E 'Version:\s*[0-9][.0-9]+' \
&& phalcon commands | grep -E '[.0-9]+' \ && phalcon commands | grep -E '[0-9][.0-9]+' \
&& phpcs --version | grep -E 'version [.0-9]+' \ && phpcs --version | grep -E 'version [0-9][.0-9]+' \
&& phpcbf --version | grep -E 'version [.0-9]+' \ && phpcbf --version | grep -E 'version [0-9][.0-9]+' \
&& php-cs-fixer --version 2>&1 | grep -E 'Fixer\s+(version\s*)?[-_.0-9]+\s+' \ && php-cs-fixer --version 2>&1 | grep -E 'Fixer\s+(version\s*)?[-_.0-9]+\s+' \
&& phpmd --version | grep -E '^PHPMD [.0-9]+' \ && phpmd --version | grep -E '^PHPMD [0-9][.0-9]+' \
&& phpunit --version | grep -iE '^PHPUnit\s[.0-9]+' \ && phpunit --version | grep -iE '^PHPUnit\s[0-9][.0-9]+' \
&& symfony -V | grep -Ei 'version\s*.*v[.0-9]+' \ && symfony -V | grep -Ei 'version\s*.*v[0-9][.0-9]+' \
&& wkhtmltopdf --version | grep -E "^wkhtmltopdf [.0-9]+\s+\(.+patched.+\)" \ && wkhtmltopdf --version | grep -E "^wkhtmltopdf [0-9][.0-9]+\s+\(.+patched.+\)" \
&& wp --allow-root --version | grep -E '[.0-9]+' \ && wp --allow-root --version | grep -E '[0-9][.0-9]+' \
\ \
# -------------------- Composer -------------------- # -------------------- Composer --------------------
&& asgardcms --version 2>/dev/null | grep -Ei 'AsgardCMS\sInstaller\s[.0-9]+' \ && asgardcms --version 2>/dev/null | grep -Ei 'AsgardCMS\sInstaller\s[0-9][.0-9]+' \
&& codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[.0-9]+$' \ && codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[0-9][.0-9]+$' \
&& lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[.0-9]+$' \ && lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[0-9][.0-9]+$' \
&& photon --version | grep -E 'Installer [.0-9]+' \ && photon --version | grep -E 'Installer [0-9][.0-9]+' \
\ \
# -------------------- PIP -------------------- # -------------------- PIP --------------------
&& ansible --version | grep -E '^ansible [.0-9]+$' \ && ansible --version | grep -E '^ansible [0-9][.0-9]+$' \
&& yamllint --version 2>&1 | grep -E '[.0-9]+' \ && yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' \
&& yq --version 2>&1 | grep -E '^yq\s+[.0-9]+$' \ && yq --version 2>&1 | grep -E '^yq\s+[0-9][.0-9]+$' \
\ \
# -------------------- NPM -------------------- # -------------------- NPM --------------------
&& ng version 2>&1 | grep -iE 'Angular CLI:\s*[.0-9]+' \ && ng version 2>&1 | grep -iE 'Angular CLI:\s*[0-9][.0-9]+' \
&& eslint -v | grep -E '[.0-9]+' \ && eslint -v | grep -E '[0-9][.0-9]+' \
&& grunt --version | grep -E '[.0-9]+' \ && grunt --version | grep -E '[0-9][.0-9]+' \
&& gulp --version | grep -E '[.0-9]+' \ && gulp --version | grep -E '[0-9][.0-9]+' \
&& jsonlint --version | grep -E '[.0-9]+' \ && jsonlint --version | grep -E '[0-9][.0-9]+' \
&& pm2 --no-daemon --version | grep -E '[.0-9]+' \ && pm2 --no-daemon --version | tail -1 | grep -E '[0-9][.0-9]+' \
&& mdlint --version | grep -E '[.0-9]+' \ && mdlint --version | grep -E '[0-9][.0-9]+' \
&& vue --version | grep -E '[.0-9]+' \ && sass --version | grep -E '[0-9][.0-9]+' \
&& webpack --version | grep -E '[.0-9]+' \ && stylelint --version | grep -E '[0-9][.0-9]+' \
&& vue --version | grep -E '[0-9][.0-9]+' \
&& webpack --version | grep -E '[0-9][.0-9]+' \
\ \
# -------------------- GEM -------------------- # -------------------- GEM --------------------
&& mdl --version | grep -E '[.0-9]+' \ && mdl --version | grep -E '[0-9][.0-9]+' \
&& sass --version | grep -E '[.0-9]+' \
\ \
# -------------------- Cleanup -------------------- # -------------------- Cleanup --------------------
&& rm -rf /home/devilbox/.cache/ \ && rm -rf /home/devilbox/.cache/ \

View File

@@ -62,6 +62,7 @@ RUN set -eux \
blackfire-agent \ blackfire-agent \
build-essential \ build-essential \
bzip2 \ bzip2 \
certbot \
coreutils \ coreutils \
dnsutils \ dnsutils \
dos2unix \ dos2unix \
@@ -73,6 +74,7 @@ RUN set -eux \
git-svn \ git-svn \
ghostscript \ ghostscript \
graphviz \ graphviz \
gsfonts \
hostname \ hostname \
htop \ htop \
imagemagick \ imagemagick \
@@ -88,6 +90,8 @@ RUN set -eux \
mongodb-org-tools \ mongodb-org-tools \
moreutils \ moreutils \
mysql-client \ mysql-client \
mupdf \
mupdf-tools \
nano \ nano \
net-tools \ net-tools \
netcat \ netcat \
@@ -178,7 +182,7 @@ RUN set -eux \
&& git checkout 7.4.0 \ && git checkout 7.4.0 \
\ \
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush7 \ && chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush7 \
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush7 && composer install --no-interaction --no-progress --no-dev' \ && su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush7 && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install --no-interaction --no-progress --no-dev' \
&& ln -s /usr/local/src/drush7/drush /usr/local/bin/drush7 \ && ln -s /usr/local/src/drush7/drush /usr/local/bin/drush7 \
&& rm -rf /usr/local/src/drush7/.git \ && rm -rf /usr/local/src/drush7/.git \
&& rm -rf /usr/local/src/drush7/docs \ && rm -rf /usr/local/src/drush7/docs \
@@ -192,7 +196,7 @@ RUN set -eux \
&& git checkout $( git for-each-ref --format='%(*creatordate:raw)%(creatordate:raw) %(refname)' refs/tags | sort -n | grep -E 'tags/8[.0-9]+$' | tail -1 | sed 's|.*/||g' ) \ && git checkout $( git for-each-ref --format='%(*creatordate:raw)%(creatordate:raw) %(refname)' refs/tags | sort -n | grep -E 'tags/8[.0-9]+$' | tail -1 | sed 's|.*/||g' ) \
\ \
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush8 \ && chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush8 \
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush8 && composer install --no-interaction --no-progress --no-dev' \ && su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush8 && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install --no-interaction --no-progress --no-dev' \
&& ln -s /usr/local/src/drush8/drush /usr/local/bin/drush8 \ && ln -s /usr/local/src/drush8/drush /usr/local/bin/drush8 \
&& rm -rf /usr/local/src/drush8/.git \ && rm -rf /usr/local/src/drush8/.git \
&& rm -rf /usr/local/src/drush8/docs \ && rm -rf /usr/local/src/drush8/docs \
@@ -206,7 +210,7 @@ RUN set -eux \
&& git checkout $( git for-each-ref --format='%(*creatordate:raw)%(creatordate:raw) %(refname)' refs/tags | sort -n | grep -E 'tags/9[.0-9]+$' | tail -1 | sed 's|.*/||g' ) \ && git checkout $( git for-each-ref --format='%(*creatordate:raw)%(creatordate:raw) %(refname)' refs/tags | sort -n | grep -E 'tags/9[.0-9]+$' | tail -1 | sed 's|.*/||g' ) \
\ \
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush9 \ && chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush9 \
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush9 && php -d memory_limit=-1 `which composer` install --no-interaction --no-progress' \ && su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush9 && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install --no-interaction --no-progress' \
&& ln -s /usr/local/src/drush9/drush /usr/local/bin/drush9 \ && ln -s /usr/local/src/drush9/drush /usr/local/bin/drush9 \
&& rm -rf /usr/local/src/drush9/.git \ && rm -rf /usr/local/src/drush9/.git \
&& rm -rf /usr/local/src/drush9/docs \ && rm -rf /usr/local/src/drush9/docs \
@@ -231,7 +235,7 @@ RUN set -eux \
&& git checkout v2.0.0 \ && git checkout v2.0.0 \
\ \
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/laravel-installer \ && chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/laravel-installer \
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/laravel-installer && composer install --no-interaction --no-progress --no-dev' \ && su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/laravel-installer && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install --no-interaction --no-progress --no-dev' \
&& rm -rf /usr/local/src/laravel-installer/laravel/.git \ && rm -rf /usr/local/src/laravel-installer/laravel/.git \
\ \
&& ln -s /usr/local/src/laravel-installer/laravel /usr/local/bin/laravel \ && ln -s /usr/local/src/laravel-installer/laravel /usr/local/bin/laravel \
@@ -386,23 +390,23 @@ RUN set -eux \
### ###
RUN set -eux \ RUN set -eux \
# -------------------- asgardcms -------------------- # -------------------- asgardcms --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require asgardcms/asgardcms-installer \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require asgardcms/asgardcms-installer \
&& ln -s /usr/local/src/composer/vendor/asgardcms/asgardcms-installer/asgardcms /usr/local/bin/ \ && ln -s /usr/local/src/composer/vendor/asgardcms/asgardcms-installer/asgardcms /usr/local/bin/ \
\ \
# -------------------- codeception -------------------- # -------------------- codeception --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require codeception/codeception \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require codeception/codeception \
&& ln -s /usr/local/src/composer/vendor/codeception/codeception/codecept /usr/local/bin/ \ && ln -s /usr/local/src/composer/vendor/codeception/codeception/codecept /usr/local/bin/ \
\ \
# -------------------- lumen -------------------- # -------------------- lumen --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require laravel/lumen-installer \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require laravel/lumen-installer \
&& ln -s /usr/local/src/composer/vendor/laravel/lumen-installer/lumen /usr/local/bin/ \ && ln -s /usr/local/src/composer/vendor/laravel/lumen-installer/lumen /usr/local/bin/ \
\ \
# -------------------- photon -------------------- # -------------------- photon --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require photoncms/installer \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require photoncms/installer \
&& ln -s /usr/local/src/composer/vendor/photoncms/installer/photon /usr/local/bin/ \ && ln -s /usr/local/src/composer/vendor/photoncms/installer/photon /usr/local/bin/ \
\ \
# -------------------- prestissimo -------------------- # -------------------- prestissimo --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require hirak/prestissimo \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require hirak/prestissimo \
\ \
\ \
&& rm -rf /tmp/* \ && rm -rf /tmp/* \
@@ -441,6 +445,12 @@ RUN set -eux \
# -------------------- mdlint -------------------- # -------------------- mdlint --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force mdlint' devilbox \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force mdlint' devilbox \
\ \
# -------------------- sass --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force sass' devilbox \
\
# -------------------- stylelint --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force stylelint' devilbox \
\
# -------------------- vue_cli -------------------- # -------------------- vue_cli --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force @vue/cli' devilbox \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force @vue/cli' devilbox \
\ \
@@ -480,12 +490,6 @@ RUN set -eux \
# -------------------- mdl -------------------- # -------------------- mdl --------------------
&& gem install mdl -v 0.5.0 \ && gem install mdl -v 0.5.0 \
\ \
# -------------------- scss_lint --------------------
&& gem install scss_lint -v 0.57.1 \
\
# -------------------- sass --------------------
&& gem install sass \
\
\ \
&& rm -rf /root/.gem \ && rm -rf /root/.gem \
&& rm -rf /tmp/* \ && rm -rf /tmp/* \
@@ -501,13 +505,13 @@ RUN set -eux \
### ###
RUN set -eux \ RUN set -eux \
# -------------------- ansible -------------------- # -------------------- ansible --------------------
&& pip install --no-cache-dir --force-reinstall ansible \ && pip install --no-cache-dir --force-reinstall ansible || true \
\ \
# -------------------- yamllint -------------------- # -------------------- yamllint --------------------
&& pip install --no-cache-dir --force-reinstall yamllint \ && pip install --no-cache-dir --force-reinstall yamllint || true \
\ \
# -------------------- yq -------------------- # -------------------- yq --------------------
&& pip install --no-cache-dir --force-reinstall yq \ && pip install --no-cache-dir --force-reinstall yq || true \
\ \
\ \
&& rm -rf /root/.cache/pip \ && rm -rf /root/.cache/pip \
@@ -560,54 +564,55 @@ RUN set -eux \
RUN set -eux \ RUN set -eux \
# -------------------- Software -------------------- # -------------------- Software --------------------
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \ && composer --version 2>/dev/null | grep -E 'version\s*[0-9][.0-9]+' \
&& su -c '. /opt/nvm/nvm.sh; nvm --version' devilbox | grep -E '^[.0-9]+' \ && su -c '. /opt/nvm/nvm.sh; nvm --version' devilbox | grep -E '^[0-9][.0-9]+' \
&& regex-grep --version | grep -E '[.0-9]+' \ && regex-grep --version | grep -E '[0-9][.0-9]+' \
&& dep --version 2>/dev/null | grep -Ei 'deployer\s*(version\s*)?[.0-9]+' \ && dep --version 2>/dev/null | grep -Ei 'deployer\s*(version\s*)?[0-9][.0-9]+' \
&& drush7 --version | grep -E '7[.0-9]+\s*$' \ && drush7 --version | grep -E '7[.0-9]+\s*$' \
&& drush8 --version | grep -E '8[.0-9]+\s*$' \ && drush8 --version | grep -E '8[.0-9]+\s*$' \
&& drush9 --version | grep -E '9[.0-9]+\s*$' \ && drush9 --version | grep -E '9[.0-9]+\s*$' \
&& drupal --version | grep -E 'Drupal Console Launcher\s*[.0-9]' \ && drupal --version | grep -E 'Drupal Console Launcher\s*[0-9][.0-9]' \
&& git-flow version | grep -E '[.0-9]+' \ && git-flow version | grep -E '[0-9][.0-9]+' \
&& laravel --version | grep -E '(Installer|version)\s*[.0-9]+' \ && laravel --version | grep -E '(Installer|version)\s*[0-9][.0-9]+' \
&& linkcheck --version | grep -E '^linkcheck\sv[.0-9]+' \ && linkcheck --version | grep -E '^linkcheck\sv[0-9][.0-9]+' \
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[.0-9]+' \ && su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[0-9][.0-9]+' \
&& mysqldump-secure --version | grep -E 'Version:\s*[.0-9]+' \ && mysqldump-secure --version | grep -E 'Version:\s*[0-9][.0-9]+' \
&& phalcon commands | grep -E '[.0-9]+' \ && phalcon commands | grep -E '[0-9][.0-9]+' \
&& phpcs --version | grep -E 'version [.0-9]+' \ && phpcs --version | grep -E 'version [0-9][.0-9]+' \
&& phpcbf --version | grep -E 'version [.0-9]+' \ && phpcbf --version | grep -E 'version [0-9][.0-9]+' \
&& php-cs-fixer --version 2>&1 | grep -E 'Fixer\s+(version\s*)?[-_.0-9]+\s+' \ && php-cs-fixer --version 2>&1 | grep -E 'Fixer\s+(version\s*)?[-_.0-9]+\s+' \
&& phpmd --version | grep -E '^PHPMD [.0-9]+' \ && phpmd --version | grep -E '^PHPMD [0-9][.0-9]+' \
&& phpunit --version | grep -iE '^PHPUnit\s[.0-9]+' \ && phpunit --version | grep -iE '^PHPUnit\s[0-9][.0-9]+' \
&& symfony -V | grep -Ei 'version\s*.*v[.0-9]+' \ && symfony -V | grep -Ei 'version\s*.*v[0-9][.0-9]+' \
&& wkhtmltopdf --version | grep -E "^wkhtmltopdf [.0-9]+\s+\(.+patched.+\)" \ && wkhtmltopdf --version | grep -E "^wkhtmltopdf [0-9][.0-9]+\s+\(.+patched.+\)" \
&& wp --allow-root --version | grep -E '[.0-9]+' \ && wp --allow-root --version | grep -E '[0-9][.0-9]+' \
\ \
# -------------------- Composer -------------------- # -------------------- Composer --------------------
&& asgardcms --version 2>/dev/null | grep -Ei 'AsgardCMS\sInstaller\s[.0-9]+' \ && asgardcms --version 2>/dev/null | grep -Ei 'AsgardCMS\sInstaller\s[0-9][.0-9]+' \
&& codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[.0-9]+$' \ && codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[0-9][.0-9]+$' \
&& lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[.0-9]+$' \ && lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[0-9][.0-9]+$' \
&& photon --version | grep -E 'Installer [.0-9]+' \ && photon --version | grep -E 'Installer [0-9][.0-9]+' \
\ \
# -------------------- PIP -------------------- # -------------------- PIP --------------------
&& ansible --version | grep -E '^ansible [.0-9]+$' \ && ansible --version | grep -E '^ansible [0-9][.0-9]+$' \
&& yamllint --version 2>&1 | grep -E '[.0-9]+' \ && yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' \
&& yq --version 2>&1 | grep -E '^yq\s+[.0-9]+$' \ && yq --version 2>&1 | grep -E '^yq\s+[0-9][.0-9]+$' \
\ \
# -------------------- NPM -------------------- # -------------------- NPM --------------------
&& ng version 2>&1 | grep -iE 'Angular CLI:\s*[.0-9]+' \ && ng version 2>&1 | grep -iE 'Angular CLI:\s*[0-9][.0-9]+' \
&& eslint -v | grep -E '[.0-9]+' \ && eslint -v | grep -E '[0-9][.0-9]+' \
&& grunt --version | grep -E '[.0-9]+' \ && grunt --version | grep -E '[0-9][.0-9]+' \
&& gulp --version | grep -E '[.0-9]+' \ && gulp --version | grep -E '[0-9][.0-9]+' \
&& jsonlint --version | grep -E '[.0-9]+' \ && jsonlint --version | grep -E '[0-9][.0-9]+' \
&& pm2 --no-daemon --version | grep -E '[.0-9]+' \ && pm2 --no-daemon --version | tail -1 | grep -E '[0-9][.0-9]+' \
&& mdlint --version | grep -E '[.0-9]+' \ && mdlint --version | grep -E '[0-9][.0-9]+' \
&& vue --version | grep -E '[.0-9]+' \ && sass --version | grep -E '[0-9][.0-9]+' \
&& webpack --version | grep -E '[.0-9]+' \ && stylelint --version | grep -E '[0-9][.0-9]+' \
&& vue --version | grep -E '[0-9][.0-9]+' \
&& webpack --version | grep -E '[0-9][.0-9]+' \
\ \
# -------------------- GEM -------------------- # -------------------- GEM --------------------
&& mdl --version | grep -E '[.0-9]+' \ && mdl --version | grep -E '[0-9][.0-9]+' \
&& sass --version | grep -E '[.0-9]+' \
\ \
# -------------------- Cleanup -------------------- # -------------------- Cleanup --------------------
&& rm -rf /home/devilbox/.cache/ \ && rm -rf /home/devilbox/.cache/ \

View File

@@ -62,6 +62,7 @@ RUN set -eux \
blackfire-agent \ blackfire-agent \
build-essential \ build-essential \
bzip2 \ bzip2 \
certbot \
coreutils \ coreutils \
dnsutils \ dnsutils \
dos2unix \ dos2unix \
@@ -73,6 +74,7 @@ RUN set -eux \
git-svn \ git-svn \
ghostscript \ ghostscript \
graphviz \ graphviz \
gsfonts \
hostname \ hostname \
htop \ htop \
imagemagick \ imagemagick \
@@ -88,6 +90,8 @@ RUN set -eux \
mongodb-org-tools \ mongodb-org-tools \
moreutils \ moreutils \
mysql-client \ mysql-client \
mupdf \
mupdf-tools \
nano \ nano \
net-tools \ net-tools \
netcat \ netcat \
@@ -178,7 +182,7 @@ RUN set -eux \
&& git checkout 7.4.0 \ && git checkout 7.4.0 \
\ \
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush7 \ && chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush7 \
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush7 && composer install --no-interaction --no-progress --no-dev' \ && su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush7 && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install --no-interaction --no-progress --no-dev' \
&& ln -s /usr/local/src/drush7/drush /usr/local/bin/drush7 \ && ln -s /usr/local/src/drush7/drush /usr/local/bin/drush7 \
&& rm -rf /usr/local/src/drush7/.git \ && rm -rf /usr/local/src/drush7/.git \
&& rm -rf /usr/local/src/drush7/docs \ && rm -rf /usr/local/src/drush7/docs \
@@ -192,7 +196,7 @@ RUN set -eux \
&& git checkout $( git for-each-ref --format='%(*creatordate:raw)%(creatordate:raw) %(refname)' refs/tags | sort -n | grep -E 'tags/8[.0-9]+$' | tail -1 | sed 's|.*/||g' ) \ && git checkout $( git for-each-ref --format='%(*creatordate:raw)%(creatordate:raw) %(refname)' refs/tags | sort -n | grep -E 'tags/8[.0-9]+$' | tail -1 | sed 's|.*/||g' ) \
\ \
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush8 \ && chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush8 \
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush8 && composer install --no-interaction --no-progress --no-dev' \ && su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush8 && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install --no-interaction --no-progress --no-dev' \
&& ln -s /usr/local/src/drush8/drush /usr/local/bin/drush8 \ && ln -s /usr/local/src/drush8/drush /usr/local/bin/drush8 \
&& rm -rf /usr/local/src/drush8/.git \ && rm -rf /usr/local/src/drush8/.git \
&& rm -rf /usr/local/src/drush8/docs \ && rm -rf /usr/local/src/drush8/docs \
@@ -206,7 +210,7 @@ RUN set -eux \
&& git checkout $( git for-each-ref --format='%(*creatordate:raw)%(creatordate:raw) %(refname)' refs/tags | sort -n | grep -E 'tags/9[.0-9]+$' | tail -1 | sed 's|.*/||g' ) \ && git checkout $( git for-each-ref --format='%(*creatordate:raw)%(creatordate:raw) %(refname)' refs/tags | sort -n | grep -E 'tags/9[.0-9]+$' | tail -1 | sed 's|.*/||g' ) \
\ \
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush9 \ && chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush9 \
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush9 && php -d memory_limit=-1 `which composer` install --no-interaction --no-progress' \ && su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush9 && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install --no-interaction --no-progress' \
&& ln -s /usr/local/src/drush9/drush /usr/local/bin/drush9 \ && ln -s /usr/local/src/drush9/drush /usr/local/bin/drush9 \
&& rm -rf /usr/local/src/drush9/.git \ && rm -rf /usr/local/src/drush9/.git \
&& rm -rf /usr/local/src/drush9/docs \ && rm -rf /usr/local/src/drush9/docs \
@@ -231,7 +235,7 @@ RUN set -eux \
&& git checkout v2.0.0 \ && git checkout v2.0.0 \
\ \
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/laravel-installer \ && chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/laravel-installer \
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/laravel-installer && composer install --no-interaction --no-progress --no-dev' \ && su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/laravel-installer && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install --no-interaction --no-progress --no-dev' \
&& rm -rf /usr/local/src/laravel-installer/laravel/.git \ && rm -rf /usr/local/src/laravel-installer/laravel/.git \
\ \
&& ln -s /usr/local/src/laravel-installer/laravel /usr/local/bin/laravel \ && ln -s /usr/local/src/laravel-installer/laravel /usr/local/bin/laravel \
@@ -386,23 +390,23 @@ RUN set -eux \
### ###
RUN set -eux \ RUN set -eux \
# -------------------- asgardcms -------------------- # -------------------- asgardcms --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require asgardcms/asgardcms-installer \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require asgardcms/asgardcms-installer \
&& ln -s /usr/local/src/composer/vendor/asgardcms/asgardcms-installer/asgardcms /usr/local/bin/ \ && ln -s /usr/local/src/composer/vendor/asgardcms/asgardcms-installer/asgardcms /usr/local/bin/ \
\ \
# -------------------- codeception -------------------- # -------------------- codeception --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require codeception/codeception \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require codeception/codeception \
&& ln -s /usr/local/src/composer/vendor/codeception/codeception/codecept /usr/local/bin/ \ && ln -s /usr/local/src/composer/vendor/codeception/codeception/codecept /usr/local/bin/ \
\ \
# -------------------- lumen -------------------- # -------------------- lumen --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require laravel/lumen-installer \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require laravel/lumen-installer \
&& ln -s /usr/local/src/composer/vendor/laravel/lumen-installer/lumen /usr/local/bin/ \ && ln -s /usr/local/src/composer/vendor/laravel/lumen-installer/lumen /usr/local/bin/ \
\ \
# -------------------- photon -------------------- # -------------------- photon --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require photoncms/installer \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require photoncms/installer \
&& ln -s /usr/local/src/composer/vendor/photoncms/installer/photon /usr/local/bin/ \ && ln -s /usr/local/src/composer/vendor/photoncms/installer/photon /usr/local/bin/ \
\ \
# -------------------- prestissimo -------------------- # -------------------- prestissimo --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require hirak/prestissimo \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require hirak/prestissimo \
\ \
\ \
&& rm -rf /tmp/* \ && rm -rf /tmp/* \
@@ -441,6 +445,12 @@ RUN set -eux \
# -------------------- mdlint -------------------- # -------------------- mdlint --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force mdlint' devilbox \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force mdlint' devilbox \
\ \
# -------------------- sass --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force sass' devilbox \
\
# -------------------- stylelint --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force stylelint' devilbox \
\
# -------------------- vue_cli -------------------- # -------------------- vue_cli --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force @vue/cli' devilbox \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force @vue/cli' devilbox \
\ \
@@ -480,12 +490,6 @@ RUN set -eux \
# -------------------- mdl -------------------- # -------------------- mdl --------------------
&& gem install mdl -v 0.5.0 \ && gem install mdl -v 0.5.0 \
\ \
# -------------------- scss_lint --------------------
&& gem install scss_lint -v 0.57.1 \
\
# -------------------- sass --------------------
&& gem install sass \
\
\ \
&& rm -rf /root/.gem \ && rm -rf /root/.gem \
&& rm -rf /tmp/* \ && rm -rf /tmp/* \
@@ -501,13 +505,13 @@ RUN set -eux \
### ###
RUN set -eux \ RUN set -eux \
# -------------------- ansible -------------------- # -------------------- ansible --------------------
&& pip install --no-cache-dir --force-reinstall ansible \ && pip install --no-cache-dir --force-reinstall ansible || true \
\ \
# -------------------- yamllint -------------------- # -------------------- yamllint --------------------
&& pip install --no-cache-dir --force-reinstall yamllint \ && pip install --no-cache-dir --force-reinstall yamllint || true \
\ \
# -------------------- yq -------------------- # -------------------- yq --------------------
&& pip install --no-cache-dir --force-reinstall yq \ && pip install --no-cache-dir --force-reinstall yq || true \
\ \
\ \
&& rm -rf /root/.cache/pip \ && rm -rf /root/.cache/pip \
@@ -560,54 +564,55 @@ RUN set -eux \
RUN set -eux \ RUN set -eux \
# -------------------- Software -------------------- # -------------------- Software --------------------
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \ && composer --version 2>/dev/null | grep -E 'version\s*[0-9][.0-9]+' \
&& su -c '. /opt/nvm/nvm.sh; nvm --version' devilbox | grep -E '^[.0-9]+' \ && su -c '. /opt/nvm/nvm.sh; nvm --version' devilbox | grep -E '^[0-9][.0-9]+' \
&& regex-grep --version | grep -E '[.0-9]+' \ && regex-grep --version | grep -E '[0-9][.0-9]+' \
&& dep --version 2>/dev/null | grep -Ei 'deployer\s*(version\s*)?[.0-9]+' \ && dep --version 2>/dev/null | grep -Ei 'deployer\s*(version\s*)?[0-9][.0-9]+' \
&& drush7 --version | grep -E '7[.0-9]+\s*$' \ && drush7 --version | grep -E '7[.0-9]+\s*$' \
&& drush8 --version | grep -E '8[.0-9]+\s*$' \ && drush8 --version | grep -E '8[.0-9]+\s*$' \
&& drush9 --version | grep -E '9[.0-9]+\s*$' \ && drush9 --version | grep -E '9[.0-9]+\s*$' \
&& drupal --version | grep -E 'Drupal Console Launcher\s*[.0-9]' \ && drupal --version | grep -E 'Drupal Console Launcher\s*[0-9][.0-9]' \
&& git-flow version | grep -E '[.0-9]+' \ && git-flow version | grep -E '[0-9][.0-9]+' \
&& laravel --version | grep -E '(Installer|version)\s*[.0-9]+' \ && laravel --version | grep -E '(Installer|version)\s*[0-9][.0-9]+' \
&& linkcheck --version | grep -E '^linkcheck\sv[.0-9]+' \ && linkcheck --version | grep -E '^linkcheck\sv[0-9][.0-9]+' \
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[.0-9]+' \ && su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[0-9][.0-9]+' \
&& mysqldump-secure --version | grep -E 'Version:\s*[.0-9]+' \ && mysqldump-secure --version | grep -E 'Version:\s*[0-9][.0-9]+' \
&& phalcon commands | grep -E '[.0-9]+' \ && phalcon commands | grep -E '[0-9][.0-9]+' \
&& phpcs --version | grep -E 'version [.0-9]+' \ && phpcs --version | grep -E 'version [0-9][.0-9]+' \
&& phpcbf --version | grep -E 'version [.0-9]+' \ && phpcbf --version | grep -E 'version [0-9][.0-9]+' \
&& php-cs-fixer --version 2>&1 | grep -E 'Fixer\s+(version\s*)?[-_.0-9]+\s+' \ && php-cs-fixer --version 2>&1 | grep -E 'Fixer\s+(version\s*)?[-_.0-9]+\s+' \
&& phpmd --version | grep -E '^PHPMD [.0-9]+' \ && phpmd --version | grep -E '^PHPMD [0-9][.0-9]+' \
&& phpunit --version | grep -iE '^PHPUnit\s[.0-9]+' \ && phpunit --version | grep -iE '^PHPUnit\s[0-9][.0-9]+' \
&& symfony -V | grep -Ei 'version\s*.*v[.0-9]+' \ && symfony -V | grep -Ei 'version\s*.*v[0-9][.0-9]+' \
&& wkhtmltopdf --version | grep -E "^wkhtmltopdf [.0-9]+\s+\(.+patched.+\)" \ && wkhtmltopdf --version | grep -E "^wkhtmltopdf [0-9][.0-9]+\s+\(.+patched.+\)" \
&& wp --allow-root --version | grep -E '[.0-9]+' \ && wp --allow-root --version | grep -E '[0-9][.0-9]+' \
\ \
# -------------------- Composer -------------------- # -------------------- Composer --------------------
&& asgardcms --version 2>/dev/null | grep -Ei 'AsgardCMS\sInstaller\s[.0-9]+' \ && asgardcms --version 2>/dev/null | grep -Ei 'AsgardCMS\sInstaller\s[0-9][.0-9]+' \
&& codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[.0-9]+$' \ && codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[0-9][.0-9]+$' \
&& lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[.0-9]+$' \ && lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[0-9][.0-9]+$' \
&& photon --version | grep -E 'Installer [.0-9]+' \ && photon --version | grep -E 'Installer [0-9][.0-9]+' \
\ \
# -------------------- PIP -------------------- # -------------------- PIP --------------------
&& ansible --version | grep -E '^ansible [.0-9]+$' \ && ansible --version | grep -E '^ansible [0-9][.0-9]+$' \
&& yamllint --version 2>&1 | grep -E '[.0-9]+' \ && yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' \
&& yq --version 2>&1 | grep -E '^yq\s+[.0-9]+$' \ && yq --version 2>&1 | grep -E '^yq\s+[0-9][.0-9]+$' \
\ \
# -------------------- NPM -------------------- # -------------------- NPM --------------------
&& ng version 2>&1 | grep -iE 'Angular CLI:\s*[.0-9]+' \ && ng version 2>&1 | grep -iE 'Angular CLI:\s*[0-9][.0-9]+' \
&& eslint -v | grep -E '[.0-9]+' \ && eslint -v | grep -E '[0-9][.0-9]+' \
&& grunt --version | grep -E '[.0-9]+' \ && grunt --version | grep -E '[0-9][.0-9]+' \
&& gulp --version | grep -E '[.0-9]+' \ && gulp --version | grep -E '[0-9][.0-9]+' \
&& jsonlint --version | grep -E '[.0-9]+' \ && jsonlint --version | grep -E '[0-9][.0-9]+' \
&& pm2 --no-daemon --version | grep -E '[.0-9]+' \ && pm2 --no-daemon --version | tail -1 | grep -E '[0-9][.0-9]+' \
&& mdlint --version | grep -E '[.0-9]+' \ && mdlint --version | grep -E '[0-9][.0-9]+' \
&& vue --version | grep -E '[.0-9]+' \ && sass --version | grep -E '[0-9][.0-9]+' \
&& webpack --version | grep -E '[.0-9]+' \ && stylelint --version | grep -E '[0-9][.0-9]+' \
&& vue --version | grep -E '[0-9][.0-9]+' \
&& webpack --version | grep -E '[0-9][.0-9]+' \
\ \
# -------------------- GEM -------------------- # -------------------- GEM --------------------
&& mdl --version | grep -E '[.0-9]+' \ && mdl --version | grep -E '[0-9][.0-9]+' \
&& sass --version | grep -E '[.0-9]+' \
\ \
# -------------------- Cleanup -------------------- # -------------------- Cleanup --------------------
&& rm -rf /home/devilbox/.cache/ \ && rm -rf /home/devilbox/.cache/ \

View File

@@ -62,6 +62,7 @@ RUN set -eux \
blackfire-agent \ blackfire-agent \
build-essential \ build-essential \
bzip2 \ bzip2 \
certbot \
coreutils \ coreutils \
dnsutils \ dnsutils \
dos2unix \ dos2unix \
@@ -73,6 +74,7 @@ RUN set -eux \
git-svn \ git-svn \
ghostscript \ ghostscript \
graphviz \ graphviz \
gsfonts \
hostname \ hostname \
htop \ htop \
imagemagick \ imagemagick \
@@ -88,6 +90,8 @@ RUN set -eux \
mongodb-org-tools \ mongodb-org-tools \
moreutils \ moreutils \
mariadb-client \ mariadb-client \
mupdf \
mupdf-tools \
nano \ nano \
net-tools \ net-tools \
netcat \ netcat \
@@ -178,7 +182,7 @@ RUN set -eux \
&& git checkout 7.4.0 \ && git checkout 7.4.0 \
\ \
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush7 \ && chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush7 \
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush7 && composer install --no-interaction --no-progress --no-dev' \ && su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush7 && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install --no-interaction --no-progress --no-dev' \
&& ln -s /usr/local/src/drush7/drush /usr/local/bin/drush7 \ && ln -s /usr/local/src/drush7/drush /usr/local/bin/drush7 \
&& rm -rf /usr/local/src/drush7/.git \ && rm -rf /usr/local/src/drush7/.git \
&& rm -rf /usr/local/src/drush7/docs \ && rm -rf /usr/local/src/drush7/docs \
@@ -192,7 +196,7 @@ RUN set -eux \
&& git checkout $( git for-each-ref --format='%(*creatordate:raw)%(creatordate:raw) %(refname)' refs/tags | sort -n | grep -E 'tags/8[.0-9]+$' | tail -1 | sed 's|.*/||g' ) \ && git checkout $( git for-each-ref --format='%(*creatordate:raw)%(creatordate:raw) %(refname)' refs/tags | sort -n | grep -E 'tags/8[.0-9]+$' | tail -1 | sed 's|.*/||g' ) \
\ \
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush8 \ && chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush8 \
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush8 && composer install --no-interaction --no-progress --no-dev' \ && su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush8 && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install --no-interaction --no-progress --no-dev' \
&& ln -s /usr/local/src/drush8/drush /usr/local/bin/drush8 \ && ln -s /usr/local/src/drush8/drush /usr/local/bin/drush8 \
&& rm -rf /usr/local/src/drush8/.git \ && rm -rf /usr/local/src/drush8/.git \
&& rm -rf /usr/local/src/drush8/docs \ && rm -rf /usr/local/src/drush8/docs \
@@ -206,7 +210,7 @@ RUN set -eux \
&& git checkout $( git for-each-ref --format='%(*creatordate:raw)%(creatordate:raw) %(refname)' refs/tags | sort -n | grep -E 'tags/9[.0-9]+$' | tail -1 | sed 's|.*/||g' ) \ && git checkout $( git for-each-ref --format='%(*creatordate:raw)%(creatordate:raw) %(refname)' refs/tags | sort -n | grep -E 'tags/9[.0-9]+$' | tail -1 | sed 's|.*/||g' ) \
\ \
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush9 \ && chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush9 \
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush9 && php -d memory_limit=-1 `which composer` install --no-interaction --no-progress' \ && su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush9 && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install --no-interaction --no-progress' \
&& ln -s /usr/local/src/drush9/drush /usr/local/bin/drush9 \ && ln -s /usr/local/src/drush9/drush /usr/local/bin/drush9 \
&& rm -rf /usr/local/src/drush9/.git \ && rm -rf /usr/local/src/drush9/.git \
&& rm -rf /usr/local/src/drush9/docs \ && rm -rf /usr/local/src/drush9/docs \
@@ -231,7 +235,7 @@ RUN set -eux \
&& git checkout $(git tag | grep '^v2\.3\.' | sort -u | tail -1) \ && git checkout $(git tag | grep '^v2\.3\.' | sort -u | tail -1) \
\ \
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/laravel-installer \ && chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/laravel-installer \
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/laravel-installer && composer install --no-interaction --no-progress --no-dev' \ && su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/laravel-installer && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install --no-interaction --no-progress --no-dev' \
&& rm -rf /usr/local/src/laravel-installer/laravel/.git \ && rm -rf /usr/local/src/laravel-installer/laravel/.git \
\ \
&& ln -s /usr/local/src/laravel-installer/laravel /usr/local/bin/laravel \ && ln -s /usr/local/src/laravel-installer/laravel /usr/local/bin/laravel \
@@ -386,23 +390,23 @@ RUN set -eux \
### ###
RUN set -eux \ RUN set -eux \
# -------------------- asgardcms -------------------- # -------------------- asgardcms --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require asgardcms/asgardcms-installer \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require asgardcms/asgardcms-installer \
&& ln -s /usr/local/src/composer/vendor/asgardcms/asgardcms-installer/asgardcms /usr/local/bin/ \ && ln -s /usr/local/src/composer/vendor/asgardcms/asgardcms-installer/asgardcms /usr/local/bin/ \
\ \
# -------------------- codeception -------------------- # -------------------- codeception --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require codeception/codeception \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require codeception/codeception \
&& ln -s /usr/local/src/composer/vendor/codeception/codeception/codecept /usr/local/bin/ \ && ln -s /usr/local/src/composer/vendor/codeception/codeception/codecept /usr/local/bin/ \
\ \
# -------------------- lumen -------------------- # -------------------- lumen --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require laravel/lumen-installer \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require laravel/lumen-installer \
&& ln -s /usr/local/src/composer/vendor/laravel/lumen-installer/lumen /usr/local/bin/ \ && ln -s /usr/local/src/composer/vendor/laravel/lumen-installer/lumen /usr/local/bin/ \
\ \
# -------------------- photon -------------------- # -------------------- photon --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require photoncms/installer \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require photoncms/installer \
&& ln -s /usr/local/src/composer/vendor/photoncms/installer/photon /usr/local/bin/ \ && ln -s /usr/local/src/composer/vendor/photoncms/installer/photon /usr/local/bin/ \
\ \
# -------------------- prestissimo -------------------- # -------------------- prestissimo --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require hirak/prestissimo \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require hirak/prestissimo \
\ \
\ \
&& rm -rf /tmp/* \ && rm -rf /tmp/* \
@@ -441,6 +445,12 @@ RUN set -eux \
# -------------------- mdlint -------------------- # -------------------- mdlint --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force mdlint' devilbox \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force mdlint' devilbox \
\ \
# -------------------- sass --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force sass' devilbox \
\
# -------------------- stylelint --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force stylelint' devilbox \
\
# -------------------- vue_cli -------------------- # -------------------- vue_cli --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force @vue/cli' devilbox \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force @vue/cli' devilbox \
\ \
@@ -480,12 +490,6 @@ RUN set -eux \
# -------------------- mdl -------------------- # -------------------- mdl --------------------
&& gem install mdl \ && gem install mdl \
\ \
# -------------------- scss_lint --------------------
&& gem install scss_lint -v 0.57.1 \
\
# -------------------- sass --------------------
&& gem install sass \
\
\ \
&& rm -rf /root/.gem \ && rm -rf /root/.gem \
&& rm -rf /tmp/* \ && rm -rf /tmp/* \
@@ -501,13 +505,13 @@ RUN set -eux \
### ###
RUN set -eux \ RUN set -eux \
# -------------------- ansible -------------------- # -------------------- ansible --------------------
&& pip install --no-cache-dir --force-reinstall ansible \ && pip install --no-cache-dir --force-reinstall ansible || true \
\ \
# -------------------- yamllint -------------------- # -------------------- yamllint --------------------
&& pip install --no-cache-dir --force-reinstall yamllint \ && pip install --no-cache-dir --force-reinstall yamllint || true \
\ \
# -------------------- yq -------------------- # -------------------- yq --------------------
&& pip install --no-cache-dir --force-reinstall yq \ && pip install --no-cache-dir --force-reinstall yq || true \
\ \
\ \
&& rm -rf /root/.cache/pip \ && rm -rf /root/.cache/pip \
@@ -560,54 +564,55 @@ RUN set -eux \
RUN set -eux \ RUN set -eux \
# -------------------- Software -------------------- # -------------------- Software --------------------
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \ && composer --version 2>/dev/null | grep -E 'version\s*[0-9][.0-9]+' \
&& su -c '. /opt/nvm/nvm.sh; nvm --version' devilbox | grep -E '^[.0-9]+' \ && su -c '. /opt/nvm/nvm.sh; nvm --version' devilbox | grep -E '^[0-9][.0-9]+' \
&& regex-grep --version | grep -E '[.0-9]+' \ && regex-grep --version | grep -E '[0-9][.0-9]+' \
&& dep --version 2>/dev/null | grep -Ei 'deployer\s*(version\s*)?[.0-9]+' \ && dep --version 2>/dev/null | grep -Ei 'deployer\s*(version\s*)?[0-9][.0-9]+' \
&& drush7 --version | grep -E '7[.0-9]+\s*$' \ && drush7 --version | grep -E '7[.0-9]+\s*$' \
&& drush8 --version | grep -E '8[.0-9]+\s*$' \ && drush8 --version | grep -E '8[.0-9]+\s*$' \
&& drush9 --version | grep -E '9[.0-9]+\s*$' \ && drush9 --version | grep -E '9[.0-9]+\s*$' \
&& drupal --version | grep -E 'Drupal Console Launcher\s*[.0-9]' \ && drupal --version | grep -E 'Drupal Console Launcher\s*[0-9][.0-9]' \
&& git-flow version | grep -E '[.0-9]+' \ && git-flow version | grep -E '[0-9][.0-9]+' \
&& laravel --version | grep -E '(Installer|version)\s*[.0-9]+' \ && laravel --version | grep -E '(Installer|version)\s*[0-9][.0-9]+' \
&& linkcheck --version | grep -E '^linkcheck\sv[.0-9]+' \ && linkcheck --version | grep -E '^linkcheck\sv[0-9][.0-9]+' \
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[.0-9]+' \ && su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[0-9][.0-9]+' \
&& mysqldump-secure --version | grep -E 'Version:\s*[.0-9]+' \ && mysqldump-secure --version | grep -E 'Version:\s*[0-9][.0-9]+' \
&& phalcon commands | grep -E '[.0-9]+' \ && phalcon commands | grep -E '[0-9][.0-9]+' \
&& phpcs --version | grep -E 'version [.0-9]+' \ && phpcs --version | grep -E 'version [0-9][.0-9]+' \
&& phpcbf --version | grep -E 'version [.0-9]+' \ && phpcbf --version | grep -E 'version [0-9][.0-9]+' \
&& php-cs-fixer --version 2>&1 | grep -E 'Fixer\s+(version\s*)?[-_.0-9]+\s+' \ && php-cs-fixer --version 2>&1 | grep -E 'Fixer\s+(version\s*)?[-_.0-9]+\s+' \
&& phpmd --version | grep -E '^PHPMD [.0-9]+' \ && phpmd --version | grep -E '^PHPMD [0-9][.0-9]+' \
&& phpunit --version | grep -iE '^PHPUnit\s[.0-9]+' \ && phpunit --version | grep -iE '^PHPUnit\s[0-9][.0-9]+' \
&& symfony -V | grep -Ei 'version\s*.*v[.0-9]+' \ && symfony -V | grep -Ei 'version\s*.*v[0-9][.0-9]+' \
&& wkhtmltopdf --version | grep -E "^wkhtmltopdf [.0-9]+\s+\(.+patched.+\)" \ && wkhtmltopdf --version | grep -E "^wkhtmltopdf [0-9][.0-9]+\s+\(.+patched.+\)" \
&& wp --allow-root --version | grep -E '[.0-9]+' \ && wp --allow-root --version | grep -E '[0-9][.0-9]+' \
\ \
# -------------------- Composer -------------------- # -------------------- Composer --------------------
&& asgardcms --version 2>/dev/null | grep -Ei 'AsgardCMS\sInstaller\s[.0-9]+' \ && asgardcms --version 2>/dev/null | grep -Ei 'AsgardCMS\sInstaller\s[0-9][.0-9]+' \
&& codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[.0-9]+$' \ && codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[0-9][.0-9]+$' \
&& lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[.0-9]+$' \ && lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[0-9][.0-9]+$' \
&& photon --version | grep -E 'Installer [.0-9]+' \ && photon --version | grep -E 'Installer [0-9][.0-9]+' \
\ \
# -------------------- PIP -------------------- # -------------------- PIP --------------------
&& ansible --version | grep -E '^ansible [.0-9]+$' \ && ansible --version | grep -E '^ansible [0-9][.0-9]+$' \
&& yamllint --version 2>&1 | grep -E '[.0-9]+' \ && yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' \
&& yq --version 2>&1 | grep -E '^yq\s+[.0-9]+$' \ && yq --version 2>&1 | grep -E '^yq\s+[0-9][.0-9]+$' \
\ \
# -------------------- NPM -------------------- # -------------------- NPM --------------------
&& ng version 2>&1 | grep -iE 'Angular CLI:\s*[.0-9]+' \ && ng version 2>&1 | grep -iE 'Angular CLI:\s*[0-9][.0-9]+' \
&& eslint -v | grep -E '[.0-9]+' \ && eslint -v | grep -E '[0-9][.0-9]+' \
&& grunt --version | grep -E '[.0-9]+' \ && grunt --version | grep -E '[0-9][.0-9]+' \
&& gulp --version | grep -E '[.0-9]+' \ && gulp --version | grep -E '[0-9][.0-9]+' \
&& jsonlint --version | grep -E '[.0-9]+' \ && jsonlint --version | grep -E '[0-9][.0-9]+' \
&& pm2 --no-daemon --version | grep -E '[.0-9]+' \ && pm2 --no-daemon --version | tail -1 | grep -E '[0-9][.0-9]+' \
&& mdlint --version | grep -E '[.0-9]+' \ && mdlint --version | grep -E '[0-9][.0-9]+' \
&& vue --version | grep -E '[.0-9]+' \ && sass --version | grep -E '[0-9][.0-9]+' \
&& webpack --version | grep -E '[.0-9]+' \ && stylelint --version | grep -E '[0-9][.0-9]+' \
&& vue --version | grep -E '[0-9][.0-9]+' \
&& webpack --version | grep -E '[0-9][.0-9]+' \
\ \
# -------------------- GEM -------------------- # -------------------- GEM --------------------
&& mdl --version | grep -E '[.0-9]+' \ && mdl --version | grep -E '[0-9][.0-9]+' \
&& sass --version | grep -E '[.0-9]+' \
\ \
# -------------------- Cleanup -------------------- # -------------------- Cleanup --------------------
&& rm -rf /home/devilbox/.cache/ \ && rm -rf /home/devilbox/.cache/ \

View File

@@ -62,6 +62,7 @@ RUN set -eux \
blackfire-agent \ blackfire-agent \
build-essential \ build-essential \
bzip2 \ bzip2 \
certbot \
coreutils \ coreutils \
dnsutils \ dnsutils \
dos2unix \ dos2unix \
@@ -73,6 +74,7 @@ RUN set -eux \
git-svn \ git-svn \
ghostscript \ ghostscript \
graphviz \ graphviz \
gsfonts \
hostname \ hostname \
htop \ htop \
imagemagick \ imagemagick \
@@ -88,6 +90,8 @@ RUN set -eux \
mongodb-org-tools \ mongodb-org-tools \
moreutils \ moreutils \
mariadb-client \ mariadb-client \
mupdf \
mupdf-tools \
nano \ nano \
net-tools \ net-tools \
netcat \ netcat \
@@ -178,7 +182,7 @@ RUN set -eux \
&& git checkout 7.4.0 \ && git checkout 7.4.0 \
\ \
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush7 \ && chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush7 \
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush7 && composer install --no-interaction --no-progress --no-dev' \ && su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush7 && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install --no-interaction --no-progress --no-dev' \
&& ln -s /usr/local/src/drush7/drush /usr/local/bin/drush7 \ && ln -s /usr/local/src/drush7/drush /usr/local/bin/drush7 \
&& rm -rf /usr/local/src/drush7/.git \ && rm -rf /usr/local/src/drush7/.git \
&& rm -rf /usr/local/src/drush7/docs \ && rm -rf /usr/local/src/drush7/docs \
@@ -192,7 +196,7 @@ RUN set -eux \
&& git checkout $( git for-each-ref --format='%(*creatordate:raw)%(creatordate:raw) %(refname)' refs/tags | sort -n | grep -E 'tags/8[.0-9]+$' | tail -1 | sed 's|.*/||g' ) \ && git checkout $( git for-each-ref --format='%(*creatordate:raw)%(creatordate:raw) %(refname)' refs/tags | sort -n | grep -E 'tags/8[.0-9]+$' | tail -1 | sed 's|.*/||g' ) \
\ \
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush8 \ && chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush8 \
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush8 && composer install --no-interaction --no-progress --no-dev' \ && su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush8 && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install --no-interaction --no-progress --no-dev' \
&& ln -s /usr/local/src/drush8/drush /usr/local/bin/drush8 \ && ln -s /usr/local/src/drush8/drush /usr/local/bin/drush8 \
&& rm -rf /usr/local/src/drush8/.git \ && rm -rf /usr/local/src/drush8/.git \
&& rm -rf /usr/local/src/drush8/docs \ && rm -rf /usr/local/src/drush8/docs \
@@ -206,7 +210,7 @@ RUN set -eux \
&& git checkout $( git for-each-ref --format='%(*creatordate:raw)%(creatordate:raw) %(refname)' refs/tags | sort -n | grep -E 'tags/9[.0-9]+$' | tail -1 | sed 's|.*/||g' ) \ && git checkout $( git for-each-ref --format='%(*creatordate:raw)%(creatordate:raw) %(refname)' refs/tags | sort -n | grep -E 'tags/9[.0-9]+$' | tail -1 | sed 's|.*/||g' ) \
\ \
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush9 \ && chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush9 \
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush9 && php -d memory_limit=-1 `which composer` install --no-interaction --no-progress' \ && su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush9 && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install --no-interaction --no-progress' \
&& ln -s /usr/local/src/drush9/drush /usr/local/bin/drush9 \ && ln -s /usr/local/src/drush9/drush /usr/local/bin/drush9 \
&& rm -rf /usr/local/src/drush9/.git \ && rm -rf /usr/local/src/drush9/.git \
&& rm -rf /usr/local/src/drush9/docs \ && rm -rf /usr/local/src/drush9/docs \
@@ -231,7 +235,7 @@ RUN set -eux \
&& git checkout $(git describe --abbrev=0 --tags) \ && git checkout $(git describe --abbrev=0 --tags) \
\ \
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/laravel-installer \ && chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/laravel-installer \
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/laravel-installer && composer install --no-interaction --no-progress --no-dev' \ && su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/laravel-installer && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install --no-interaction --no-progress --no-dev' \
&& rm -rf /usr/local/src/laravel-installer/laravel/.git \ && rm -rf /usr/local/src/laravel-installer/laravel/.git \
\ \
&& ln -s /usr/local/src/laravel-installer/bin/laravel /usr/local/bin/laravel \ && ln -s /usr/local/src/laravel-installer/bin/laravel /usr/local/bin/laravel \
@@ -286,7 +290,7 @@ RUN set -eux \
&& git clone https://github.com/phalcon/phalcon-devtools /usr/local/src/phalcon-devtools \ && git clone https://github.com/phalcon/phalcon-devtools /usr/local/src/phalcon-devtools \
&& cd /usr/local/src/phalcon-devtools \ && cd /usr/local/src/phalcon-devtools \
&& git checkout $(git describe --abbrev=0 --tags) \ && git checkout $(git describe --abbrev=0 --tags) \
&& composer install \ && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install \
\ \
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/phalcon-devtools \ && chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/phalcon-devtools \
&& su - ${MY_USER} -c 'cd /usr/local/src/phalcon-devtools && ./phalcon.sh' \ && su - ${MY_USER} -c 'cd /usr/local/src/phalcon-devtools && ./phalcon.sh' \
@@ -387,23 +391,23 @@ RUN set -eux \
### ###
RUN set -eux \ RUN set -eux \
# -------------------- asgardcms -------------------- # -------------------- asgardcms --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require asgardcms/asgardcms-installer \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require asgardcms/asgardcms-installer \
&& ln -s /usr/local/src/composer/vendor/asgardcms/asgardcms-installer/asgardcms /usr/local/bin/ \ && ln -s /usr/local/src/composer/vendor/asgardcms/asgardcms-installer/asgardcms /usr/local/bin/ \
\ \
# -------------------- codeception -------------------- # -------------------- codeception --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require codeception/codeception \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require codeception/codeception \
&& ln -s /usr/local/src/composer/vendor/codeception/codeception/codecept /usr/local/bin/ \ && ln -s /usr/local/src/composer/vendor/codeception/codeception/codecept /usr/local/bin/ \
\ \
# -------------------- lumen -------------------- # -------------------- lumen --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require laravel/lumen-installer \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require laravel/lumen-installer \
&& ln -s /usr/local/src/composer/vendor/laravel/lumen-installer/lumen /usr/local/bin/ \ && ln -s /usr/local/src/composer/vendor/laravel/lumen-installer/lumen /usr/local/bin/ \
\ \
# -------------------- photon -------------------- # -------------------- photon --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require photoncms/installer \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require photoncms/installer \
&& ln -s /usr/local/src/composer/vendor/photoncms/installer/photon /usr/local/bin/ \ && ln -s /usr/local/src/composer/vendor/photoncms/installer/photon /usr/local/bin/ \
\ \
# -------------------- prestissimo -------------------- # -------------------- prestissimo --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require hirak/prestissimo \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require hirak/prestissimo \
\ \
\ \
&& rm -rf /tmp/* \ && rm -rf /tmp/* \
@@ -442,6 +446,12 @@ RUN set -eux \
# -------------------- mdlint -------------------- # -------------------- mdlint --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force mdlint' devilbox \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force mdlint' devilbox \
\ \
# -------------------- sass --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force sass' devilbox \
\
# -------------------- stylelint --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force stylelint' devilbox \
\
# -------------------- vue_cli -------------------- # -------------------- vue_cli --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force @vue/cli' devilbox \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force @vue/cli' devilbox \
\ \
@@ -481,12 +491,6 @@ RUN set -eux \
# -------------------- mdl -------------------- # -------------------- mdl --------------------
&& gem install mdl \ && gem install mdl \
\ \
# -------------------- scss_lint --------------------
&& gem install scss_lint -v 0.57.1 \
\
# -------------------- sass --------------------
&& gem install sass \
\
\ \
&& rm -rf /root/.gem \ && rm -rf /root/.gem \
&& rm -rf /tmp/* \ && rm -rf /tmp/* \
@@ -502,13 +506,13 @@ RUN set -eux \
### ###
RUN set -eux \ RUN set -eux \
# -------------------- ansible -------------------- # -------------------- ansible --------------------
&& pip install --no-cache-dir --force-reinstall ansible \ && pip install --no-cache-dir --force-reinstall ansible || true \
\ \
# -------------------- yamllint -------------------- # -------------------- yamllint --------------------
&& pip install --no-cache-dir --force-reinstall yamllint \ && pip install --no-cache-dir --force-reinstall yamllint || true \
\ \
# -------------------- yq -------------------- # -------------------- yq --------------------
&& pip install --no-cache-dir --force-reinstall yq \ && pip install --no-cache-dir --force-reinstall yq || true \
\ \
\ \
&& rm -rf /root/.cache/pip \ && rm -rf /root/.cache/pip \
@@ -561,54 +565,55 @@ RUN set -eux \
RUN set -eux \ RUN set -eux \
# -------------------- Software -------------------- # -------------------- Software --------------------
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \ && composer --version 2>/dev/null | grep -E 'version\s*[0-9][.0-9]+' \
&& su -c '. /opt/nvm/nvm.sh; nvm --version' devilbox | grep -E '^[.0-9]+' \ && su -c '. /opt/nvm/nvm.sh; nvm --version' devilbox | grep -E '^[0-9][.0-9]+' \
&& regex-grep --version | grep -E '[.0-9]+' \ && regex-grep --version | grep -E '[0-9][.0-9]+' \
&& dep --version 2>/dev/null | grep -Ei 'deployer\s*(version\s*)?[.0-9]+' \ && dep --version 2>/dev/null | grep -Ei 'deployer\s*(version\s*)?[0-9][.0-9]+' \
&& drush7 --version | grep -E '7[.0-9]+\s*$' \ && drush7 --version | grep -E '7[.0-9]+\s*$' \
&& drush8 --version | grep -E '8[.0-9]+\s*$' \ && drush8 --version | grep -E '8[.0-9]+\s*$' \
&& drush9 --version | grep -E '9[.0-9]+\s*$' \ && drush9 --version | grep -E '9[.0-9]+\s*$' \
&& drupal --version | grep -E 'Drupal Console Launcher\s*[.0-9]' \ && drupal --version | grep -E 'Drupal Console Launcher\s*[0-9][.0-9]' \
&& git-flow version | grep -E '[.0-9]+' \ && git-flow version | grep -E '[0-9][.0-9]+' \
&& laravel --version | grep -E '(Installer|version)\s*[.0-9]+' \ && laravel --version | grep -E '(Installer|version)\s*[0-9][.0-9]+' \
&& linkcheck --version | grep -E '^linkcheck\sv[.0-9]+' \ && linkcheck --version | grep -E '^linkcheck\sv[0-9][.0-9]+' \
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[.0-9]+' \ && su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[0-9][.0-9]+' \
&& mysqldump-secure --version | grep -E 'Version:\s*[.0-9]+' \ && mysqldump-secure --version | grep -E 'Version:\s*[0-9][.0-9]+' \
&& phalcon commands | grep -E '[.0-9]+' \ && phalcon commands | grep -E '[0-9][.0-9]+' \
&& phpcs --version | grep -E 'version [.0-9]+' \ && phpcs --version | grep -E 'version [0-9][.0-9]+' \
&& phpcbf --version | grep -E 'version [.0-9]+' \ && phpcbf --version | grep -E 'version [0-9][.0-9]+' \
&& php-cs-fixer --version 2>&1 | grep -E 'Fixer\s+(version\s*)?[-_.0-9]+\s+' \ && php-cs-fixer --version 2>&1 | grep -E 'Fixer\s+(version\s*)?[-_.0-9]+\s+' \
&& phpmd --version | grep -E '^PHPMD [.0-9]+' \ && phpmd --version | grep -E '^PHPMD [0-9][.0-9]+' \
&& phpunit --version | grep -iE '^PHPUnit\s[.0-9]+' \ && phpunit --version | grep -iE '^PHPUnit\s[0-9][.0-9]+' \
&& symfony -V | grep -Ei 'version\s*.*v[.0-9]+' \ && symfony -V | grep -Ei 'version\s*.*v[0-9][.0-9]+' \
&& wkhtmltopdf --version | grep -E "^wkhtmltopdf [.0-9]+\s+\(.+patched.+\)" \ && wkhtmltopdf --version | grep -E "^wkhtmltopdf [0-9][.0-9]+\s+\(.+patched.+\)" \
&& wp --allow-root --version | grep -E '[.0-9]+' \ && wp --allow-root --version | grep -E '[0-9][.0-9]+' \
\ \
# -------------------- Composer -------------------- # -------------------- Composer --------------------
&& asgardcms --version 2>/dev/null | grep -Ei 'AsgardCMS\sInstaller\s[.0-9]+' \ && asgardcms --version 2>/dev/null | grep -Ei 'AsgardCMS\sInstaller\s[0-9][.0-9]+' \
&& codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[.0-9]+$' \ && codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[0-9][.0-9]+$' \
&& lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[.0-9]+$' \ && lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[0-9][.0-9]+$' \
&& photon --version | grep -E 'Installer [.0-9]+' \ && photon --version | grep -E 'Installer [0-9][.0-9]+' \
\ \
# -------------------- PIP -------------------- # -------------------- PIP --------------------
&& ansible --version | grep -E '^ansible [.0-9]+$' \ && ansible --version | grep -E '^ansible [0-9][.0-9]+$' \
&& yamllint --version 2>&1 | grep -E '[.0-9]+' \ && yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' \
&& yq --version 2>&1 | grep -E '^yq\s+[.0-9]+$' \ && yq --version 2>&1 | grep -E '^yq\s+[0-9][.0-9]+$' \
\ \
# -------------------- NPM -------------------- # -------------------- NPM --------------------
&& ng version 2>&1 | grep -iE 'Angular CLI:\s*[.0-9]+' \ && ng version 2>&1 | grep -iE 'Angular CLI:\s*[0-9][.0-9]+' \
&& eslint -v | grep -E '[.0-9]+' \ && eslint -v | grep -E '[0-9][.0-9]+' \
&& grunt --version | grep -E '[.0-9]+' \ && grunt --version | grep -E '[0-9][.0-9]+' \
&& gulp --version | grep -E '[.0-9]+' \ && gulp --version | grep -E '[0-9][.0-9]+' \
&& jsonlint --version | grep -E '[.0-9]+' \ && jsonlint --version | grep -E '[0-9][.0-9]+' \
&& pm2 --no-daemon --version | grep -E '[.0-9]+' \ && pm2 --no-daemon --version | tail -1 | grep -E '[0-9][.0-9]+' \
&& mdlint --version | grep -E '[.0-9]+' \ && mdlint --version | grep -E '[0-9][.0-9]+' \
&& vue --version | grep -E '[.0-9]+' \ && sass --version | grep -E '[0-9][.0-9]+' \
&& webpack --version | grep -E '[.0-9]+' \ && stylelint --version | grep -E '[0-9][.0-9]+' \
&& vue --version | grep -E '[0-9][.0-9]+' \
&& webpack --version | grep -E '[0-9][.0-9]+' \
\ \
# -------------------- GEM -------------------- # -------------------- GEM --------------------
&& mdl --version | grep -E '[.0-9]+' \ && mdl --version | grep -E '[0-9][.0-9]+' \
&& sass --version | grep -E '[.0-9]+' \
\ \
# -------------------- Cleanup -------------------- # -------------------- Cleanup --------------------
&& rm -rf /home/devilbox/.cache/ \ && rm -rf /home/devilbox/.cache/ \

View File

@@ -62,6 +62,7 @@ RUN set -eux \
blackfire-agent \ blackfire-agent \
build-essential \ build-essential \
bzip2 \ bzip2 \
certbot \
coreutils \ coreutils \
dnsutils \ dnsutils \
dos2unix \ dos2unix \
@@ -73,6 +74,7 @@ RUN set -eux \
git-svn \ git-svn \
ghostscript \ ghostscript \
graphviz \ graphviz \
gsfonts \
hostname \ hostname \
htop \ htop \
imagemagick \ imagemagick \
@@ -88,6 +90,8 @@ RUN set -eux \
mongodb-org-tools \ mongodb-org-tools \
moreutils \ moreutils \
mariadb-client \ mariadb-client \
mupdf \
mupdf-tools \
nano \ nano \
net-tools \ net-tools \
netcat \ netcat \
@@ -178,7 +182,7 @@ RUN set -eux \
&& git checkout 7.4.0 \ && git checkout 7.4.0 \
\ \
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush7 \ && chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush7 \
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush7 && composer install --no-interaction --no-progress --no-dev' \ && su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush7 && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install --no-interaction --no-progress --no-dev' \
&& ln -s /usr/local/src/drush7/drush /usr/local/bin/drush7 \ && ln -s /usr/local/src/drush7/drush /usr/local/bin/drush7 \
&& rm -rf /usr/local/src/drush7/.git \ && rm -rf /usr/local/src/drush7/.git \
&& rm -rf /usr/local/src/drush7/docs \ && rm -rf /usr/local/src/drush7/docs \
@@ -192,7 +196,7 @@ RUN set -eux \
&& git checkout $( git for-each-ref --format='%(*creatordate:raw)%(creatordate:raw) %(refname)' refs/tags | sort -n | grep -E 'tags/8[.0-9]+$' | tail -1 | sed 's|.*/||g' ) \ && git checkout $( git for-each-ref --format='%(*creatordate:raw)%(creatordate:raw) %(refname)' refs/tags | sort -n | grep -E 'tags/8[.0-9]+$' | tail -1 | sed 's|.*/||g' ) \
\ \
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush8 \ && chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush8 \
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush8 && composer install --no-interaction --no-progress --no-dev' \ && su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush8 && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install --no-interaction --no-progress --no-dev' \
&& ln -s /usr/local/src/drush8/drush /usr/local/bin/drush8 \ && ln -s /usr/local/src/drush8/drush /usr/local/bin/drush8 \
&& rm -rf /usr/local/src/drush8/.git \ && rm -rf /usr/local/src/drush8/.git \
&& rm -rf /usr/local/src/drush8/docs \ && rm -rf /usr/local/src/drush8/docs \
@@ -206,7 +210,7 @@ RUN set -eux \
&& git checkout $( git for-each-ref --format='%(*creatordate:raw)%(creatordate:raw) %(refname)' refs/tags | sort -n | grep -E 'tags/9[.0-9]+$' | tail -1 | sed 's|.*/||g' ) \ && git checkout $( git for-each-ref --format='%(*creatordate:raw)%(creatordate:raw) %(refname)' refs/tags | sort -n | grep -E 'tags/9[.0-9]+$' | tail -1 | sed 's|.*/||g' ) \
\ \
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush9 \ && chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush9 \
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush9 && php -d memory_limit=-1 `which composer` install --no-interaction --no-progress' \ && su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush9 && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install --no-interaction --no-progress' \
&& ln -s /usr/local/src/drush9/drush /usr/local/bin/drush9 \ && ln -s /usr/local/src/drush9/drush /usr/local/bin/drush9 \
&& rm -rf /usr/local/src/drush9/.git \ && rm -rf /usr/local/src/drush9/.git \
&& rm -rf /usr/local/src/drush9/docs \ && rm -rf /usr/local/src/drush9/docs \
@@ -231,7 +235,7 @@ RUN set -eux \
&& git checkout $(git describe --abbrev=0 --tags) \ && git checkout $(git describe --abbrev=0 --tags) \
\ \
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/laravel-installer \ && chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/laravel-installer \
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/laravel-installer && composer install --no-interaction --no-progress --no-dev' \ && su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/laravel-installer && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install --no-interaction --no-progress --no-dev' \
&& rm -rf /usr/local/src/laravel-installer/laravel/.git \ && rm -rf /usr/local/src/laravel-installer/laravel/.git \
\ \
&& ln -s /usr/local/src/laravel-installer/bin/laravel /usr/local/bin/laravel \ && ln -s /usr/local/src/laravel-installer/bin/laravel /usr/local/bin/laravel \
@@ -282,6 +286,20 @@ RUN set -eux \
&& rm -rf /usr/local/src/mysqldump-secure \ && rm -rf /usr/local/src/mysqldump-secure \
\ \
\ \
# -------------------- phalcon --------------------
&& git clone https://github.com/phalcon/phalcon-devtools /usr/local/src/phalcon-devtools \
&& cd /usr/local/src/phalcon-devtools \
&& git checkout $(git describe --abbrev=0 --tags) \
&& COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install \
\
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/phalcon-devtools \
&& su - ${MY_USER} -c 'cd /usr/local/src/phalcon-devtools && ./phalcon.sh' \
&& ln -sf /usr/local/src/phalcon-devtools/phalcon /usr/local/bin/phalcon \
&& chmod +x phalcon \
&& cd / \
&& rm -rf /usr/local/src/phalcon-devtools/.git \
\
\
# -------------------- phpcs -------------------- # -------------------- phpcs --------------------
&& curl -sS -L --fail https://squizlabs.github.io/PHP_CodeSniffer/phpcs.phar > /usr/local/bin/phpcs 2>/dev/null \ && curl -sS -L --fail https://squizlabs.github.io/PHP_CodeSniffer/phpcs.phar > /usr/local/bin/phpcs 2>/dev/null \
&& chmod +x /usr/local/bin/phpcs \ && chmod +x /usr/local/bin/phpcs \
@@ -373,23 +391,23 @@ RUN set -eux \
### ###
RUN set -eux \ RUN set -eux \
# -------------------- asgardcms -------------------- # -------------------- asgardcms --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require asgardcms/asgardcms-installer \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require asgardcms/asgardcms-installer \
&& ln -s /usr/local/src/composer/vendor/asgardcms/asgardcms-installer/asgardcms /usr/local/bin/ \ && ln -s /usr/local/src/composer/vendor/asgardcms/asgardcms-installer/asgardcms /usr/local/bin/ \
\ \
# -------------------- codeception -------------------- # -------------------- codeception --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require codeception/codeception \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require codeception/codeception \
&& ln -s /usr/local/src/composer/vendor/codeception/codeception/codecept /usr/local/bin/ \ && ln -s /usr/local/src/composer/vendor/codeception/codeception/codecept /usr/local/bin/ \
\ \
# -------------------- lumen -------------------- # -------------------- lumen --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require laravel/lumen-installer \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require laravel/lumen-installer \
&& ln -s /usr/local/src/composer/vendor/laravel/lumen-installer/lumen /usr/local/bin/ \ && ln -s /usr/local/src/composer/vendor/laravel/lumen-installer/lumen /usr/local/bin/ \
\ \
# -------------------- photon -------------------- # -------------------- photon --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require photoncms/installer \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require photoncms/installer \
&& ln -s /usr/local/src/composer/vendor/photoncms/installer/photon /usr/local/bin/ \ && ln -s /usr/local/src/composer/vendor/photoncms/installer/photon /usr/local/bin/ \
\ \
# -------------------- prestissimo -------------------- # -------------------- prestissimo --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require hirak/prestissimo \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require hirak/prestissimo \
\ \
\ \
&& rm -rf /tmp/* \ && rm -rf /tmp/* \
@@ -428,6 +446,12 @@ RUN set -eux \
# -------------------- mdlint -------------------- # -------------------- mdlint --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force mdlint' devilbox \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force mdlint' devilbox \
\ \
# -------------------- sass --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force sass' devilbox \
\
# -------------------- stylelint --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force stylelint' devilbox \
\
# -------------------- vue_cli -------------------- # -------------------- vue_cli --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force @vue/cli' devilbox \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force @vue/cli' devilbox \
\ \
@@ -467,12 +491,6 @@ RUN set -eux \
# -------------------- mdl -------------------- # -------------------- mdl --------------------
&& gem install mdl \ && gem install mdl \
\ \
# -------------------- scss_lint --------------------
&& gem install scss_lint -v 0.57.1 \
\
# -------------------- sass --------------------
&& gem install sass \
\
\ \
&& rm -rf /root/.gem \ && rm -rf /root/.gem \
&& rm -rf /tmp/* \ && rm -rf /tmp/* \
@@ -488,13 +506,13 @@ RUN set -eux \
### ###
RUN set -eux \ RUN set -eux \
# -------------------- ansible -------------------- # -------------------- ansible --------------------
&& pip install --no-cache-dir --force-reinstall ansible \ && pip install --no-cache-dir --force-reinstall ansible || true \
\ \
# -------------------- yamllint -------------------- # -------------------- yamllint --------------------
&& pip install --no-cache-dir --force-reinstall yamllint \ && pip install --no-cache-dir --force-reinstall yamllint || true \
\ \
# -------------------- yq -------------------- # -------------------- yq --------------------
&& pip install --no-cache-dir --force-reinstall yq \ && pip install --no-cache-dir --force-reinstall yq || true \
\ \
\ \
&& rm -rf /root/.cache/pip \ && rm -rf /root/.cache/pip \
@@ -547,53 +565,55 @@ RUN set -eux \
RUN set -eux \ RUN set -eux \
# -------------------- Software -------------------- # -------------------- Software --------------------
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \ && composer --version 2>/dev/null | grep -E 'version\s*[0-9][.0-9]+' \
&& su -c '. /opt/nvm/nvm.sh; nvm --version' devilbox | grep -E '^[.0-9]+' \ && su -c '. /opt/nvm/nvm.sh; nvm --version' devilbox | grep -E '^[0-9][.0-9]+' \
&& regex-grep --version | grep -E '[.0-9]+' \ && regex-grep --version | grep -E '[0-9][.0-9]+' \
&& dep --version 2>/dev/null | grep -Ei 'deployer\s*(version\s*)?[.0-9]+' \ && dep --version 2>/dev/null | grep -Ei 'deployer\s*(version\s*)?[0-9][.0-9]+' \
&& drush7 --version | grep -E '7[.0-9]+\s*$' \ && drush7 --version | grep -E '7[.0-9]+\s*$' \
&& drush8 --version | grep -E '8[.0-9]+\s*$' \ && drush8 --version | grep -E '8[.0-9]+\s*$' \
&& drush9 --version | grep -E '9[.0-9]+\s*$' \ && drush9 --version | grep -E '9[.0-9]+\s*$' \
&& drupal --version | grep -E 'Drupal Console Launcher\s*[.0-9]' \ && drupal --version | grep -E 'Drupal Console Launcher\s*[0-9][.0-9]' \
&& git-flow version | grep -E '[.0-9]+' \ && git-flow version | grep -E '[0-9][.0-9]+' \
&& laravel --version | grep -E '(Installer|version)\s*[.0-9]+' \ && laravel --version | grep -E '(Installer|version)\s*[0-9][.0-9]+' \
&& linkcheck --version | grep -E '^linkcheck\sv[.0-9]+' \ && linkcheck --version | grep -E '^linkcheck\sv[0-9][.0-9]+' \
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[.0-9]+' \ && su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[0-9][.0-9]+' \
&& mysqldump-secure --version | grep -E 'Version:\s*[.0-9]+' \ && mysqldump-secure --version | grep -E 'Version:\s*[0-9][.0-9]+' \
&& phpcs --version | grep -E 'version [.0-9]+' \ && phalcon commands | grep -E '[0-9][.0-9]+' \
&& phpcbf --version | grep -E 'version [.0-9]+' \ && phpcs --version | grep -E 'version [0-9][.0-9]+' \
&& phpcbf --version | grep -E 'version [0-9][.0-9]+' \
&& php-cs-fixer --version 2>&1 | grep -E 'Fixer\s+(version\s*)?[-_.0-9]+\s+' \ && php-cs-fixer --version 2>&1 | grep -E 'Fixer\s+(version\s*)?[-_.0-9]+\s+' \
&& phpmd --version | grep -E '^PHPMD [.0-9]+' \ && phpmd --version | grep -E '^PHPMD [0-9][.0-9]+' \
&& phpunit --version | grep -iE '^PHPUnit\s[.0-9]+' \ && phpunit --version | grep -iE '^PHPUnit\s[0-9][.0-9]+' \
&& symfony -V | grep -Ei 'version\s*.*v[.0-9]+' \ && symfony -V | grep -Ei 'version\s*.*v[0-9][.0-9]+' \
&& wkhtmltopdf --version | grep -E "^wkhtmltopdf [.0-9]+\s+\(.+patched.+\)" \ && wkhtmltopdf --version | grep -E "^wkhtmltopdf [0-9][.0-9]+\s+\(.+patched.+\)" \
&& wp --allow-root --version | grep -E '[.0-9]+' \ && wp --allow-root --version | grep -E '[0-9][.0-9]+' \
\ \
# -------------------- Composer -------------------- # -------------------- Composer --------------------
&& asgardcms --version 2>/dev/null | grep -Ei 'AsgardCMS\sInstaller\s[.0-9]+' \ && asgardcms --version 2>/dev/null | grep -Ei 'AsgardCMS\sInstaller\s[0-9][.0-9]+' \
&& codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[.0-9]+$' \ && codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[0-9][.0-9]+$' \
&& lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[.0-9]+$' \ && lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[0-9][.0-9]+$' \
&& photon --version | grep -E 'Installer [.0-9]+' \ && photon --version | grep -E 'Installer [0-9][.0-9]+' \
\ \
# -------------------- PIP -------------------- # -------------------- PIP --------------------
&& ansible --version | grep -E '^ansible [.0-9]+$' \ && ansible --version | grep -E '^ansible [0-9][.0-9]+$' \
&& yamllint --version 2>&1 | grep -E '[.0-9]+' \ && yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' \
&& yq --version 2>&1 | grep -E '^yq\s+[.0-9]+$' \ && yq --version 2>&1 | grep -E '^yq\s+[0-9][.0-9]+$' \
\ \
# -------------------- NPM -------------------- # -------------------- NPM --------------------
&& ng version 2>&1 | grep -iE 'Angular CLI:\s*[.0-9]+' \ && ng version 2>&1 | grep -iE 'Angular CLI:\s*[0-9][.0-9]+' \
&& eslint -v | grep -E '[.0-9]+' \ && eslint -v | grep -E '[0-9][.0-9]+' \
&& grunt --version | grep -E '[.0-9]+' \ && grunt --version | grep -E '[0-9][.0-9]+' \
&& gulp --version | grep -E '[.0-9]+' \ && gulp --version | grep -E '[0-9][.0-9]+' \
&& jsonlint --version | grep -E '[.0-9]+' \ && jsonlint --version | grep -E '[0-9][.0-9]+' \
&& pm2 --no-daemon --version | grep -E '[.0-9]+' \ && pm2 --no-daemon --version | tail -1 | grep -E '[0-9][.0-9]+' \
&& mdlint --version | grep -E '[.0-9]+' \ && mdlint --version | grep -E '[0-9][.0-9]+' \
&& vue --version | grep -E '[.0-9]+' \ && sass --version | grep -E '[0-9][.0-9]+' \
&& webpack --version | grep -E '[.0-9]+' \ && stylelint --version | grep -E '[0-9][.0-9]+' \
&& vue --version | grep -E '[0-9][.0-9]+' \
&& webpack --version | grep -E '[0-9][.0-9]+' \
\ \
# -------------------- GEM -------------------- # -------------------- GEM --------------------
&& mdl --version | grep -E '[.0-9]+' \ && mdl --version | grep -E '[0-9][.0-9]+' \
&& sass --version | grep -E '[.0-9]+' \
\ \
# -------------------- Cleanup -------------------- # -------------------- Cleanup --------------------
&& rm -rf /home/devilbox/.cache/ \ && rm -rf /home/devilbox/.cache/ \

View File

@@ -62,6 +62,7 @@ RUN set -eux \
blackfire-agent \ blackfire-agent \
build-essential \ build-essential \
bzip2 \ bzip2 \
certbot \
coreutils \ coreutils \
dnsutils \ dnsutils \
dos2unix \ dos2unix \
@@ -73,6 +74,7 @@ RUN set -eux \
git-svn \ git-svn \
ghostscript \ ghostscript \
graphviz \ graphviz \
gsfonts \
hostname \ hostname \
htop \ htop \
imagemagick \ imagemagick \
@@ -88,6 +90,8 @@ RUN set -eux \
mongodb-org-tools \ mongodb-org-tools \
moreutils \ moreutils \
mariadb-client \ mariadb-client \
mupdf \
mupdf-tools \
nano \ nano \
net-tools \ net-tools \
netcat \ netcat \
@@ -178,7 +182,7 @@ RUN set -eux \
&& git checkout 7.4.0 \ && git checkout 7.4.0 \
\ \
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush7 \ && chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush7 \
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush7 && composer install --no-interaction --no-progress --no-dev' \ && su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush7 && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install --no-interaction --no-progress --no-dev' \
&& ln -s /usr/local/src/drush7/drush /usr/local/bin/drush7 \ && ln -s /usr/local/src/drush7/drush /usr/local/bin/drush7 \
&& rm -rf /usr/local/src/drush7/.git \ && rm -rf /usr/local/src/drush7/.git \
&& rm -rf /usr/local/src/drush7/docs \ && rm -rf /usr/local/src/drush7/docs \
@@ -192,7 +196,7 @@ RUN set -eux \
&& git checkout $( git for-each-ref --format='%(*creatordate:raw)%(creatordate:raw) %(refname)' refs/tags | sort -n | grep -E 'tags/8[.0-9]+$' | tail -1 | sed 's|.*/||g' ) \ && git checkout $( git for-each-ref --format='%(*creatordate:raw)%(creatordate:raw) %(refname)' refs/tags | sort -n | grep -E 'tags/8[.0-9]+$' | tail -1 | sed 's|.*/||g' ) \
\ \
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush8 \ && chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush8 \
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush8 && composer install --no-interaction --no-progress --no-dev' \ && su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush8 && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install --no-interaction --no-progress --no-dev' \
&& ln -s /usr/local/src/drush8/drush /usr/local/bin/drush8 \ && ln -s /usr/local/src/drush8/drush /usr/local/bin/drush8 \
&& rm -rf /usr/local/src/drush8/.git \ && rm -rf /usr/local/src/drush8/.git \
&& rm -rf /usr/local/src/drush8/docs \ && rm -rf /usr/local/src/drush8/docs \
@@ -206,7 +210,7 @@ RUN set -eux \
&& git checkout $( git for-each-ref --format='%(*creatordate:raw)%(creatordate:raw) %(refname)' refs/tags | sort -n | grep -E 'tags/9[.0-9]+$' | tail -1 | sed 's|.*/||g' ) \ && git checkout $( git for-each-ref --format='%(*creatordate:raw)%(creatordate:raw) %(refname)' refs/tags | sort -n | grep -E 'tags/9[.0-9]+$' | tail -1 | sed 's|.*/||g' ) \
\ \
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush9 \ && chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush9 \
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush9 && php -d memory_limit=-1 `which composer` install --no-interaction --no-progress' \ && su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush9 && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install --no-interaction --no-progress' \
&& ln -s /usr/local/src/drush9/drush /usr/local/bin/drush9 \ && ln -s /usr/local/src/drush9/drush /usr/local/bin/drush9 \
&& rm -rf /usr/local/src/drush9/.git \ && rm -rf /usr/local/src/drush9/.git \
&& rm -rf /usr/local/src/drush9/docs \ && rm -rf /usr/local/src/drush9/docs \
@@ -231,7 +235,7 @@ RUN set -eux \
&& git checkout $(git describe --abbrev=0 --tags) \ && git checkout $(git describe --abbrev=0 --tags) \
\ \
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/laravel-installer \ && chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/laravel-installer \
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/laravel-installer && composer install --no-interaction --no-progress --no-dev' \ && su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/laravel-installer && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install --no-interaction --no-progress --no-dev' \
&& rm -rf /usr/local/src/laravel-installer/laravel/.git \ && rm -rf /usr/local/src/laravel-installer/laravel/.git \
\ \
&& ln -s /usr/local/src/laravel-installer/bin/laravel /usr/local/bin/laravel \ && ln -s /usr/local/src/laravel-installer/bin/laravel /usr/local/bin/laravel \
@@ -282,6 +286,20 @@ RUN set -eux \
&& rm -rf /usr/local/src/mysqldump-secure \ && rm -rf /usr/local/src/mysqldump-secure \
\ \
\ \
# -------------------- phalcon --------------------
&& git clone https://github.com/phalcon/phalcon-devtools /usr/local/src/phalcon-devtools \
&& cd /usr/local/src/phalcon-devtools \
&& git checkout $(git describe --abbrev=0 --tags) \
&& COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install \
\
&& chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/phalcon-devtools \
&& su - ${MY_USER} -c 'cd /usr/local/src/phalcon-devtools && ./phalcon.sh' \
&& ln -sf /usr/local/src/phalcon-devtools/phalcon /usr/local/bin/phalcon \
&& chmod +x phalcon \
&& cd / \
&& rm -rf /usr/local/src/phalcon-devtools/.git \
\
\
# -------------------- phpcs -------------------- # -------------------- phpcs --------------------
&& curl -sS -L --fail https://squizlabs.github.io/PHP_CodeSniffer/phpcs.phar > /usr/local/bin/phpcs 2>/dev/null \ && curl -sS -L --fail https://squizlabs.github.io/PHP_CodeSniffer/phpcs.phar > /usr/local/bin/phpcs 2>/dev/null \
&& chmod +x /usr/local/bin/phpcs \ && chmod +x /usr/local/bin/phpcs \
@@ -368,23 +386,23 @@ RUN set -eux \
### ###
RUN set -eux \ RUN set -eux \
# -------------------- asgardcms -------------------- # -------------------- asgardcms --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require asgardcms/asgardcms-installer \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require asgardcms/asgardcms-installer \
&& ln -s /usr/local/src/composer/vendor/asgardcms/asgardcms-installer/asgardcms /usr/local/bin/ \ && ln -s /usr/local/src/composer/vendor/asgardcms/asgardcms-installer/asgardcms /usr/local/bin/ \
\ \
# -------------------- codeception -------------------- # -------------------- codeception --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require codeception/codeception \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require codeception/codeception \
&& ln -s /usr/local/src/composer/vendor/codeception/codeception/codecept /usr/local/bin/ \ && ln -s /usr/local/src/composer/vendor/codeception/codeception/codecept /usr/local/bin/ \
\ \
# -------------------- lumen -------------------- # -------------------- lumen --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require laravel/lumen-installer \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require laravel/lumen-installer \
&& ln -s /usr/local/src/composer/vendor/laravel/lumen-installer/lumen /usr/local/bin/ \ && ln -s /usr/local/src/composer/vendor/laravel/lumen-installer/lumen /usr/local/bin/ \
\ \
# -------------------- photon -------------------- # -------------------- photon --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require photoncms/installer \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require photoncms/installer \
&& ln -s /usr/local/src/composer/vendor/photoncms/installer/photon /usr/local/bin/ \ && ln -s /usr/local/src/composer/vendor/photoncms/installer/photon /usr/local/bin/ \
\ \
# -------------------- prestissimo -------------------- # -------------------- prestissimo --------------------
&& COMPOSER_HOME="/usr/local/src/composer" composer global require hirak/prestissimo \ && COMPOSER_HOME="/usr/local/src/composer" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require hirak/prestissimo \
\ \
\ \
&& rm -rf /tmp/* \ && rm -rf /tmp/* \
@@ -423,6 +441,12 @@ RUN set -eux \
# -------------------- mdlint -------------------- # -------------------- mdlint --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force mdlint' devilbox \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force mdlint' devilbox \
\ \
# -------------------- sass --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force sass' devilbox \
\
# -------------------- stylelint --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force stylelint' devilbox \
\
# -------------------- vue_cli -------------------- # -------------------- vue_cli --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force @vue/cli' devilbox \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force @vue/cli' devilbox \
\ \
@@ -462,12 +486,6 @@ RUN set -eux \
# -------------------- mdl -------------------- # -------------------- mdl --------------------
&& gem install mdl -v 0.5.0 \ && gem install mdl -v 0.5.0 \
\ \
# -------------------- scss_lint --------------------
&& gem install scss_lint -v 0.57.1 \
\
# -------------------- sass --------------------
&& gem install sass \
\
\ \
&& rm -rf /root/.gem \ && rm -rf /root/.gem \
&& rm -rf /tmp/* \ && rm -rf /tmp/* \
@@ -483,13 +501,13 @@ RUN set -eux \
### ###
RUN set -eux \ RUN set -eux \
# -------------------- ansible -------------------- # -------------------- ansible --------------------
&& pip install --no-cache-dir --force-reinstall ansible \ && pip install --no-cache-dir --force-reinstall ansible || true \
\ \
# -------------------- yamllint -------------------- # -------------------- yamllint --------------------
&& pip install --no-cache-dir --force-reinstall yamllint \ && pip install --no-cache-dir --force-reinstall yamllint || true \
\ \
# -------------------- yq -------------------- # -------------------- yq --------------------
&& pip install --no-cache-dir --force-reinstall yq \ && pip install --no-cache-dir --force-reinstall yq || true \
\ \
\ \
&& rm -rf /root/.cache/pip \ && rm -rf /root/.cache/pip \
@@ -542,52 +560,54 @@ RUN set -eux \
RUN set -eux \ RUN set -eux \
# -------------------- Software -------------------- # -------------------- Software --------------------
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \ && composer --version 2>/dev/null | grep -E 'version\s*[0-9][.0-9]+' \
&& su -c '. /opt/nvm/nvm.sh; nvm --version' devilbox | grep -E '^[.0-9]+' \ && su -c '. /opt/nvm/nvm.sh; nvm --version' devilbox | grep -E '^[0-9][.0-9]+' \
&& regex-grep --version | grep -E '[.0-9]+' \ && regex-grep --version | grep -E '[0-9][.0-9]+' \
&& dep --version 2>/dev/null | grep -Ei 'deployer\s*(version\s*)?[.0-9]+' \ && dep --version 2>/dev/null | grep -Ei 'deployer\s*(version\s*)?[0-9][.0-9]+' \
&& drush7 --version | grep -E '7[.0-9]+\s*$' \ && drush7 --version | grep -E '7[.0-9]+\s*$' \
&& drush8 --version | grep -E '8[.0-9]+\s*$' \ && drush8 --version | grep -E '8[.0-9]+\s*$' \
&& drush9 --version | grep -E '9[.0-9]+\s*$' \ && drush9 --version | grep -E '9[.0-9]+\s*$' \
&& drupal --version | grep -E 'Drupal Console Launcher\s*[.0-9]' \ && drupal --version | grep -E 'Drupal Console Launcher\s*[0-9][.0-9]' \
&& git-flow version | grep -E '[.0-9]+' \ && git-flow version | grep -E '[0-9][.0-9]+' \
&& laravel --version | grep -E '(Installer|version)\s*[.0-9]+' \ && laravel --version | grep -E '(Installer|version)\s*[0-9][.0-9]+' \
&& linkcheck --version | grep -E '^linkcheck\sv[.0-9]+' \ && linkcheck --version | grep -E '^linkcheck\sv[0-9][.0-9]+' \
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[.0-9]+' \ && su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[0-9][.0-9]+' \
&& mysqldump-secure --version | grep -E 'Version:\s*[.0-9]+' \ && mysqldump-secure --version | grep -E 'Version:\s*[0-9][.0-9]+' \
&& phpcs --version | grep -E 'version [.0-9]+' \ && phalcon commands | grep -E '[0-9][.0-9]+' \
&& phpcbf --version | grep -E 'version [.0-9]+' \ && phpcs --version | grep -E 'version [0-9][.0-9]+' \
&& phpmd --version | grep -E '^PHPMD [.0-9]+' \ && phpcbf --version | grep -E 'version [0-9][.0-9]+' \
&& phpunit --version | grep -iE '^PHPUnit\s[.0-9]+' \ && phpmd --version | grep -E '^PHPMD [0-9][.0-9]+' \
&& symfony -V | grep -Ei 'version\s*.*v[.0-9]+' \ && phpunit --version | grep -iE '^PHPUnit\s[0-9][.0-9]+' \
&& wkhtmltopdf --version | grep -E "^wkhtmltopdf [.0-9]+\s+\(.+patched.+\)" \ && symfony -V | grep -Ei 'version\s*.*v[0-9][.0-9]+' \
&& wp --allow-root --version | grep -E '[.0-9]+' \ && wkhtmltopdf --version | grep -E "^wkhtmltopdf [0-9][.0-9]+\s+\(.+patched.+\)" \
&& wp --allow-root --version | grep -E '[0-9][.0-9]+' \
\ \
# -------------------- Composer -------------------- # -------------------- Composer --------------------
&& asgardcms --version 2>/dev/null | grep -Ei 'AsgardCMS\sInstaller\s[.0-9]+' \ && asgardcms --version 2>/dev/null | grep -Ei 'AsgardCMS\sInstaller\s[0-9][.0-9]+' \
&& codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[.0-9]+$' \ && codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[0-9][.0-9]+$' \
&& lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[.0-9]+$' \ && lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[0-9][.0-9]+$' \
&& photon --version | grep -E 'Installer [.0-9]+' \ && photon --version | grep -E 'Installer [0-9][.0-9]+' \
\ \
# -------------------- PIP -------------------- # -------------------- PIP --------------------
&& ansible --version | grep -E '^ansible [.0-9]+$' \ && ansible --version | grep -E '^ansible [0-9][.0-9]+$' \
&& yamllint --version 2>&1 | grep -E '[.0-9]+' \ && yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' \
&& yq --version 2>&1 | grep -E '^yq\s+[.0-9]+$' \ && yq --version 2>&1 | grep -E '^yq\s+[0-9][.0-9]+$' \
\ \
# -------------------- NPM -------------------- # -------------------- NPM --------------------
&& ng version 2>&1 | grep -iE 'Angular CLI:\s*[.0-9]+' \ && ng version 2>&1 | grep -iE 'Angular CLI:\s*[0-9][.0-9]+' \
&& eslint -v | grep -E '[.0-9]+' \ && eslint -v | grep -E '[0-9][.0-9]+' \
&& grunt --version | grep -E '[.0-9]+' \ && grunt --version | grep -E '[0-9][.0-9]+' \
&& gulp --version | grep -E '[.0-9]+' \ && gulp --version | grep -E '[0-9][.0-9]+' \
&& jsonlint --version | grep -E '[.0-9]+' \ && jsonlint --version | grep -E '[0-9][.0-9]+' \
&& pm2 --no-daemon --version | grep -E '[.0-9]+' \ && pm2 --no-daemon --version | tail -1 | grep -E '[0-9][.0-9]+' \
&& mdlint --version | grep -E '[.0-9]+' \ && mdlint --version | grep -E '[0-9][.0-9]+' \
&& vue --version | grep -E '[.0-9]+' \ && sass --version | grep -E '[0-9][.0-9]+' \
&& webpack --version | grep -E '[.0-9]+' \ && stylelint --version | grep -E '[0-9][.0-9]+' \
&& vue --version | grep -E '[0-9][.0-9]+' \
&& webpack --version | grep -E '[0-9][.0-9]+' \
\ \
# -------------------- GEM -------------------- # -------------------- GEM --------------------
&& mdl --version | grep -E '[.0-9]+' \ && mdl --version | grep -E '[0-9][.0-9]+' \
&& sass --version | grep -E '[.0-9]+' \
\ \
# -------------------- Cleanup -------------------- # -------------------- Cleanup --------------------
&& rm -rf /home/devilbox/.cache/ \ && rm -rf /home/devilbox/.cache/ \

View File

@@ -62,6 +62,7 @@ RUN set -eux \
blackfire-agent \ blackfire-agent \
build-essential \ build-essential \
bzip2 \ bzip2 \
certbot \
coreutils \ coreutils \
dnsutils \ dnsutils \
dos2unix \ dos2unix \
@@ -73,6 +74,7 @@ RUN set -eux \
git-svn \ git-svn \
ghostscript \ ghostscript \
graphviz \ graphviz \
gsfonts \
hostname \ hostname \
htop \ htop \
imagemagick \ imagemagick \
@@ -88,6 +90,8 @@ RUN set -eux \
mongodb-org-tools \ mongodb-org-tools \
moreutils \ moreutils \
mariadb-client \ mariadb-client \
mupdf \
mupdf-tools \
nano \ nano \
net-tools \ net-tools \
netcat \ netcat \
@@ -342,6 +346,12 @@ RUN set -eux \
# -------------------- mdlint -------------------- # -------------------- mdlint --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force mdlint' devilbox \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force mdlint' devilbox \
\ \
# -------------------- sass --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force sass' devilbox \
\
# -------------------- stylelint --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force stylelint' devilbox \
\
# -------------------- vue_cli -------------------- # -------------------- vue_cli --------------------
&& su -c '. /opt/nvm/nvm.sh; npm install -g --force @vue/cli' devilbox \ && su -c '. /opt/nvm/nvm.sh; npm install -g --force @vue/cli' devilbox \
\ \
@@ -381,12 +391,6 @@ RUN set -eux \
# -------------------- mdl -------------------- # -------------------- mdl --------------------
&& gem install mdl -v 0.5.0 \ && gem install mdl -v 0.5.0 \
\ \
# -------------------- scss_lint --------------------
&& gem install scss_lint -v 0.57.1 \
\
# -------------------- sass --------------------
&& gem install sass \
\
\ \
&& rm -rf /root/.gem \ && rm -rf /root/.gem \
&& rm -rf /tmp/* \ && rm -rf /tmp/* \
@@ -402,13 +406,13 @@ RUN set -eux \
### ###
RUN set -eux \ RUN set -eux \
# -------------------- ansible -------------------- # -------------------- ansible --------------------
&& pip install --no-cache-dir --force-reinstall ansible \ && pip install --no-cache-dir --force-reinstall ansible || true \
\ \
# -------------------- yamllint -------------------- # -------------------- yamllint --------------------
&& pip install --no-cache-dir --force-reinstall yamllint \ && pip install --no-cache-dir --force-reinstall yamllint || true \
\ \
# -------------------- yq -------------------- # -------------------- yq --------------------
&& pip install --no-cache-dir --force-reinstall yq \ && pip install --no-cache-dir --force-reinstall yq || true \
\ \
\ \
&& rm -rf /root/.cache/pip \ && rm -rf /root/.cache/pip \
@@ -461,42 +465,43 @@ RUN set -eux \
RUN set -eux \ RUN set -eux \
# -------------------- Software -------------------- # -------------------- Software --------------------
&& composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' \ && composer --version 2>/dev/null | grep -E 'version\s*[0-9][.0-9]+' \
&& su -c '. /opt/nvm/nvm.sh; nvm --version' devilbox | grep -E '^[.0-9]+' \ && su -c '. /opt/nvm/nvm.sh; nvm --version' devilbox | grep -E '^[0-9][.0-9]+' \
&& regex-grep --version | grep -E '[.0-9]+' \ && regex-grep --version | grep -E '[0-9][.0-9]+' \
&& dep --version 2>/dev/null | grep -Ei 'deployer\s*(version\s*)?[.0-9]+' \ && dep --version 2>/dev/null | grep -Ei 'deployer\s*(version\s*)?[0-9][.0-9]+' \
&& git-flow version | grep -E '[.0-9]+' \ && git-flow version | grep -E '[0-9][.0-9]+' \
&& linkcheck --version | grep -E '^linkcheck\sv[.0-9]+' \ && linkcheck --version | grep -E '^linkcheck\sv[0-9][.0-9]+' \
&& su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[.0-9]+' \ && su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[0-9][.0-9]+' \
&& mysqldump-secure --version | grep -E 'Version:\s*[.0-9]+' \ && mysqldump-secure --version | grep -E 'Version:\s*[0-9][.0-9]+' \
&& phpcs --version | grep -E 'version [.0-9]+' \ && phpcs --version | grep -E 'version [0-9][.0-9]+' \
&& phpcbf --version | grep -E 'version [.0-9]+' \ && phpcbf --version | grep -E 'version [0-9][.0-9]+' \
&& phpmd --version | grep -E '^PHPMD [.0-9]+' \ && phpmd --version | grep -E '^PHPMD [0-9][.0-9]+' \
&& symfony -V | grep -Ei 'version\s*.*v[.0-9]+' \ && symfony -V | grep -Ei 'version\s*.*v[0-9][.0-9]+' \
&& wkhtmltopdf --version | grep -E "^wkhtmltopdf [.0-9]+\s+\(.+patched.+\)" \ && wkhtmltopdf --version | grep -E "^wkhtmltopdf [0-9][.0-9]+\s+\(.+patched.+\)" \
&& wp --allow-root --version | grep -E '[.0-9]+' \ && wp --allow-root --version | grep -E '[0-9][.0-9]+' \
\ \
# -------------------- Composer -------------------- # -------------------- Composer --------------------
\ \
# -------------------- PIP -------------------- # -------------------- PIP --------------------
&& ansible --version | grep -E '^ansible [.0-9]+$' \ && ansible --version | grep -E '^ansible [0-9][.0-9]+$' \
&& yamllint --version 2>&1 | grep -E '[.0-9]+' \ && yamllint --version 2>&1 | grep -E '[0-9][.0-9]+' \
&& yq --version 2>&1 | grep -E '^yq\s+[.0-9]+$' \ && yq --version 2>&1 | grep -E '^yq\s+[0-9][.0-9]+$' \
\ \
# -------------------- NPM -------------------- # -------------------- NPM --------------------
&& ng version 2>&1 | grep -iE 'Angular CLI:\s*[.0-9]+' \ && ng version 2>&1 | grep -iE 'Angular CLI:\s*[0-9][.0-9]+' \
&& eslint -v | grep -E '[.0-9]+' \ && eslint -v | grep -E '[0-9][.0-9]+' \
&& grunt --version | grep -E '[.0-9]+' \ && grunt --version | grep -E '[0-9][.0-9]+' \
&& gulp --version | grep -E '[.0-9]+' \ && gulp --version | grep -E '[0-9][.0-9]+' \
&& jsonlint --version | grep -E '[.0-9]+' \ && jsonlint --version | grep -E '[0-9][.0-9]+' \
&& pm2 --no-daemon --version | grep -E '[.0-9]+' \ && pm2 --no-daemon --version | tail -1 | grep -E '[0-9][.0-9]+' \
&& mdlint --version | grep -E '[.0-9]+' \ && mdlint --version | grep -E '[0-9][.0-9]+' \
&& vue --version | grep -E '[.0-9]+' \ && sass --version | grep -E '[0-9][.0-9]+' \
&& webpack --version | grep -E '[.0-9]+' \ && stylelint --version | grep -E '[0-9][.0-9]+' \
&& vue --version | grep -E '[0-9][.0-9]+' \
&& webpack --version | grep -E '[0-9][.0-9]+' \
\ \
# -------------------- GEM -------------------- # -------------------- GEM --------------------
&& mdl --version | grep -E '[.0-9]+' \ && mdl --version | grep -E '[0-9][.0-9]+' \
&& sass --version | grep -E '[.0-9]+' \
\ \
# -------------------- Cleanup -------------------- # -------------------- Cleanup --------------------
&& rm -rf /home/devilbox/.cache/ \ && rm -rf /home/devilbox/.cache/ \

View File

@@ -73,12 +73,14 @@ help:
gen-readme: gen-readme:
ifeq ($(strip $(VERSION)),) ifeq ($(strip $(VERSION)),)
@echo "Generate README.md for all PHP versions"
cd build; ./gen-readme.sh cd build; ./gen-readme.sh
else else
@echo "Generate README.md for PHP $(VERSION)"
@$(MAKE) --no-print-directory _check-version @$(MAKE) --no-print-directory _check-version
@$(MAKE) --no-print-directory _check-image-exists _EXIST_IMAGE=base @$(MAKE) --no-print-directory _check-image-exists _EXIST_IMAGE=base
@$(MAKE) --no-print-directory _check-image-exists _EXIST_IMAGE=mods @$(MAKE) --no-print-directory _check-image-exists _EXIST_IMAGE=mods
cd build; ./gen-readme.sh ${VERSION} cd build; ./gen-readme.sh $(VERSION)
endif endif
@@ -227,6 +229,52 @@ test-work: _check-version
./tests/test.sh ${VERSION} work ./tests/test.sh ${VERSION} work
# -------------------------------------------------------------------------------------------------
# DOCKERHUB TARGETS
# -------------------------------------------------------------------------------------------------
login:
ifeq ($(strip $(USERNAME)),)
@$(info This make target requires the USERNAME variable to be set.)
@$(info make login USERNAME= PASSWORD=)
@$(info )
@$(error Exiting)
endif
ifeq ($(strip $(PASSWORD)),)
@$(info This make target requires the PASSWORD variable to be set.)
@$(info make login USERNAME= PASSWORD=)
@$(info )
@$(error Exiting)
endif
@yes | docker login --username $(USERNAME) --password $(PASSWORD)
push:
ifeq ($(strip $(TAG)),)
@$(info This make target requires the TAG variable to be set.)
@$(info make push TAG=)
@$(info )
@$(error Exiting)
endif
docker push $(IMAGE):$(TAG)
tag:
ifeq ($(strip $(OLD_TAG)),)
@$(info This make target requires the OLD_TAG variable to be set.)
@$(info make tag OLD_TAG= NEW_TAG=)
@$(info )
@$(error Exiting)
endif
ifeq ($(strip $(NEW_TAG)),)
@$(info This make target requires the NEW_TAG variable to be set.)
@$(info make tag OLD_TAG= NEW_TAG=)
@$(info )
@$(error Exiting)
endif
docker tag $(IMAGE):$(OLD_TAG) $(IMAGE):$(NEW_TAG)
# ------------------------------------------------------------------------------------------------- # -------------------------------------------------------------------------------------------------
# HELPER TARGETS # HELPER TARGETS
# ------------------------------------------------------------------------------------------------- # -------------------------------------------------------------------------------------------------
@@ -274,6 +322,7 @@ endif
endif endif
endif endif
endif endif
@echo "Version $(VERSION) is valid"
_check-image-exists: _check-image-exists:

View File

@@ -607,52 +607,52 @@ Check out this table to see which Docker image provides what PHP modules.
<tr> <tr>
<th>5.3</th> <th>5.3</th>
<td id="53-base">Core, ctype, curl, date, dom, ereg, fileinfo, filter, hash, iconv, json, libxml, mysql, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, recode, Reflection, session, SimpleXML, SPL, SQLite, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib</td> <td id="53-base">Core, ctype, curl, date, dom, ereg, fileinfo, filter, hash, iconv, json, libxml, mysql, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, recode, Reflection, session, SimpleXML, SPL, SQLite, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib</td>
<td id="53-mods">amqp, apc, apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, ereg, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imap, interbase, intl, ioncube, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongo, mongodb, msgpack, mysql, mysqli, mysqlnd, OAuth, oci8, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, phalcon, Phar, posix, pspell, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, SQLite, sqlite3, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib</td> <td id="53-mods">amqp, apc, apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, ereg, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imap, interbase, intl, ioncube, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongo, mongodb, msgpack, mysql, mysqli, mysqlnd, OAuth, oci8, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, phalcon, Phar, posix, pspell, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, SQLite, sqlite3, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, yaml, Zend OPcache, zip, zlib</td>
</tr> </tr>
<tr> <tr>
<th>5.4</th> <th>5.4</th>
<td id="54-base">Core, ctype, curl, date, dom, ereg, fileinfo, filter, hash, iconv, json, libxml, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, recode, Reflection, session, SimpleXML, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib</td> <td id="54-base">Core, ctype, curl, date, dom, ereg, fileinfo, filter, hash, iconv, json, libxml, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, recode, Reflection, session, SimpleXML, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib</td>
<td id="54-mods">amqp, apc, apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, ereg, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imap, interbase, intl, ioncube, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongo, mongodb, msgpack, mysql, mysqli, mysqlnd, OAuth, oci8, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, phalcon, Phar, posix, pspell, psr, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, sqlite3, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib</td> <td id="54-mods">amqp, apc, apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, ereg, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imap, interbase, intl, ioncube, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongo, mongodb, msgpack, mysql, mysqli, mysqlnd, OAuth, oci8, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, phalcon, Phar, posix, pspell, psr, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, sqlite3, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, yaml, Zend OPcache, zip, zlib</td>
</tr> </tr>
<tr> <tr>
<th>5.5</th> <th>5.5</th>
<td id="55-base">Core, ctype, curl, date, dom, ereg, fileinfo, filter, ftp, hash, iconv, json, libxml, mbstring, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, Reflection, session, SimpleXML, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib</td> <td id="55-base">Core, ctype, curl, date, dom, ereg, fileinfo, filter, ftp, hash, iconv, json, libxml, mbstring, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, Reflection, session, SimpleXML, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib</td>
<td id="55-mods">amqp, apc, apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, ereg, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imap, interbase, intl, ioncube, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongo, mongodb, msgpack, mysql, mysqli, mysqlnd, OAuth, oci8, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, phalcon, Phar, posix, pspell, psr, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, sqlite3, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib</td> <td id="55-mods">amqp, apc, apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, ereg, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, ioncube, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongo, mongodb, msgpack, mysql, mysqli, mysqlnd, OAuth, oci8, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, phalcon, Phar, posix, pspell, psr, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, sqlite3, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, yaml, Zend OPcache, zip, zlib</td>
</tr> </tr>
<tr> <tr>
<th>5.6</th> <th>5.6</th>
<td id="56-base">Core, ctype, curl, date, dom, ereg, fileinfo, filter, ftp, hash, iconv, json, libxml, mbstring, mhash, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, Reflection, session, SimpleXML, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib</td> <td id="56-base">Core, ctype, curl, date, dom, ereg, fileinfo, filter, ftp, hash, iconv, json, libxml, mbstring, mhash, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, Reflection, session, SimpleXML, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib</td>
<td id="56-mods">amqp, apc, apcu, bcmath, blackfire, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, ereg, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, ioncube, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mhash, mongo, mongodb, msgpack, mysql, mysqli, mysqlnd, OAuth, oci8, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, phalcon, Phar, posix, pspell, psr, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, sqlite3, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib</td> <td id="56-mods">amqp, apc, apcu, bcmath, blackfire, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, ereg, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, ioncube, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mhash, mongo, mongodb, msgpack, mysql, mysqli, mysqlnd, OAuth, oci8, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, phalcon, Phar, posix, pspell, psr, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, sqlite3, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, yaml, Zend OPcache, zip, zlib</td>
</tr> </tr>
<tr> <tr>
<th>7.0</th> <th>7.0</th>
<td id="70-base">Core, ctype, curl, date, dom, fileinfo, filter, ftp, hash, iconv, json, libxml, mbstring, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, Reflection, session, SimpleXML, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib</td> <td id="70-base">Core, ctype, curl, date, dom, fileinfo, filter, ftp, hash, iconv, json, libxml, mbstring, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, Reflection, session, SimpleXML, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib</td>
<td id="70-mods">amqp, apcu, bcmath, blackfire, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, ioncube, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongodb, msgpack, mysqli, mysqlnd, OAuth, oci8, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, PDO_OCI, pdo_pgsql, pdo_sqlite, pdo_sqlsrv, pgsql, phalcon, Phar, posix, pspell, psr, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, sqlite3, sqlsrv, ssh2, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib</td> <td id="70-mods">amqp, apcu, bcmath, blackfire, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, ioncube, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongodb, msgpack, mysqli, mysqlnd, OAuth, oci8, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, PDO_OCI, pdo_pgsql, pdo_sqlite, pdo_sqlsrv, pgsql, phalcon, Phar, posix, pspell, psr, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, sqlite3, sqlsrv, ssh2, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, yaml, Zend OPcache, zip, zlib</td>
</tr> </tr>
<tr> <tr>
<th>7.1</th> <th>7.1</th>
<td id="71-base">Core, ctype, curl, date, dom, fileinfo, filter, ftp, hash, iconv, json, libxml, mbstring, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, Reflection, session, SimpleXML, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib</td> <td id="71-base">Core, ctype, curl, date, dom, fileinfo, filter, ftp, hash, iconv, json, libxml, mbstring, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, Reflection, session, SimpleXML, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib</td>
<td id="71-mods">amqp, apcu, bcmath, blackfire, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, ioncube, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongodb, msgpack, mysqli, mysqlnd, OAuth, oci8, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, PDO_OCI, pdo_pgsql, pdo_sqlite, pdo_sqlsrv, pgsql, phalcon, Phar, posix, pspell, psr, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, solr, SPL, sqlite3, sqlsrv, ssh2, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib</td> <td id="71-mods">amqp, apcu, bcmath, blackfire, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, ioncube, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongodb, msgpack, mysqli, mysqlnd, OAuth, oci8, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, PDO_OCI, pdo_pgsql, pdo_sqlite, pdo_sqlsrv, pgsql, phalcon, Phar, posix, pspell, psr, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, solr, SPL, sqlite3, sqlsrv, ssh2, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, yaml, Zend OPcache, zip, zlib</td>
</tr> </tr>
<tr> <tr>
<th>7.2</th> <th>7.2</th>
<td id="72-base">Core, ctype, curl, date, dom, fileinfo, filter, ftp, hash, iconv, json, libxml, mbstring, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, Reflection, session, SimpleXML, sodium, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib</td> <td id="72-base">Core, ctype, curl, date, dom, fileinfo, filter, ftp, hash, iconv, json, libxml, mbstring, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, Reflection, session, SimpleXML, sodium, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib</td>
<td id="72-mods">amqp, apcu, bcmath, blackfire, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, ioncube, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongodb, msgpack, mysqli, mysqlnd, OAuth, oci8, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, PDO_OCI, pdo_pgsql, pdo_sqlite, pdo_sqlsrv, pgsql, phalcon, Phar, posix, pspell, psr, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, sodium, solr, SPL, sqlite3, sqlsrv, ssh2, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib</td> <td id="72-mods">amqp, apcu, bcmath, blackfire, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, ioncube, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongodb, msgpack, mysqli, mysqlnd, OAuth, oci8, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, PDO_OCI, pdo_pgsql, pdo_sqlite, pdo_sqlsrv, pgsql, phalcon, Phar, posix, pspell, psr, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, sodium, solr, SPL, sqlite3, sqlsrv, ssh2, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, yaml, Zend OPcache, zip, zlib</td>
</tr> </tr>
<tr> <tr>
<th>7.3</th> <th>7.3</th>
<td id="73-base">Core, ctype, curl, date, dom, fileinfo, filter, ftp, hash, iconv, json, libxml, mbstring, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, Reflection, session, SimpleXML, sodium, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib</td> <td id="73-base">Core, ctype, curl, date, dom, fileinfo, filter, ftp, hash, iconv, json, libxml, mbstring, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, Reflection, session, SimpleXML, sodium, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib</td>
<td id="73-mods">amqp, apcu, bcmath, blackfire, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, ioncube, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongodb, msgpack, mysqli, mysqlnd, OAuth, oci8, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, PDO_OCI, pdo_pgsql, pdo_sqlite, pdo_sqlsrv, pgsql, phalcon, Phar, posix, pspell, psr, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, sodium, solr, SPL, sqlite3, sqlsrv, ssh2, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib</td> <td id="73-mods">amqp, apcu, bcmath, blackfire, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, ioncube, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongodb, msgpack, mysqli, mysqlnd, OAuth, oci8, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, PDO_OCI, pdo_pgsql, pdo_sqlite, pdo_sqlsrv, pgsql, phalcon, Phar, posix, pspell, psr, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, sodium, solr, SPL, sqlite3, sqlsrv, ssh2, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, yaml, Zend OPcache, zip, zlib</td>
</tr> </tr>
<tr> <tr>
<th>7.4</th> <th>7.4</th>
<td id="74-base">Core, ctype, curl, date, dom, fileinfo, filter, ftp, hash, iconv, json, libxml, mbstring, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, Reflection, session, SimpleXML, sodium, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib</td> <td id="74-base">Core, ctype, curl, date, dom, fileinfo, filter, ftp, hash, iconv, json, libxml, mbstring, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, Reflection, session, SimpleXML, sodium, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib</td>
<td id="74-mods">amqp, apcu, bcmath, blackfire, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, exif, FFI, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, intl, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongodb, msgpack, mysqli, mysqlnd, OAuth, oci8, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, PDO_OCI, pdo_pgsql, pdo_sqlite, pgsql, phalcon, Phar, posix, pspell, psr, rdkafka, readline, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, sodium, solr, SPL, sqlite3, ssh2, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib</td> <td id="74-mods">amqp, apcu, bcmath, blackfire, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, exif, FFI, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, intl, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongodb, msgpack, mysqli, mysqlnd, OAuth, oci8, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, PDO_OCI, pdo_pgsql, pdo_sqlite, pgsql, phalcon, Phar, posix, pspell, psr, rdkafka, readline, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, sodium, solr, SPL, sqlite3, ssh2, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, yaml, Zend OPcache, zip, zlib</td>
</tr> </tr>
<tr> <tr>
<th>8.0</th> <th>8.0</th>
<td id="80-base">Core, ctype, curl, date, dom, FFI, fileinfo, filter, ftp, hash, iconv, json, libxml, mbstring, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, Reflection, session, SimpleXML, sodium, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib</td> <td id="80-base">Core, ctype, curl, date, dom, FFI, fileinfo, filter, ftp, hash, iconv, json, libxml, mbstring, mysqlnd, openssl, pcre, PDO, pdo_sqlite, Phar, posix, readline, Reflection, session, SimpleXML, sodium, SPL, sqlite3, standard, tokenizer, xml, xmlreader, xmlwriter, zlib</td>
<td id="80-mods">bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, exif, FFI, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, intl, json, ldap, libxml, mbstring, memcached, mongodb, mysqli, mysqlnd, oci8, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, PDO_OCI, pdo_pgsql, pdo_sqlite, pgsql, Phar, posix, pspell, readline, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, sodium, SPL, sqlite3, standard, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib</td> <td id="80-mods">bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, exif, FFI, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, intl, json, ldap, libxml, mbstring, memcached, mysqli, mysqlnd, oci8, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, PDO_OCI, pdo_pgsql, pdo_sqlite, pgsql, Phar, posix, pspell, readline, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, sodium, SPL, sqlite3, standard, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, xml, xmlreader, xmlwriter, xsl, Zend OPcache, zip, zlib</td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
@@ -1069,7 +1069,7 @@ You want to use tools such as `git`, `drush`, `composer`, `npm`, `eslint`, `phpc
<td>Sass CSS compiler.</td> <td>Sass CSS compiler.</td>
</tr> </tr>
<tr> <tr>
<td><a href="https://github.com/brigade/scss-lint">scss-lint</a></td> <td><a href="https://github.com/stylelint/stylelint">stylelint</a></td>
<td>Sass/CSS command line linter.</td> <td>Sass/CSS command line linter.</td>
</tr> </tr>
<tr> <tr>

View File

@@ -76,6 +76,9 @@ RUN set -eux \
blackfire-agent \ blackfire-agent \
build-essential \ build-essential \
bzip2 \ bzip2 \
{% if php_version != 5.2 and php_version != 5.3 and php_version != 5.4 and php_version != 5.5 %}
certbot \
{% endif %}
coreutils \ coreutils \
dnsutils \ dnsutils \
dos2unix \ dos2unix \
@@ -87,6 +90,7 @@ RUN set -eux \
git-svn \ git-svn \
ghostscript \ ghostscript \
graphviz \ graphviz \
gsfonts \
hostname \ hostname \
htop \ htop \
imagemagick \ imagemagick \
@@ -106,6 +110,8 @@ RUN set -eux \
{% else %} {% else %}
mysql-client \ mysql-client \
{% endif %} {% endif %}
mupdf \
mupdf-tools \
nano \ nano \
net-tools \ net-tools \
netcat \ netcat \
@@ -224,13 +230,13 @@ RUN set -eux \
{%- endif -%} {%- endif -%}
{#- Version specific gem version available? -#} {#- Version specific gem version available? -#}
{%- if php_version in composer_available[tool] and 'version' in composer_available[tool][php_version] -%} {%- if php_version in composer_available[tool] and 'version' in composer_available[tool][php_version] -%}
{{ "\n\t" }}&& COMPOSER_HOME="{{ composer_home }}" composer global require {{ composer_available[tool]['name'] }}:{{ composer_available[tool][php_version]['version'] }} \ {{ "\n\t" }}&& COMPOSER_HOME="{{ composer_home }}" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require {{ composer_available[tool]['name'] }}:{{ composer_available[tool][php_version]['version'] }} \
{#- Generic gem version available? -#} {#- Generic gem version available? -#}
{%- elif 'all' in composer_available[tool] and 'version' in composer_available[tool]['all'] -%} {%- elif 'all' in composer_available[tool] and 'version' in composer_available[tool]['all'] -%}
{{ "\n\t" }}&& COMPOSER_HOME="{{ composer_home }}" composer global require {{ composer_available[tool]['name'] }}:{{ composer_available[tool]['all']['version'] }} \ {{ "\n\t" }}&& COMPOSER_HOME="{{ composer_home }}" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require {{ composer_available[tool]['name'] }}:{{ composer_available[tool]['all']['version'] }} \
{#- No version info available -#} {#- No version info available -#}
{%- else -%} {%- else -%}
{{ "\n\t" }}&& COMPOSER_HOME="{{ composer_home }}" composer global require {{ composer_available[tool]['name'] }} \ {{ "\n\t" }}&& COMPOSER_HOME="{{ composer_home }}" COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer global require {{ composer_available[tool]['name'] }} \
{%- endif -%} {%- endif -%}
{#- Symlinks available? -#} {#- Symlinks available? -#}
{%- if 'link' in composer_available[tool] -%} {%- if 'link' in composer_available[tool] -%}
@@ -381,13 +387,13 @@ RUN set -eux \
{%- endif -%} {%- endif -%}
{#- Version specific gem version available? -#} {#- Version specific gem version available? -#}
{%- if php_version in pip_available[tool] and 'version' in pip_available[tool][php_version] -%} {%- if php_version in pip_available[tool] and 'version' in pip_available[tool][php_version] -%}
{{ "\n\t" }}&& pip install --no-cache-dir --force-reinstall {{ pip_available[tool]['name'] }}=={{ pip_available[tool][php_version]['version'] }} \ {{ "\n\t" }}&& pip install --no-cache-dir --force-reinstall {{ pip_available[tool]['name'] }}=={{ pip_available[tool][php_version]['version'] }} || true \
{#- Generic gem version available? -#} {#- Generic gem version available? -#}
{%- elif 'all' in pip_available[tool] and 'version' in pip_available[tool]['all'] -%} {%- elif 'all' in pip_available[tool] and 'version' in pip_available[tool]['all'] -%}
{{ "\n\t" }}&& pip install --no-cache-dir --force-reinstall {{ pip_available[tool]['name'] }}=={{ pip_available[tool]['all']['version'] }} \ {{ "\n\t" }}&& pip install --no-cache-dir --force-reinstall {{ pip_available[tool]['name'] }}=={{ pip_available[tool]['all']['version'] }} || true \
{#- No version info available -#} {#- No version info available -#}
{%- else -%} {%- else -%}
{{ "\n\t" }}&& pip install --no-cache-dir --force-reinstall {{ pip_available[tool]['name'] }} \ {{ "\n\t" }}&& pip install --no-cache-dir --force-reinstall {{ pip_available[tool]['name'] }} || true \
{%- endif -%} {%- endif -%}
{#- Fail fast version -#} {#- Fail fast version -#}
{%- if build_fail_fast -%} {%- if build_fail_fast -%}

View File

@@ -108,6 +108,7 @@ extensions_enabled:
- xmlrpc - xmlrpc
- xmlwriter - xmlwriter
- xsl - xsl
- yaml
- zip - zip
@@ -342,19 +343,35 @@ extensions_available:
all: all:
type: pecl type: pecl
imagick: imagick:
disabled: [5.2, 5.3, 5.4, 5.5, 8.0] # 5.3, 5.4 and 5.5 segfaults disabled: [5.2, 5.3, 5.4, 8.0] # Only available since 5.3. 5.3 and 5.4 segfaults
5.5:
type: pecl
build_dep: [libmagickwand-dev, libwebp5, ghostscript]
run_dep: [libmagickwand-6.q16-2, libwebp5, ghostscript]
5.6: 5.6:
type: pecl type: pecl
run_dep: [libmagickwand-6.q16-3, libwebp6] run_dep: [libmagickwand-6.q16-3, libwebp6, ghostscript]
7.0: 7.0:
type: pecl type: pecl
run_dep: [libmagickwand-6.q16-3, libwebp6] run_dep: [libmagickwand-6.q16-3, libwebp6, ghostscript]
all: all:
type: pecl type: pecl
build_dep: [libmagickwand-dev, libwebp6] build_dep: [libmagickwand-dev, libwebp6, ghostscript]
run_dep: [libmagickwand-6.q16-6, libwebp-dev] run_dep: [libmagickwand-6.q16-6, libwebp-dev, ghostscript]
# https://bugs.php.net/bug.php?id=77683
# https://github.com/Imagick/imagick/issues/262 (policy prevents PDF from being read)
post: |
sed -i'' 's|.*"thread".*| <policy domain="resource" name="thread" value="1"/>|g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS2".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS3".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"EPS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PDF".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"XPS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="coder".*"PS".*||g' /etc/ImageMagick-6/policy.xml \
&& sed -i'' 's|.*<policy domain="delegate".*pattern="gs".*||g' /etc/ImageMagick-6/policy.xml \
imap: imap:
disabled: [7.4, 8.0] # TODO: re-enable. currently fails with: configure: error: OpenSSL libraries not found. disabled: [8.0] # TODO: re-enable. currently fails with: configure: error: OpenSSL libraries not found.
all: all:
type: builtin type: builtin
pre: ln -s /usr/lib/x86_64-linux-gnu/libkrb5* /usr/lib/ pre: ln -s /usr/lib/x86_64-linux-gnu/libkrb5* /usr/lib/
@@ -499,7 +516,7 @@ extensions_available:
command: yes yes | pecl install mongo command: yes yes | pecl install mongo
build_dep: [libssl-dev, libsasl2-dev] build_dep: [libssl-dev, libsasl2-dev]
mongodb: mongodb:
disabled: [5.2] disabled: [5.2, 8.0]
5.3: 5.3:
type: pecl type: pecl
version: 0.6.3 version: 0.6.3
@@ -509,6 +526,9 @@ extensions_available:
5.5: 5.5:
type: pecl type: pecl
version: 1.5.5 version: 1.5.5
5.6:
type: pecl
version: 1.7.5
8.0: 8.0:
type: git type: git
git_url: https://github.com/mongodb/mongo-php-driver git_url: https://github.com/mongodb/mongo-php-driver
@@ -715,6 +735,11 @@ extensions_available:
version: 5.3.0 version: 5.3.0
build_dep: [unixodbc-dev] build_dep: [unixodbc-dev]
run_dep: [unixodbc] run_dep: [unixodbc]
7.1:
type: pecl
version: 5.6.1
build_dep: [unixodbc-dev]
run_dep: [unixodbc]
all: all:
type: pecl type: pecl
build_dep: [unixodbc-dev] build_dep: [unixodbc-dev]
@@ -818,6 +843,10 @@ extensions_available:
# TODO: This is a nasty work-around to fix current phpredis implementation for PHP 8.0 # TODO: This is a nasty work-around to fix current phpredis implementation for PHP 8.0
command: | command: |
sed -i'' 's/, ZSTR_LEN(ra->algorithm)//g' redis_array_impl.c \ sed -i'' 's/, ZSTR_LEN(ra->algorithm)//g' redis_array_impl.c \
&& sed -i'' 's|.*sctx->cb\.no_separation.*||g' library.c \
&& sed -i'' 's|.*sctx->cb\.no_separation.*||g' redis_array_impl.c \
&& sed -i'' 's|.*sctx->cb\.no_separation.*||g' cluster_library.c \
&& sed -i'' 's|.*->no_separation.*||g' redis_array_impl.c \
&& phpize \ && phpize \
&& ./configure --enable-redis \ && ./configure --enable-redis \
&& make -j$(getconf _NPROCESSORS_ONLN) \ && make -j$(getconf _NPROCESSORS_ONLN) \
@@ -855,6 +884,10 @@ extensions_available:
simplexml: simplexml:
already_avail: "{{ php_all_versions }}" already_avail: "{{ php_all_versions }}"
snmp: snmp:
7.4:
type: builtin
build_dep: [libssl-dev, libsnmp-dev, snmp]
run_dep: [snmp]
all: all:
type: builtin type: builtin
configure: --with-openssl-dir configure: --with-openssl-dir
@@ -891,6 +924,11 @@ extensions_available:
version: 5.3.0 version: 5.3.0
build_dep: [unixodbc-dev] build_dep: [unixodbc-dev]
run_dep: [unixodbc] run_dep: [unixodbc]
7.1:
type: pecl
version: 5.6.1
build_dep: [unixodbc-dev]
run_dep: [unixodbc]
all: all:
type: pecl type: pecl
build_dep: [unixodbc-dev] build_dep: [unixodbc-dev]
@@ -962,42 +1000,21 @@ extensions_available:
tokenizer: tokenizer:
already_avail: "{{ php_all_versions }}" already_avail: "{{ php_all_versions }}"
uploadprogress: uploadprogress:
7.0: disabled: [8.0]
type: git 5.2:
git_url: https://github.com/php/pecl-php-uploadprogress
configure: --enable-uploadprogress
7.1:
type: git
git_url: https://github.com/php/pecl-php-uploadprogress
configure: --enable-uploadprogress
7.2:
type: git
git_url: https://github.com/php/pecl-php-uploadprogress
configure: --enable-uploadprogress
7.3:
type: git
git_url: https://github.com/php/pecl-php-uploadprogress
configure: --enable-uploadprogress
7.4:
type: git
git_url: https://github.com/php/pecl-php-uploadprogress
configure: --enable-uploadprogress
8.0:
type: git
git_url: https://github.com/php/pecl-php-uploadprogress
command: |
true \
# FIXME: This is a work-around to mitigate compile error with PHP 8.0
&& rgrep -I 'TSRMLS_CC' | cut -d':' -f1 | sort -u | xargs -n1 sed -i'' 's/TSRMLS_CC)/)/g' || true \
&& rgrep -I 'TSRMLS_CC' | cut -d':' -f1 | sort -u | xargs -n1 sed -i'' 's/TSRMLS_CC,/,/g' || true \
&& rgrep -I 'TSRMLS_DC' | cut -d':' -f1 | sort -u | xargs -n1 sed -i'' 's/TSRMLS_DC)/)/g' || true \
&& rgrep -I 'TSRMLS_DC' | cut -d':' -f1 | sort -u | xargs -n1 sed -i'' 's/TSRMLS_DC,/,/g' || true \
&& phpize \
&& ./configure --enable-uploadprogress \
&& make \
&& make install \
all:
type: pecl type: pecl
5.3:
type: pecl
5.4:
type: pecl
5.5:
type: pecl
5.6:
type: pecl
all:
type: git
git_url: https://github.com/php/pecl-php-uploadprogress
configure: --enable-uploadprogress
wddx: wddx:
# https://wiki.php.net/rfc/deprecate-and-remove-ext-wddx # https://wiki.php.net/rfc/deprecate-and-remove-ext-wddx
disabled: [7.4, 8.0] disabled: [7.4, 8.0]
@@ -1022,6 +1039,9 @@ extensions_available:
5.6: 5.6:
type: pecl type: pecl
version: 2.4.1 version: 2.4.1
7.0:
type: pecl
version: 2.9.0
all: all:
type: pecl type: pecl
xml: xml:
@@ -1029,6 +1049,7 @@ extensions_available:
xmlreader: xmlreader:
already_avail: "{{ php_all_versions }}" already_avail: "{{ php_all_versions }}"
xmlrpc: xmlrpc:
disabled: [8.0]
7.4: 7.4:
type: builtin type: builtin
configure: --with-iconv-dir=/usr configure: --with-iconv-dir=/usr
@@ -1043,6 +1064,27 @@ extensions_available:
type: builtin type: builtin
build_dep: [libxslt-dev] build_dep: [libxslt-dev]
run_dep: [libxslt1.1] run_dep: [libxslt1.1]
yaml:
disabled: [5.2, 8.0]
5.3:
type: pecl
version: 1.3.2
5.4:
type: pecl
version: 1.3.2
5.5:
type: pecl
version: 1.3.2
5.6:
type: pecl
version: 1.3.2
7.0:
type: pecl
version: 2.0.4
all:
type: pecl
build_dep: [libyaml-dev]
run_dep: [libyaml-0-2]
zip: zip:
5.2: 5.2:
type: builtin type: builtin

View File

@@ -43,10 +43,9 @@ composer_enabled:
# ------------------------------------------------------------------------------------------------- # -------------------------------------------------------------------------------------------------
gem_enabled: gem_enabled:
- mixlib_config - mixlib_config
- ffi
- rb_inotify - rb_inotify
- mdl - mdl
- scss_lint
- sass
# ------------------------------------------------------------------------------------------------- # -------------------------------------------------------------------------------------------------
@@ -62,6 +61,8 @@ npm_enabled:
# https://github.com/Unitech/pm2 # https://github.com/Unitech/pm2
- pm2 - pm2
- mdlint - mdlint
- sass
- stylelint
- vue_cli - vue_cli
- vue_cli_service_global - vue_cli_service_global
- webpack - webpack
@@ -207,22 +208,22 @@ apt_repositories_available:
composer_available: composer_available:
asgardcms: asgardcms:
disabled: [5.2, 5.3, 5.4, 8.0] disabled: [5.2, 5.3, 5.4, 8.0]
check: asgardcms --version 2>/dev/null | grep -Ei 'AsgardCMS\sInstaller\s[.0-9]+' check: asgardcms --version 2>/dev/null | grep -Ei 'AsgardCMS\sInstaller\s[0-9][.0-9]+'
name: asgardcms/asgardcms-installer name: asgardcms/asgardcms-installer
link: asgardcms link: asgardcms
codeception: codeception:
disabled: [5.2, 8.0] disabled: [5.2, 8.0]
check: codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[.0-9]+$' check: codecept --version 2>/dev/null | grep -E '^Codeception(\sversion)?\s[0-9][.0-9]+$'
name: codeception/codeception name: codeception/codeception
link: codecept link: codecept
lumen: lumen:
disabled: [5.2, 5.3, 5.4, 8.0] disabled: [5.2, 5.3, 5.4, 8.0]
check: lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[.0-9]+$' check: lumen --version 2>/dev/null | grep -E '^Lumen Installer\s[0-9][.0-9]+$'
name: laravel/lumen-installer name: laravel/lumen-installer
link: lumen link: lumen
photon: photon:
disabled: [5.2, 5.3, 5.4, 8.0] disabled: [5.2, 5.3, 5.4, 8.0]
check: photon --version | grep -E 'Installer [.0-9]+' check: photon --version | grep -E 'Installer [0-9][.0-9]+'
name: photoncms/installer name: photoncms/installer
link: photon link: photon
prestissimo: prestissimo:
@@ -248,13 +249,20 @@ gem_available:
name: mixlib-config name: mixlib-config
all: all:
version: 2.2.4 version: 2.2.4
# Required by rb-inotify, as otherwise rb-inotify will pull ffi as a dependency in a
# version which is not supported by the ruby version (>= 2.3)
ffi:
name: ffi
disabled: [5.6, 7.0, 7.1, 7.2, 7.3, 7.4, 8.0]
all:
version: 1.12.2
rb_inotify: rb_inotify:
name: rb-inotify name: rb-inotify
all: all:
version: 0.9.10 version: 0.9.10
mdl: mdl:
name: mdl name: mdl
check: mdl --version | grep -E '[.0-9]+' check: mdl --version | grep -E '[0-9][.0-9]+'
8.0: 8.0:
version: 0.5.0 version: 0.5.0
7.4: 7.4:
@@ -271,13 +279,6 @@ gem_available:
version: 0.5.0 version: 0.5.0
5.2: 5.2:
version: 0.5.0 version: 0.5.0
scss_lint:
name: scss_lint
all:
version: 0.57.1
sass:
name: sass
check: sass --version | grep -E '[.0-9]+'
# ------------------------------------------------------------------------------------------------- # -------------------------------------------------------------------------------------------------
@@ -296,37 +297,43 @@ gem_available:
npm_available: npm_available:
angular_cli: angular_cli:
name: "@angular/cli" name: "@angular/cli"
check: ng version 2>&1 | grep -iE 'Angular CLI:\s*[.0-9]+' check: ng version 2>&1 | grep -iE 'Angular CLI:\s*[0-9][.0-9]+'
eslint: eslint:
name: eslint name: eslint
check: eslint -v | grep -E '[.0-9]+' check: eslint -v | grep -E '[0-9][.0-9]+'
grunt: grunt:
name: grunt name: grunt
grunt_cli: grunt_cli:
name: grunt-cli name: grunt-cli
check: grunt --version | grep -E '[.0-9]+' check: grunt --version | grep -E '[0-9][.0-9]+'
gulp: gulp:
name: gulp name: gulp
check: gulp --version | grep -E '[.0-9]+' check: gulp --version | grep -E '[0-9][.0-9]+'
jsonlint: jsonlint:
name: jsonlint name: jsonlint
check: jsonlint --version | grep -E '[.0-9]+' check: jsonlint --version | grep -E '[0-9][.0-9]+'
pm2: pm2:
name: pm2 name: pm2
check: pm2 --no-daemon --version | grep -E '[.0-9]+' check: pm2 --no-daemon --version | tail -1 | grep -E '[0-9][.0-9]+'
mdlint: mdlint:
name: mdlint name: mdlint
check: mdlint --version | grep -E '[.0-9]+' check: mdlint --version | grep -E '[0-9][.0-9]+'
sass:
name: sass
check: sass --version | grep -E '[0-9][.0-9]+'
stylelint:
name: stylelint
check: stylelint --version | grep -E '[0-9][.0-9]+'
vue_cli: vue_cli:
name: "@vue/cli" name: "@vue/cli"
check: vue --version | grep -E '[.0-9]+' check: vue --version | grep -E '[0-9][.0-9]+'
vue_cli_service_global: vue_cli_service_global:
name: "@vue/cli-service-global" name: "@vue/cli-service-global"
webpack: webpack:
name: webpack name: webpack
webpack_cli: webpack_cli:
name: webpack-cli name: webpack-cli
check: webpack --version | grep -E '[.0-9]+' check: webpack --version | grep -E '[0-9][.0-9]+'
# ------------------------------------------------------------------------------------------------- # -------------------------------------------------------------------------------------------------
@@ -345,13 +352,13 @@ npm_available:
pip_available: pip_available:
ansible: ansible:
name: ansible name: ansible
check: ansible --version | grep -E '^ansible [.0-9]+$' check: ansible --version | grep -E '^ansible [0-9][.0-9]+$'
yamllint: yamllint:
name: yamllint name: yamllint
check: yamllint --version 2>&1 | grep -E '[.0-9]+' check: yamllint --version 2>&1 | grep -E '[0-9][.0-9]+'
yq: yq:
name: yq name: yq
check: yq --version 2>&1 | grep -E '^yq\s+[.0-9]+$' check: yq --version 2>&1 | grep -E '^yq\s+[0-9][.0-9]+$'
# ------------------------------------------------------------------------------------------------- # -------------------------------------------------------------------------------------------------
@@ -372,7 +379,7 @@ software_available:
# Composer is a dependency for others # Composer is a dependency for others
composer: composer:
disabled: [5.2] disabled: [5.2]
check: composer --version 2>/dev/null | grep -E 'version\s*[.0-9]+' check: composer --version 2>/dev/null | grep -E 'version\s*[0-9][.0-9]+'
all: all:
command: curl -sS -L --fail https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer command: curl -sS -L --fail https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
# pip is a dependency for others # pip is a dependency for others
@@ -388,7 +395,7 @@ software_available:
&& curl -sS -L --fail https://bootstrap.pypa.io/get-pip.py | python \ && curl -sS -L --fail https://bootstrap.pypa.io/get-pip.py | python \
# nvm is a dependency for others # nvm is a dependency for others
nvm: nvm:
check: su -c '. /opt/nvm/nvm.sh; nvm --version' devilbox | grep -E '^[.0-9]+' check: su -c '. /opt/nvm/nvm.sh; nvm --version' devilbox | grep -E '^[0-9][.0-9]+'
all: all:
pre: | pre: |
git clone https://github.com/creationix/nvm /opt/nvm \ git clone https://github.com/creationix/nvm /opt/nvm \
@@ -408,7 +415,7 @@ software_available:
&& su -c '. /opt/nvm/nvm.sh; nvm install --lts' devilbox \ && su -c '. /opt/nvm/nvm.sh; nvm install --lts' devilbox \
&& su -c '. /opt/nvm/nvm.sh; nvm use node' devilbox \ && su -c '. /opt/nvm/nvm.sh; nvm use node' devilbox \
awesomeci: awesomeci:
check: regex-grep --version | grep -E '[.0-9]+' check: regex-grep --version | grep -E '[0-9][.0-9]+'
all: all:
command: | command: |
git clone https://github.com/cytopia/awesome-ci.git /usr/local/src/awesome-ci \ git clone https://github.com/cytopia/awesome-ci.git /usr/local/src/awesome-ci \
@@ -420,7 +427,7 @@ software_available:
&& rm -rf /usr/local/src/awesome-ci \ && rm -rf /usr/local/src/awesome-ci \
deployer: deployer:
disabled: [5.2, 5.3] disabled: [5.2, 5.3]
check: dep --version 2>/dev/null | grep -Ei 'deployer\s*(version\s*)?[.0-9]+' check: dep --version 2>/dev/null | grep -Ei 'deployer\s*(version\s*)?[0-9][.0-9]+'
5.4: 5.4:
command: curl -sS -L --fail https://deployer.org/releases/v3.3.0/deployer.phar -L -o /usr/local/bin/dep command: curl -sS -L --fail https://deployer.org/releases/v3.3.0/deployer.phar -L -o /usr/local/bin/dep
post: chmod +x /usr/local/bin/dep post: chmod +x /usr/local/bin/dep
@@ -449,7 +456,7 @@ software_available:
&& git checkout 7.4.0 \ && git checkout 7.4.0 \
command: | command: |
chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush7 \ chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush7 \
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush7 && composer install --no-interaction --no-progress --no-dev' \ && su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush7 && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install --no-interaction --no-progress --no-dev' \
&& ln -s /usr/local/src/drush7/drush /usr/local/bin/drush7 \ && ln -s /usr/local/src/drush7/drush /usr/local/bin/drush7 \
&& rm -rf /usr/local/src/drush7/.git \ && rm -rf /usr/local/src/drush7/.git \
&& rm -rf /usr/local/src/drush7/docs \ && rm -rf /usr/local/src/drush7/docs \
@@ -465,7 +472,7 @@ software_available:
&& git checkout $( git for-each-ref --format='%(*creatordate:raw)%(creatordate:raw) %(refname)' refs/tags | sort -n | grep -E 'tags/8[.0-9]+$' | tail -1 | sed 's|.*/||g' ) \ && git checkout $( git for-each-ref --format='%(*creatordate:raw)%(creatordate:raw) %(refname)' refs/tags | sort -n | grep -E 'tags/8[.0-9]+$' | tail -1 | sed 's|.*/||g' ) \
command: | command: |
chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush8 \ chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush8 \
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush8 && composer install --no-interaction --no-progress --no-dev' \ && su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush8 && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install --no-interaction --no-progress --no-dev' \
&& ln -s /usr/local/src/drush8/drush /usr/local/bin/drush8 \ && ln -s /usr/local/src/drush8/drush /usr/local/bin/drush8 \
&& rm -rf /usr/local/src/drush8/.git \ && rm -rf /usr/local/src/drush8/.git \
&& rm -rf /usr/local/src/drush8/docs \ && rm -rf /usr/local/src/drush8/docs \
@@ -481,7 +488,7 @@ software_available:
&& git checkout $( git for-each-ref --format='%(*creatordate:raw)%(creatordate:raw) %(refname)' refs/tags | sort -n | grep -E 'tags/9[.0-9]+$' | tail -1 | sed 's|.*/||g' ) \ && git checkout $( git for-each-ref --format='%(*creatordate:raw)%(creatordate:raw) %(refname)' refs/tags | sort -n | grep -E 'tags/9[.0-9]+$' | tail -1 | sed 's|.*/||g' ) \
command: | command: |
chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush9 \ chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/drush9 \
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush9 && php -d memory_limit=-1 `which composer` install --no-interaction --no-progress' \ && su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/drush9 && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install --no-interaction --no-progress' \
&& ln -s /usr/local/src/drush9/drush /usr/local/bin/drush9 \ && ln -s /usr/local/src/drush9/drush /usr/local/bin/drush9 \
&& rm -rf /usr/local/src/drush9/.git \ && rm -rf /usr/local/src/drush9/.git \
&& rm -rf /usr/local/src/drush9/docs \ && rm -rf /usr/local/src/drush9/docs \
@@ -489,12 +496,12 @@ software_available:
&& rm -rf /usr/local/src/drush9/misc \ && rm -rf /usr/local/src/drush9/misc \
drupalconsole: drupalconsole:
disabled: [5.2, 5.3, 5.4, 8.0] # TODO: re-enable for 8.0 (currently errors) disabled: [5.2, 5.3, 5.4, 8.0] # TODO: re-enable for 8.0 (currently errors)
check: drupal --version | grep -E 'Drupal Console Launcher\s*[.0-9]' check: drupal --version | grep -E 'Drupal Console Launcher\s*[0-9][.0-9]'
all: all:
command: curl -sS -L --fail https://drupalconsole.com/installer -L -o /usr/local/bin/drupal command: curl -sS -L --fail https://drupalconsole.com/installer -L -o /usr/local/bin/drupal
post: chmod +x /usr/local/bin/drupal post: chmod +x /usr/local/bin/drupal
gitflow: gitflow:
check: git-flow version | grep -E '[.0-9]+' check: git-flow version | grep -E '[0-9][.0-9]+'
all: all:
command: | command: |
git clone git://github.com/petervanderdoes/gitflow.git /tmp/gitflow \ git clone git://github.com/petervanderdoes/gitflow.git /tmp/gitflow \
@@ -502,7 +509,7 @@ software_available:
&& make install \ && make install \
&& cd / && rm -rf /tmp/gitflow \ && cd / && rm -rf /tmp/gitflow \
laravel: laravel:
check: laravel --version | grep -E '(Installer|version)\s*[.0-9]+' check: laravel --version | grep -E '(Installer|version)\s*[0-9][.0-9]+'
disabled: [5.2, 5.3, 8.0] disabled: [5.2, 5.3, 8.0]
5.4: 5.4:
pre: | pre: |
@@ -546,18 +553,18 @@ software_available:
&& git checkout $(git describe --abbrev=0 --tags) \ && git checkout $(git describe --abbrev=0 --tags) \
command: | command: |
chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/laravel-installer \ chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/laravel-installer \
&& su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/laravel-installer && composer install --no-interaction --no-progress --no-dev' \ && su - ${MY_USER} -c 'PATH=/usr/local/bin:$PATH; cd /usr/local/src/laravel-installer && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install --no-interaction --no-progress --no-dev' \
&& rm -rf /usr/local/src/laravel-installer/laravel/.git \ && rm -rf /usr/local/src/laravel-installer/laravel/.git \
post: post:
ln -s /usr/local/src/laravel-installer/bin/laravel /usr/local/bin/laravel ln -s /usr/local/src/laravel-installer/bin/laravel /usr/local/bin/laravel
linkcheck: linkcheck:
check: linkcheck --version | grep -E '^linkcheck\sv[.0-9]+' check: linkcheck --version | grep -E '^linkcheck\sv[0-9][.0-9]+'
all: all:
command: | command: |
curl -sS -L --fail https://raw.githubusercontent.com/cytopia/linkcheck/master/linkcheck > /usr/local/bin/linkcheck \ curl -sS -L --fail https://raw.githubusercontent.com/cytopia/linkcheck/master/linkcheck > /usr/local/bin/linkcheck \
&& chmod +x /usr/local/bin/linkcheck \ && chmod +x /usr/local/bin/linkcheck \
linuxbrew: linuxbrew:
check: su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[.0-9]+' check: su - ${MY_USER} -c '/usr/local/src/linuxbrew/bin/brew --version' | grep -E 'Homebrew\s*[0-9][.0-9]+'
all: all:
command: | command: |
git clone https://github.com/Linuxbrew/brew.git /usr/local/src/linuxbrew \ git clone https://github.com/Linuxbrew/brew.git /usr/local/src/linuxbrew \
@@ -576,7 +583,7 @@ software_available:
&& chmod +x mhsendmail_linux_amd64 \ && chmod +x mhsendmail_linux_amd64 \
&& mv mhsendmail_linux_amd64 /usr/local/bin/mhsendmail \ && mv mhsendmail_linux_amd64 /usr/local/bin/mhsendmail \
mysqldumpsecure: mysqldumpsecure:
check: mysqldump-secure --version | grep -E 'Version:\s*[.0-9]+' check: mysqldump-secure --version | grep -E 'Version:\s*[0-9][.0-9]+'
all: all:
command: | command: |
git clone https://github.com/cytopia/mysqldump-secure.git /usr/local/src/mysqldump-secure \ git clone https://github.com/cytopia/mysqldump-secure.git /usr/local/src/mysqldump-secure \
@@ -600,8 +607,8 @@ software_available:
&& cd / \ && cd / \
&& rm -rf /usr/local/src/mysqldump-secure \ && rm -rf /usr/local/src/mysqldump-secure \
phalcon: phalcon:
disabled: [5.2, 7.3, 7.4, 8.0] disabled: [5.2, 8.0]
check: phalcon commands | grep -E '[.0-9]+' check: phalcon commands | grep -E '[0-9][.0-9]+'
5.3: 5.3:
pre: | pre: |
git clone https://github.com/phalcon/phalcon-devtools /usr/local/src/phalcon-devtools \ git clone https://github.com/phalcon/phalcon-devtools /usr/local/src/phalcon-devtools \
@@ -677,7 +684,7 @@ software_available:
git clone https://github.com/phalcon/phalcon-devtools /usr/local/src/phalcon-devtools \ git clone https://github.com/phalcon/phalcon-devtools /usr/local/src/phalcon-devtools \
&& cd /usr/local/src/phalcon-devtools \ && cd /usr/local/src/phalcon-devtools \
&& git checkout $(git describe --abbrev=0 --tags) \ && git checkout $(git describe --abbrev=0 --tags) \
&& composer install \ && COMPOSER_MEMORY_LIMIT=-1 /usr/local/bin/composer install \
command: | command: |
chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/phalcon-devtools \ chown -R ${MY_USER}:${MY_GROUP} /usr/local/src/phalcon-devtools \
&& su - ${MY_USER} -c 'cd /usr/local/src/phalcon-devtools && ./phalcon.sh' \ && su - ${MY_USER} -c 'cd /usr/local/src/phalcon-devtools && ./phalcon.sh' \
@@ -686,7 +693,7 @@ software_available:
&& cd / \ && cd / \
&& rm -rf /usr/local/src/phalcon-devtools/.git \ && rm -rf /usr/local/src/phalcon-devtools/.git \
phpcs: phpcs:
check: phpcs --version | grep -E 'version [.0-9]+' check: phpcs --version | grep -E 'version [0-9][.0-9]+'
5.2: 5.2:
command: | command: |
curl -sS -L --fail https://github.com/squizlabs/PHP_CodeSniffer/releases/download/2.9.0/phpcs.phar > /usr/local/bin/phpcs 2>/dev/null \ curl -sS -L --fail https://github.com/squizlabs/PHP_CodeSniffer/releases/download/2.9.0/phpcs.phar > /usr/local/bin/phpcs 2>/dev/null \
@@ -700,7 +707,7 @@ software_available:
curl -sS -L --fail https://squizlabs.github.io/PHP_CodeSniffer/phpcs.phar > /usr/local/bin/phpcs 2>/dev/null \ curl -sS -L --fail https://squizlabs.github.io/PHP_CodeSniffer/phpcs.phar > /usr/local/bin/phpcs 2>/dev/null \
&& chmod +x /usr/local/bin/phpcs \ && chmod +x /usr/local/bin/phpcs \
phpcbf: phpcbf:
check: phpcbf --version | grep -E 'version [.0-9]+' check: phpcbf --version | grep -E 'version [0-9][.0-9]+'
5.2: 5.2:
command: | command: |
curl -sS -L --fail https://github.com/squizlabs/PHP_CodeSniffer/releases/download/2.9.0/phpcbf.phar > /usr/local/bin/phpcbf 2>/dev/null \ curl -sS -L --fail https://github.com/squizlabs/PHP_CodeSniffer/releases/download/2.9.0/phpcbf.phar > /usr/local/bin/phpcbf 2>/dev/null \
@@ -734,7 +741,7 @@ software_available:
&& chmod +x /usr/local/bin/php-cs-fixer \ && chmod +x /usr/local/bin/php-cs-fixer \
phpmd: phpmd:
disabled: [5.2] disabled: [5.2]
check: phpmd --version | grep -E '^PHPMD [.0-9]+' check: phpmd --version | grep -E '^PHPMD [0-9][.0-9]+'
all: all:
command: | command: |
curl -sS -L --fail https://phpmd.org/static/latest/phpmd.phar > phpmd.phar \ curl -sS -L --fail https://phpmd.org/static/latest/phpmd.phar > phpmd.phar \
@@ -742,7 +749,7 @@ software_available:
&& chmod +x /usr/local/bin/phpmd \ && chmod +x /usr/local/bin/phpmd \
phpunit: phpunit:
disabled: [5.2, 8.0] disabled: [5.2, 8.0]
check: phpunit --version | grep -iE '^PHPUnit\s[.0-9]+' check: phpunit --version | grep -iE '^PHPUnit\s[0-9][.0-9]+'
5.3: 5.3:
command: | command: |
curl -sS -L --fail https://phar.phpunit.de/phpunit-4.phar > /usr/local/bin/phpunit 2>/dev/null \ curl -sS -L --fail https://phar.phpunit.de/phpunit-4.phar > /usr/local/bin/phpunit 2>/dev/null \
@@ -769,13 +776,13 @@ software_available:
&& chmod +x /usr/local/bin/phpunit \ && chmod +x /usr/local/bin/phpunit \
symfony: symfony:
disabled: [5.2, 5.3] disabled: [5.2, 5.3]
check: symfony -V | grep -Ei 'version\s*.*v[.0-9]+' check: symfony -V | grep -Ei 'version\s*.*v[0-9][.0-9]+'
all: all:
pre: SYMFONY_VERSION="$( curl -sS -L --fail https://get.symfony.com/cli/LATEST )" pre: SYMFONY_VERSION="$( curl -sS -L --fail https://get.symfony.com/cli/LATEST )"
command: curl -sS -L --fail "https://github.com/symfony/cli/releases/download/v${SYMFONY_VERSION}/symfony_linux_amd64" > /usr/local/bin/symfony command: curl -sS -L --fail "https://github.com/symfony/cli/releases/download/v${SYMFONY_VERSION}/symfony_linux_amd64" > /usr/local/bin/symfony
post: chmod +x /usr/local/bin/symfony post: chmod +x /usr/local/bin/symfony
wkhtmltopdf: wkhtmltopdf:
check: wkhtmltopdf --version | grep -E "^wkhtmltopdf [.0-9]+\s+\(.+patched.+\)" check: wkhtmltopdf --version | grep -E "^wkhtmltopdf [0-9][.0-9]+\s+\(.+patched.+\)"
5.2: 5.2:
pre: VERSION="$( curl -sSL -L --fail https://github.com/wkhtmltopdf/wkhtmltopdf/releases | grep -Eo '/wkhtmltopdf/.+jessie_amd64\.deb' | head -1 )" pre: VERSION="$( curl -sSL -L --fail https://github.com/wkhtmltopdf/wkhtmltopdf/releases | grep -Eo '/wkhtmltopdf/.+jessie_amd64\.deb' | head -1 )"
5.3: 5.3:
@@ -838,7 +845,7 @@ software_available:
&& rm -rf /var/lib/apt/lists/* \ && rm -rf /var/lib/apt/lists/* \
wpcli: wpcli:
disabled: [5.2] disabled: [5.2]
check: wp --allow-root --version | grep -E '[.0-9]+' check: wp --allow-root --version | grep -E '[0-9][.0-9]+'
5.3: 5.3:
command: curl -sS -L --fail https://github.com/wp-cli/wp-cli/releases/download/v1.5.1/wp-cli-1.5.1.phar -L -o /usr/local/bin/wp command: curl -sS -L --fail https://github.com/wp-cli/wp-cli/releases/download/v1.5.1/wp-cli-1.5.1.phar -L -o /usr/local/bin/wp
post: chmod +x /usr/local/bin/wp post: chmod +x /usr/local/bin/wp

Binary file not shown.

View File

@@ -9,8 +9,8 @@ error_reporting(-1);
$PHP_VERSION = str_replace('-dev', '', PHP_VERSION); $PHP_VERSION = str_replace('-dev', '', PHP_VERSION);
// Only available since 5.3.0 (PHP 5.3, 5.4 and 5.5 segfaults) // Only available since 5.3.0 (PHP 5.3 and 5.4 segfaults)
if (version_compare($PHP_VERSION, '5.6.0', '<')) { if (version_compare($PHP_VERSION, '5.5.0', '<')) {
echo 'SKIP'; echo 'SKIP';
exit(0); exit(0);
} }

View File

@@ -0,0 +1,29 @@
<?php
/**
* This page should print 'OK' if everything works,
* 'FAIL' or nothing if an error occured.
*/
ini_set('display_startup_errors', 1);
ini_set('display_errors', 1);
error_reporting(-1);
$PHP_VERSION = str_replace('-dev', '', PHP_VERSION);
// Only available since 5.3.0 (PHP 5.3 and 5.4 segfaults)
if (version_compare($PHP_VERSION, '5.5.0', '<')) {
echo 'SKIP';
exit(0);
}
// FIXME: Currently not supported on PHP 8
if (version_compare($PHP_VERSION, '8.0.0', '>=')) {
echo 'SKIP';
exit(0);
}
$img = new Imagick();
if ($img->readImage('dummy.pdf') !== True) {
echo 'FAIL: newImage()';
exit(1);
}
echo 'OK';

View File

@@ -9,8 +9,8 @@ error_reporting(-1);
$PHP_VERSION = str_replace('-dev', '', PHP_VERSION); $PHP_VERSION = str_replace('-dev', '', PHP_VERSION);
// Only available since 5.3.0 (PHP 5.3, 5.4 and 5.5 segfaults) // Only available since 5.3.0 (PHP 5.3 and 5.4 segfaults)
if (version_compare($PHP_VERSION, '5.6.0', '<')) { if (version_compare($PHP_VERSION, '5.5.0', '<')) {
echo 'SKIP'; echo 'SKIP';
exit(0); exit(0);
} }