Compare commits

...

21 Commits
0.49 ... 0.56

Author SHA1 Message Date
cytopia
1a5600ff86 Merge pull request #73 from devilbox/release-0.56
WIP: Use latest stable PHP 7.3 base image
2018-12-17 19:41:26 +01:00
cytopia
a4bcf2b091 Drop mcrypt from PHP 7.3 2018-12-17 14:00:04 +01:00
cytopia
152a92386e Use latest stable PHP 7.3 base image 2018-12-17 10:52:05 +01:00
cytopia
66fa1c195e Merge pull request #72 from devilbox/php-module-reflection
Add reflection support
2018-12-17 00:45:12 +01:00
cytopia
87bc0aa085 Fix rb-inotify version 2018-12-16 22:26:46 +01:00
cytopia
faff334e14 Ensure to check against already available reflection module 2018-12-16 17:19:14 +01:00
cytopia
bbe3785091 Add reflection support 2018-12-16 01:59:35 +01:00
cytopia
3378d7a10b Merge pull request #70 from devilbox/release-0.54
Fixes #69: Loop yarn installs to mitigate network failures
2018-12-15 02:43:59 +01:00
cytopia
11ef4c6f3f Fixes #69: Loop yarn installs to mitigate network failures 2018-12-14 17:33:29 +01:00
cytopia
f90a3532fc Merge pull request #68 from devilbox/release-0.53
Add xdebug to PHP-FPM 7.3
2018-12-10 19:59:04 +01:00
cytopia
59ecc5dc11 Add xdebug to PHP-FPM 7.3 2018-12-10 14:32:44 +01:00
cytopia
a2d43259a4 Merge pull request #67 from devilbox/release-0.52
Fix drush9 build for work container
2018-12-08 12:02:10 +01:00
cytopia
2947a465f8 Remove extra spaces 2018-12-08 02:21:54 +01:00
cytopia
9f280dd5b1 Fix swoole build for PHP 7.3 and PHP 7.4 2018-12-08 02:09:33 +01:00
cytopia
68f11781f1 Fix memory limit for drush9 install 2018-12-08 01:53:48 +01:00
cytopia
8d2eee37f1 Fix #66 typo in readme 2018-12-07 18:55:09 +01:00
cytopia
3a29a77925 Fix drush9 build for work container 2018-12-07 18:53:23 +01:00
cytopia
79b9ed1308 Merge pull request #65 from devilbox/release-0.51
Ensure Travis-CI recognizes when being run as cronjob
2018-11-17 17:20:49 +01:00
cytopia
dc20fbea6e Ensure Travis-CI recognizes when being run as cronjob 2018-11-17 14:13:29 +01:00
cytopia
77716db302 Merge pull request #64 from devilbox/release-0.50
Fix PHP 5.3 autoconf
2018-11-11 12:08:14 +01:00
cytopia
62cc38d4af Fix PHP 5.3 autoconf 2018-11-10 21:05:14 +01:00
25 changed files with 169 additions and 165 deletions

View File

@@ -98,11 +98,13 @@ script:
- if [ "${TRAVIS_PULL_REQUEST}" == "false" ]; then - if [ "${TRAVIS_PULL_REQUEST}" == "false" ]; then
echo "${DOCKER_PASSWORD}" | docker login --username "${DOCKER_USERNAME}" --password-stdin && echo "${DOCKER_PASSWORD}" | docker login --username "${DOCKER_USERNAME}" --password-stdin &&
if [ "${TRAVIS_BRANCH}" == "master" ]; then if [ "${TRAVIS_BRANCH}" == "master" ]; then
echo "Pushing latest";
docker push "${IMAGE}:${PHP}-base"; docker push "${IMAGE}:${PHP}-base";
docker push "${IMAGE}:${PHP}-mods"; docker push "${IMAGE}:${PHP}-mods";
docker push "${IMAGE}:${PHP}-prod"; docker push "${IMAGE}:${PHP}-prod";
docker push "${IMAGE}:${PHP}-work"; docker push "${IMAGE}:${PHP}-work";
elif [[ ${TRAVIS_BRANCH} =~ ^(release-[.0-9]+)$ ]]; then elif [[ ${TRAVIS_BRANCH} =~ ^(release-[.0-9]+)$ ]]; then
echo "Pushing branch ${TRAVIS_BRANCH}";
docker tag "${IMAGE}:${PHP}-base" "${IMAGE}:${PHP}-base-${TRAVIS_BRANCH}" && docker tag "${IMAGE}:${PHP}-base" "${IMAGE}:${PHP}-base-${TRAVIS_BRANCH}" &&
docker tag "${IMAGE}:${PHP}-mods" "${IMAGE}:${PHP}-mods-${TRAVIS_BRANCH}" && docker tag "${IMAGE}:${PHP}-mods" "${IMAGE}:${PHP}-mods-${TRAVIS_BRANCH}" &&
docker tag "${IMAGE}:${PHP}-prod" "${IMAGE}:${PHP}-prod-${TRAVIS_BRANCH}" && docker tag "${IMAGE}:${PHP}-prod" "${IMAGE}:${PHP}-prod-${TRAVIS_BRANCH}" &&
@@ -112,6 +114,7 @@ script:
docker push "${IMAGE}:${PHP}-prod-${TRAVIS_BRANCH}"; docker push "${IMAGE}:${PHP}-prod-${TRAVIS_BRANCH}";
docker push "${IMAGE}:${PHP}-work-${TRAVIS_BRANCH}"; docker push "${IMAGE}:${PHP}-work-${TRAVIS_BRANCH}";
elif [ -n "${TRAVIS_TAG}" ]; then elif [ -n "${TRAVIS_TAG}" ]; then
echo "Pushing tag ${TRAVIS_TAG}";
docker tag "${IMAGE}:${PHP}-base" "${IMAGE}:${PHP}-base-${TRAVIS_TAG}" && docker tag "${IMAGE}:${PHP}-base" "${IMAGE}:${PHP}-base-${TRAVIS_TAG}" &&
docker tag "${IMAGE}:${PHP}-mods" "${IMAGE}:${PHP}-mods-${TRAVIS_TAG}" && docker tag "${IMAGE}:${PHP}-mods" "${IMAGE}:${PHP}-mods-${TRAVIS_TAG}" &&
docker tag "${IMAGE}:${PHP}-prod" "${IMAGE}:${PHP}-prod-${TRAVIS_TAG}" && docker tag "${IMAGE}:${PHP}-prod" "${IMAGE}:${PHP}-prod-${TRAVIS_TAG}" &&
@@ -120,6 +123,18 @@ script:
docker push "${IMAGE}:${PHP}-mods-${TRAVIS_TAG}"; docker push "${IMAGE}:${PHP}-mods-${TRAVIS_TAG}";
docker push "${IMAGE}:${PHP}-prod-${TRAVIS_TAG}"; docker push "${IMAGE}:${PHP}-prod-${TRAVIS_TAG}";
docker push "${IMAGE}:${PHP}-work-${TRAVIS_TAG}"; docker push "${IMAGE}:${PHP}-work-${TRAVIS_TAG}";
elif [ "${TRAVIS_EVENT_TYPE}" = "cron" ]; then
if MY_TAG="$( git describe --exact-match "$(git rev-parse HEAD)" 2>/dev/null )"; then
echo "Pushing cron tag ${MY_TAG}";
docker tag "${IMAGE}:${PHP}-base" "${IMAGE}:${PHP}-base-${MY_TAG}" &&
docker tag "${IMAGE}:${PHP}-mods" "${IMAGE}:${PHP}-mods-${MY_TAG}" &&
docker tag "${IMAGE}:${PHP}-prod" "${IMAGE}:${PHP}-prod-${MY_TAG}" &&
docker tag "${IMAGE}:${PHP}-work" "${IMAGE}:${PHP}-work-${MY_TAG}" &&
docker push "${IMAGE}:${PHP}-base-${MY_TAG}";
docker push "${IMAGE}:${PHP}-mods-${MY_TAG}";
docker push "${IMAGE}:${PHP}-prod-${MY_TAG}";
docker push "${IMAGE}:${PHP}-work-${MY_TAG}";
fi
else else
echo "Skipping push to dockerhub on normal branches"; echo "Skipping push to dockerhub on normal branches";
fi fi

View File

@@ -1,5 +1,5 @@
# Auto-generated via Ansible: edit build/ansible/DOCKERFILES/Dockerfile-base.j2 instead. # Auto-generated via Ansible: edit build/ansible/DOCKERFILES/Dockerfile-base.j2 instead.
FROM php:7.3-rc-fpm FROM php:7.3-fpm
MAINTAINER "cytopia" <cytopia@everythingcli.org> MAINTAINER "cytopia" <cytopia@everythingcli.org>

View File

@@ -484,6 +484,8 @@ RUN set -x \
&& php-fpm -m | grep -oiE '^recode$' \ && php-fpm -m | grep -oiE '^recode$' \
&& php -m | grep -oiE '^redis$' \ && php -m | grep -oiE '^redis$' \
&& php-fpm -m | grep -oiE '^redis$' \ && php-fpm -m | grep -oiE '^redis$' \
&& php -m | grep -oiE '^reflection$' \
&& php-fpm -m | grep -oiE '^reflection$' \
&& php -m | grep -oiE '^session$' \ && php -m | grep -oiE '^session$' \
&& php-fpm -m | grep -oiE '^session$' \ && php-fpm -m | grep -oiE '^session$' \
&& php -m | grep -oiE '^shmop$' \ && php -m | grep -oiE '^shmop$' \

View File

@@ -32,8 +32,10 @@ ENV BUILD_DEPS \
libjpeg-dev \ libjpeg-dev \
libkrb5-dev \ libkrb5-dev \
libldap2-dev \ libldap2-dev \
libmagickwand-dev \
libmcrypt-dev \ libmcrypt-dev \
libmemcached-dev \ libmemcached-dev \
libnghttp2-dev \
libpng-dev \ libpng-dev \
libpq-dev \ libpq-dev \
libpspell-dev \ libpspell-dev \
@@ -60,9 +62,11 @@ ENV RUN_DEPS \
libfreetype6 \ libfreetype6 \
libicu52 \ libicu52 \
libjpeg62-turbo \ libjpeg62-turbo \
libmagickwand-6.q16-2 \
libmcrypt4 \ libmcrypt4 \
libmemcachedutil2 \ libmemcachedutil2 \
libmysqlclient18 \ libmysqlclient18 \
libnghttp2-5 \
libpng12-0 \ libpng12-0 \
libpq5 \ libpq5 \
librabbitmq1 \ librabbitmq1 \
@@ -168,11 +172,17 @@ RUN set -x \
&& (rm -rf /usr/local/lib/php/doc/gmp || true) \ && (rm -rf /usr/local/lib/php/doc/gmp || true) \
\ \
# ---- Installing PHP Extension: igbinary ---- # ---- Installing PHP Extension: igbinary ----
&& pecl install igbinary-2.0.7 \ && pecl install igbinary \
&& docker-php-ext-enable igbinary \ && docker-php-ext-enable igbinary \
&& (rm -rf /usr/local/lib/php/test/igbinary || true) \ && (rm -rf /usr/local/lib/php/test/igbinary || true) \
&& (rm -rf /usr/local/lib/php/doc/igbinary || true) \ && (rm -rf /usr/local/lib/php/doc/igbinary || true) \
\ \
# ---- Installing PHP Extension: imagick ----
&& pecl install imagick-3.3.0 \
&& docker-php-ext-enable imagick \
&& (rm -rf /usr/local/lib/php/test/imagick || true) \
&& (rm -rf /usr/local/lib/php/doc/imagick || true) \
\
# ---- Installing PHP Extension: imap ---- # ---- Installing PHP Extension: imap ----
&& ln -s /usr/lib/x86_64-linux-gnu/libkrb5* /usr/lib/ \ && ln -s /usr/lib/x86_64-linux-gnu/libkrb5* /usr/lib/ \
&& /usr/local/bin/docker-php-ext-configure imap --with-kerberos --with-imap-ssl --with-imap \ && /usr/local/bin/docker-php-ext-configure imap --with-kerberos --with-imap-ssl --with-imap \
@@ -225,6 +235,12 @@ RUN set -x \
&& (rm -rf /usr/local/lib/php/test/mongo || true) \ && (rm -rf /usr/local/lib/php/test/mongo || true) \
&& (rm -rf /usr/local/lib/php/doc/mongo || true) \ && (rm -rf /usr/local/lib/php/doc/mongo || true) \
\ \
# ---- Installing PHP Extension: mongodb ----
&& pecl install mongodb-0.6.3 \
&& docker-php-ext-enable mongodb \
&& (rm -rf /usr/local/lib/php/test/mongodb || true) \
&& (rm -rf /usr/local/lib/php/doc/mongodb || true) \
\
# ---- Installing PHP Extension: msgpack ---- # ---- Installing PHP Extension: msgpack ----
&& pecl install msgpack-0.5.7 \ && pecl install msgpack-0.5.7 \
&& docker-php-ext-enable msgpack \ && docker-php-ext-enable msgpack \
@@ -274,6 +290,15 @@ RUN set -x \
&& (rm -rf /usr/local/lib/php/test/pgsql || true) \ && (rm -rf /usr/local/lib/php/test/pgsql || true) \
&& (rm -rf /usr/local/lib/php/doc/pgsql || true) \ && (rm -rf /usr/local/lib/php/doc/pgsql || true) \
\ \
# ---- Installing PHP Extension: phalcon ----
&& git clone https://github.com/phalcon/cphalcon /tmp/phalcon \
&& cd /tmp/phalcon \
&& git checkout phalcon-v2.0.9 \
&& cd build && ./install >/dev/null \
&& docker-php-ext-enable phalcon \
&& (rm -rf /usr/local/lib/php/test/phalcon || true) \
&& (rm -rf /usr/local/lib/php/doc/phalcon || true) \
\
# ---- Installing PHP Extension: pspell ---- # ---- Installing PHP Extension: pspell ----
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pspell \ && /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) pspell \
&& (rm -rf /usr/local/lib/php/test/pspell || true) \ && (rm -rf /usr/local/lib/php/test/pspell || true) \
@@ -313,6 +338,12 @@ RUN set -x \
&& (rm -rf /usr/local/lib/php/test/sockets || true) \ && (rm -rf /usr/local/lib/php/test/sockets || true) \
&& (rm -rf /usr/local/lib/php/doc/sockets || true) \ && (rm -rf /usr/local/lib/php/doc/sockets || true) \
\ \
# ---- Installing PHP Extension: swoole ----
&& pecl install swoole-1.9.23 \
&& docker-php-ext-enable swoole \
&& (rm -rf /usr/local/lib/php/test/swoole || true) \
&& (rm -rf /usr/local/lib/php/doc/swoole || true) \
\
# ---- Installing PHP Extension: sysvmsg ---- # ---- Installing PHP Extension: sysvmsg ----
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) sysvmsg \ && /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) sysvmsg \
&& (rm -rf /usr/local/lib/php/test/sysvmsg || true) \ && (rm -rf /usr/local/lib/php/test/sysvmsg || true) \
@@ -443,6 +474,8 @@ RUN set -x \
&& 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$' \
@@ -465,6 +498,8 @@ RUN set -x \
&& php-fpm -m | grep -oiE '^memcached$' \ && php-fpm -m | grep -oiE '^memcached$' \
&& php -m | grep -oiE '^mongo$' \ && php -m | grep -oiE '^mongo$' \
&& php-fpm -m | grep -oiE '^mongo$' \ && php-fpm -m | grep -oiE '^mongo$' \
&& php -m | grep -oiE '^mongodb$' \
&& php-fpm -m | grep -oiE '^mongodb$' \
&& php -m | grep -oiE '^msgpack$' \ && php -m | grep -oiE '^msgpack$' \
&& php-fpm -m | grep -oiE '^msgpack$' \ && php-fpm -m | grep -oiE '^msgpack$' \
&& php -m | grep -oiE '^mysql$' \ && php -m | grep -oiE '^mysql$' \
@@ -495,6 +530,8 @@ RUN set -x \
&& php-fpm -m | grep -oiE '^pdo_sqlite$' \ && php-fpm -m | grep -oiE '^pdo_sqlite$' \
&& php -m | grep -oiE '^pgsql$' \ && php -m | grep -oiE '^pgsql$' \
&& php-fpm -m | grep -oiE '^pgsql$' \ && php-fpm -m | grep -oiE '^pgsql$' \
&& php -m | grep -oiE '^phalcon$' \
&& php-fpm -m | grep -oiE '^phalcon$' \
&& php -m | grep -oiE '^phar$' \ && php -m | grep -oiE '^phar$' \
&& php-fpm -m | grep -oiE '^phar$' \ && php-fpm -m | grep -oiE '^phar$' \
&& php -m | grep -oiE '^posix$' \ && php -m | grep -oiE '^posix$' \
@@ -505,6 +542,8 @@ RUN set -x \
&& php-fpm -m | grep -oiE '^recode$' \ && php-fpm -m | grep -oiE '^recode$' \
&& php -m | grep -oiE '^redis$' \ && php -m | grep -oiE '^redis$' \
&& php-fpm -m | grep -oiE '^redis$' \ && php-fpm -m | grep -oiE '^redis$' \
&& php -m | grep -oiE '^reflection$' \
&& php-fpm -m | grep -oiE '^reflection$' \
&& php -m | grep -oiE '^rdkafka$' \ && php -m | grep -oiE '^rdkafka$' \
&& php-fpm -m | grep -oiE '^rdkafka$' \ && php-fpm -m | grep -oiE '^rdkafka$' \
&& php -m | grep -oiE '^session$' \ && php -m | grep -oiE '^session$' \
@@ -519,6 +558,8 @@ RUN set -x \
&& php-fpm -m | grep -oiE '^soap$' \ && php-fpm -m | grep -oiE '^soap$' \
&& php -m | grep -oiE '^sockets$' \ && php -m | grep -oiE '^sockets$' \
&& php-fpm -m | grep -oiE '^sockets$' \ && php-fpm -m | grep -oiE '^sockets$' \
&& php -m | grep -oiE '^swoole$' \
&& php-fpm -m | grep -oiE '^swoole$' \
&& php -m | grep -oiE '^sysvmsg$' \ && php -m | grep -oiE '^sysvmsg$' \
&& php-fpm -m | grep -oiE '^sysvmsg$' \ && php-fpm -m | grep -oiE '^sysvmsg$' \
&& php -m | grep -oiE '^sysvsem$' \ && php -m | grep -oiE '^sysvsem$' \

View File

@@ -549,6 +549,8 @@ RUN set -x \
&& php-fpm -m | grep -oiE '^recode$' \ && php-fpm -m | grep -oiE '^recode$' \
&& php -m | grep -oiE '^redis$' \ && php -m | grep -oiE '^redis$' \
&& php-fpm -m | grep -oiE '^redis$' \ && php-fpm -m | grep -oiE '^redis$' \
&& php -m | grep -oiE '^reflection$' \
&& php-fpm -m | grep -oiE '^reflection$' \
&& php -m | grep -oiE '^rdkafka$' \ && php -m | grep -oiE '^rdkafka$' \
&& php-fpm -m | grep -oiE '^rdkafka$' \ && php-fpm -m | grep -oiE '^rdkafka$' \
&& php -m | grep -oiE '^session$' \ && php -m | grep -oiE '^session$' \

View File

@@ -543,6 +543,8 @@ RUN set -x \
&& php-fpm -m | grep -oiE '^recode$' \ && php-fpm -m | grep -oiE '^recode$' \
&& php -m | grep -oiE '^redis$' \ && php -m | grep -oiE '^redis$' \
&& php-fpm -m | grep -oiE '^redis$' \ && php-fpm -m | grep -oiE '^redis$' \
&& php -m | grep -oiE '^reflection$' \
&& php-fpm -m | grep -oiE '^reflection$' \
&& php -m | grep -oiE '^rdkafka$' \ && php -m | grep -oiE '^rdkafka$' \
&& php-fpm -m | grep -oiE '^rdkafka$' \ && php-fpm -m | grep -oiE '^rdkafka$' \
&& php -m | grep -oiE '^session$' \ && php -m | grep -oiE '^session$' \

View File

@@ -545,6 +545,8 @@ RUN set -x \
&& php-fpm -m | grep -oiE '^recode$' \ && php-fpm -m | grep -oiE '^recode$' \
&& php -m | grep -oiE '^redis$' \ && php -m | grep -oiE '^redis$' \
&& php-fpm -m | grep -oiE '^redis$' \ && php-fpm -m | grep -oiE '^redis$' \
&& php -m | grep -oiE '^reflection$' \
&& php-fpm -m | grep -oiE '^reflection$' \
&& php -m | grep -oiE '^rdkafka$' \ && php -m | grep -oiE '^rdkafka$' \
&& php-fpm -m | grep -oiE '^rdkafka$' \ && php-fpm -m | grep -oiE '^rdkafka$' \
&& php -m | grep -oiE '^session$' \ && php -m | grep -oiE '^session$' \

View File

@@ -544,6 +544,8 @@ RUN set -x \
&& php-fpm -m | grep -oiE '^recode$' \ && php-fpm -m | grep -oiE '^recode$' \
&& php -m | grep -oiE '^redis$' \ && php -m | grep -oiE '^redis$' \
&& php-fpm -m | grep -oiE '^redis$' \ && php-fpm -m | grep -oiE '^redis$' \
&& php -m | grep -oiE '^reflection$' \
&& php-fpm -m | grep -oiE '^reflection$' \
&& php -m | grep -oiE '^rdkafka$' \ && php -m | grep -oiE '^rdkafka$' \
&& php-fpm -m | grep -oiE '^rdkafka$' \ && php-fpm -m | grep -oiE '^rdkafka$' \
&& php -m | grep -oiE '^session$' \ && php -m | grep -oiE '^session$' \

View File

@@ -541,6 +541,8 @@ RUN set -x \
&& php-fpm -m | grep -oiE '^recode$' \ && php-fpm -m | grep -oiE '^recode$' \
&& php -m | grep -oiE '^redis$' \ && php -m | grep -oiE '^redis$' \
&& php-fpm -m | grep -oiE '^redis$' \ && php-fpm -m | grep -oiE '^redis$' \
&& php -m | grep -oiE '^reflection$' \
&& php-fpm -m | grep -oiE '^reflection$' \
&& php -m | grep -oiE '^rdkafka$' \ && php -m | grep -oiE '^rdkafka$' \
&& php-fpm -m | grep -oiE '^rdkafka$' \ && php-fpm -m | grep -oiE '^rdkafka$' \
&& php -m | grep -oiE '^session$' \ && php -m | grep -oiE '^session$' \

View File

@@ -542,6 +542,8 @@ RUN set -x \
&& php-fpm -m | grep -oiE '^recode$' \ && php-fpm -m | grep -oiE '^recode$' \
&& php -m | grep -oiE '^redis$' \ && php -m | grep -oiE '^redis$' \
&& php-fpm -m | grep -oiE '^redis$' \ && php-fpm -m | grep -oiE '^redis$' \
&& php -m | grep -oiE '^reflection$' \
&& php-fpm -m | grep -oiE '^reflection$' \
&& php -m | grep -oiE '^rdkafka$' \ && php -m | grep -oiE '^rdkafka$' \
&& php-fpm -m | grep -oiE '^rdkafka$' \ && php-fpm -m | grep -oiE '^rdkafka$' \
&& php -m | grep -oiE '^session$' \ && php -m | grep -oiE '^session$' \

View File

@@ -35,7 +35,6 @@ ENV BUILD_DEPS \
libkrb5-dev \ libkrb5-dev \
libldap2-dev \ libldap2-dev \
libmagickwand-dev \ libmagickwand-dev \
libmcrypt-dev \
libmemcached-dev \ libmemcached-dev \
libnghttp2-dev \ libnghttp2-dev \
libpng-dev \ libpng-dev \
@@ -68,7 +67,6 @@ ENV RUN_DEPS \
libicu57 \ libicu57 \
libjpeg62-turbo \ libjpeg62-turbo \
libmagickwand-6.q16-3 \ libmagickwand-6.q16-3 \
libmcrypt4 \
libmemcachedutil2 \ libmemcachedutil2 \
libnghttp2-14 \ libnghttp2-14 \
libpng16-16 \ libpng16-16 \
@@ -186,12 +184,6 @@ RUN set -x \
&& (rm -rf /usr/local/lib/php/test/ldap || true) \ && (rm -rf /usr/local/lib/php/test/ldap || true) \
&& (rm -rf /usr/local/lib/php/doc/ldap || true) \ && (rm -rf /usr/local/lib/php/doc/ldap || true) \
\ \
# ---- Installing PHP Extension: mcrypt ----
&& pecl install mcrypt-1.0.1 \
&& docker-php-ext-enable mcrypt \
&& (rm -rf /usr/local/lib/php/test/mcrypt || true) \
&& (rm -rf /usr/local/lib/php/doc/mcrypt || true) \
\
# ---- Installing PHP Extension: memcached ---- # ---- Installing PHP Extension: memcached ----
&& git clone https://github.com/php-memcached-dev/php-memcached /tmp/memcached \ && git clone https://github.com/php-memcached-dev/php-memcached /tmp/memcached \
&& cd /tmp/memcached \ && cd /tmp/memcached \
@@ -298,37 +290,13 @@ RUN set -x \
&& cd /tmp/swoole \ && cd /tmp/swoole \
&& git checkout master \ && git checkout master \
&& git checkout $(git describe --abbrev=0 --tags) \ && git checkout $(git describe --abbrev=0 --tags) \
&& git submodule update --init --recursive \
#`&& cd thirdparty/hiredis` \
#`&& make -j$(getconf _NPROCESSORS_ONLN)` \
#`&& make install` \
#`&& cd ../../` \
&& cd thirdparty/nghttp2 \
&& cmake . \
&& make install \
&& ldconfig \
&& cd ../.. \
&& phpize \ && phpize \
&& ./configure \ && ./configure \
--enable-async-redis \
--enable-openssl \ --enable-openssl \
--enable-thread \ --enable-sockets \
--enable-swoole \ --enable-http2 \
--enable-swoole-static \
--with-swoole \
--with-openssl-dir=/usr \
--enable-mysqlnd \ --enable-mysqlnd \
--enable-coroutine \ --enable-coroutine-postgresql \
--enable-picohttpparser \
#`--enable-timewheel` \
#`--enable-hugepage` \
#`--enable-asan` \
#`--with-phpx-dir=` \
#`--with-jemalloc-dir=/usr/include/jemalloc` \
#`--enable-coroutine-postgresql` \
#`--enable-http2` \
#`--enable-sockets` \
#`--with-libpq-dir=/usr/include/postgresql/libpq/` \
&& make -j$(getconf _NPROCESSORS_ONLN) \ && make -j$(getconf _NPROCESSORS_ONLN) \
&& make install \ && make install \
\ \
@@ -373,6 +341,12 @@ RUN set -x \
&& (rm -rf /usr/local/lib/php/test/wddx || true) \ && (rm -rf /usr/local/lib/php/test/wddx || true) \
&& (rm -rf /usr/local/lib/php/doc/wddx || true) \ && (rm -rf /usr/local/lib/php/doc/wddx || true) \
\ \
# ---- Installing PHP Extension: xdebug ----
&& pecl install xdebug-2.7.0beta1 \
&& docker-php-ext-enable xdebug \
&& (rm -rf /usr/local/lib/php/test/xdebug || true) \
&& (rm -rf /usr/local/lib/php/doc/xdebug || true) \
\
# ---- Installing PHP Extension: xmlrpc ---- # ---- Installing PHP Extension: xmlrpc ----
&& /usr/local/bin/docker-php-ext-configure xmlrpc --with-libxml-dir=/usr --with-iconv-dir=/usr \ && /usr/local/bin/docker-php-ext-configure xmlrpc --with-libxml-dir=/usr --with-iconv-dir=/usr \
&& /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) xmlrpc \ && /usr/local/bin/docker-php-ext-install -j$(getconf _NPROCESSORS_ONLN) xmlrpc \
@@ -479,8 +453,6 @@ RUN set -x \
&& php-fpm -m | grep -oiE '^libxml$' \ && php-fpm -m | grep -oiE '^libxml$' \
&& php -m | grep -oiE '^mbstring$' \ && php -m | grep -oiE '^mbstring$' \
&& php-fpm -m | grep -oiE '^mbstring$' \ && php-fpm -m | grep -oiE '^mbstring$' \
&& php -m | grep -oiE '^mcrypt$' \
&& php-fpm -m | grep -oiE '^mcrypt$' \
&& 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 -m | grep -oiE '^mongodb$' \
@@ -523,6 +495,8 @@ RUN set -x \
&& php-fpm -m | grep -oiE '^recode$' \ && php-fpm -m | grep -oiE '^recode$' \
&& php -m | grep -oiE '^redis$' \ && php -m | grep -oiE '^redis$' \
&& php-fpm -m | grep -oiE '^redis$' \ && php-fpm -m | grep -oiE '^redis$' \
&& php -m | grep -oiE '^reflection$' \
&& php-fpm -m | grep -oiE '^reflection$' \
&& php -m | grep -oiE '^rdkafka$' \ && php -m | grep -oiE '^rdkafka$' \
&& php-fpm -m | grep -oiE '^rdkafka$' \ && php-fpm -m | grep -oiE '^rdkafka$' \
&& php -m | grep -oiE '^session$' \ && php -m | grep -oiE '^session$' \
@@ -555,6 +529,8 @@ RUN set -x \
&& php-fpm -m | grep -oiE '^uploadprogress$' \ && php-fpm -m | grep -oiE '^uploadprogress$' \
&& php -m | grep -oiE '^wddx$' \ && php -m | grep -oiE '^wddx$' \
&& php-fpm -m | grep -oiE '^wddx$' \ && php-fpm -m | grep -oiE '^wddx$' \
&& php -m | grep -oiE '^xdebug$' \
&& php-fpm -m | grep -oiE '^xdebug$' \
&& 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$' \

View File

@@ -285,37 +285,13 @@ RUN set -x \
&& cd /tmp/swoole \ && cd /tmp/swoole \
&& git checkout master \ && git checkout master \
&& git checkout $(git describe --abbrev=0 --tags) \ && git checkout $(git describe --abbrev=0 --tags) \
&& git submodule update --init --recursive \
#`&& cd thirdparty/hiredis` \
#`&& make -j$(getconf _NPROCESSORS_ONLN)` \
#`&& make install` \
#`&& cd ../../` \
&& cd thirdparty/nghttp2 \
&& cmake . \
&& make install \
&& ldconfig \
&& cd ../.. \
&& phpize \ && phpize \
&& ./configure \ && ./configure \
#`--enable-async-redis` \
--enable-openssl \ --enable-openssl \
--enable-thread \ --enable-sockets \
--enable-swoole \ --enable-http2 \
--enable-swoole-static \
--with-swoole \
--with-openssl-dir=/usr \
--enable-mysqlnd \ --enable-mysqlnd \
--enable-coroutine \ --enable-coroutine-postgresql \
--enable-picohttpparser \
#`--enable-timewheel` \
#`--enable-hugepage` \
#`--enable-asan` \
#`--with-phpx-dir=` \
#`--with-jemalloc-dir=/usr/include/jemalloc` \
#`--enable-coroutine-postgresql` \
#`--enable-http2` \
#`--enable-sockets` \
#`--with-libpq-dir=/usr/include/postgresql/libpq/` \
&& make -j$(getconf _NPROCESSORS_ONLN) \ && make -j$(getconf _NPROCESSORS_ONLN) \
&& make install \ && make install \
\ \
@@ -504,6 +480,8 @@ RUN set -x \
&& php-fpm -m | grep -oiE '^recode$' \ && php-fpm -m | grep -oiE '^recode$' \
&& php -m | grep -oiE '^redis$' \ && php -m | grep -oiE '^redis$' \
&& php-fpm -m | grep -oiE '^redis$' \ && php-fpm -m | grep -oiE '^redis$' \
&& php -m | grep -oiE '^reflection$' \
&& php-fpm -m | grep -oiE '^reflection$' \
&& php -m | grep -oiE '^rdkafka$' \ && php -m | grep -oiE '^rdkafka$' \
&& php-fpm -m | grep -oiE '^rdkafka$' \ && php-fpm -m | grep -oiE '^rdkafka$' \
&& php -m | grep -oiE '^session$' \ && php -m | grep -oiE '^session$' \

View File

@@ -135,6 +135,7 @@ RUN set -x \
&& rm -rf /usr/local/src/awesome-ci \ && rm -rf /usr/local/src/awesome-ci \
\ \
&& gem install mixlib-config -v 2.2.4 \ && gem install mixlib-config -v 2.2.4 \
&& gem install rb-inotify -v 0.9.10 \
&& gem install mdl \ && gem install mdl \
&& gem install scss_lint \ && gem install scss_lint \
&& yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y eslint \ && yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y eslint \
@@ -150,8 +151,8 @@ RUN set -x \
&& cd / && rm -rf /tmp/gitflow \ && cd / && rm -rf /tmp/gitflow \
\ \
# grunt # grunt
&& yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt \ && until yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt; do sleep 1; done \
&& yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt-cli \ && until yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt-cli; do sleep 1; done \
&& rm -rf /tmp/y \ && rm -rf /tmp/y \
\ \
# linkcheck # linkcheck

View File

@@ -137,6 +137,7 @@ RUN set -x \
&& rm -rf /usr/local/src/awesome-ci \ && rm -rf /usr/local/src/awesome-ci \
\ \
&& gem install mixlib-config -v 2.2.4 \ && gem install mixlib-config -v 2.2.4 \
&& gem install rb-inotify -v 0.9.10 \
&& gem install mdl \ && gem install mdl \
&& gem install scss_lint \ && gem install scss_lint \
&& yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y eslint \ && yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y eslint \
@@ -169,8 +170,8 @@ RUN set -x \
&& cd / && rm -rf /tmp/gitflow \ && cd / && rm -rf /tmp/gitflow \
\ \
# grunt # grunt
&& yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt \ && until yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt; do sleep 1; done \
&& yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt-cli \ && until yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt-cli; do sleep 1; done \
&& rm -rf /tmp/y \ && rm -rf /tmp/y \
\ \
# linkcheck # linkcheck

View File

@@ -137,6 +137,7 @@ RUN set -x \
&& rm -rf /usr/local/src/awesome-ci \ && rm -rf /usr/local/src/awesome-ci \
\ \
&& gem install mixlib-config -v 2.2.4 \ && gem install mixlib-config -v 2.2.4 \
&& gem install rb-inotify -v 0.9.10 \
&& gem install mdl \ && gem install mdl \
&& gem install scss_lint \ && gem install scss_lint \
&& yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y eslint \ && yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y eslint \
@@ -185,8 +186,8 @@ RUN set -x \
&& cd / && rm -rf /tmp/gitflow \ && cd / && rm -rf /tmp/gitflow \
\ \
# grunt # grunt
&& yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt \ && until yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt; do sleep 1; done \
&& yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt-cli \ && until yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt-cli; do sleep 1; done \
&& rm -rf /tmp/y \ && rm -rf /tmp/y \
\ \
# laravel # laravel

View File

@@ -141,6 +141,7 @@ RUN set -x \
&& rm -rf /usr/local/src/awesome-ci \ && rm -rf /usr/local/src/awesome-ci \
\ \
&& gem install mixlib-config -v 2.2.4 \ && gem install mixlib-config -v 2.2.4 \
&& gem install rb-inotify -v 0.9.10 \
&& gem install mdl \ && gem install mdl \
&& gem install scss_lint \ && gem install scss_lint \
&& yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y eslint \ && yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y eslint \
@@ -192,8 +193,8 @@ RUN set -x \
&& cd / && rm -rf /tmp/gitflow \ && cd / && rm -rf /tmp/gitflow \
\ \
# grunt # grunt
&& yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt \ && until yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt; do sleep 1; done \
&& yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt-cli \ && until yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt-cli; do sleep 1; done \
&& rm -rf /tmp/y \ && rm -rf /tmp/y \
\ \
# laravel # laravel

View File

@@ -141,6 +141,7 @@ RUN set -x \
&& rm -rf /usr/local/src/awesome-ci \ && rm -rf /usr/local/src/awesome-ci \
\ \
&& gem install mixlib-config -v 2.2.4 \ && gem install mixlib-config -v 2.2.4 \
&& gem install rb-inotify -v 0.9.10 \
&& gem install mdl \ && gem install mdl \
&& gem install scss_lint \ && gem install scss_lint \
&& yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y eslint \ && yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y eslint \
@@ -188,7 +189,7 @@ RUN set -x \
&& 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 && composer install --no-interaction --no-progress --no-dev' \ && 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' \
&& 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 \
@@ -205,8 +206,8 @@ RUN set -x \
&& cd / && rm -rf /tmp/gitflow \ && cd / && rm -rf /tmp/gitflow \
\ \
# grunt # grunt
&& yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt \ && until yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt; do sleep 1; done \
&& yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt-cli \ && until yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt-cli; do sleep 1; done \
&& rm -rf /tmp/y \ && rm -rf /tmp/y \
\ \
# laravel # laravel

View File

@@ -141,6 +141,7 @@ RUN set -x \
&& rm -rf /usr/local/src/awesome-ci \ && rm -rf /usr/local/src/awesome-ci \
\ \
&& gem install mixlib-config -v 2.2.4 \ && gem install mixlib-config -v 2.2.4 \
&& gem install rb-inotify -v 0.9.10 \
&& gem install mdl \ && gem install mdl \
&& gem install scss_lint \ && gem install scss_lint \
&& yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y eslint \ && yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y eslint \
@@ -188,7 +189,7 @@ RUN set -x \
&& 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 && composer install --no-interaction --no-progress --no-dev' \ && 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' \
&& 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 \
@@ -205,8 +206,8 @@ RUN set -x \
&& cd / && rm -rf /tmp/gitflow \ && cd / && rm -rf /tmp/gitflow \
\ \
# grunt # grunt
&& yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt \ && until yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt; do sleep 1; done \
&& yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt-cli \ && until yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt-cli; do sleep 1; done \
&& rm -rf /tmp/y \ && rm -rf /tmp/y \
\ \
# laravel # laravel

View File

@@ -141,6 +141,7 @@ RUN set -x \
&& rm -rf /usr/local/src/awesome-ci \ && rm -rf /usr/local/src/awesome-ci \
\ \
&& gem install mixlib-config -v 2.2.4 \ && gem install mixlib-config -v 2.2.4 \
&& gem install rb-inotify -v 0.9.10 \
&& gem install mdl \ && gem install mdl \
&& gem install scss_lint \ && gem install scss_lint \
&& yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y eslint \ && yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y eslint \
@@ -188,7 +189,7 @@ RUN set -x \
&& 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 && composer install --no-interaction --no-progress --no-dev' \ && 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' \
&& 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 \
@@ -205,8 +206,8 @@ RUN set -x \
&& cd / && rm -rf /tmp/gitflow \ && cd / && rm -rf /tmp/gitflow \
\ \
# grunt # grunt
&& yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt \ && until yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt; do sleep 1; done \
&& yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt-cli \ && until yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt-cli; do sleep 1; done \
&& rm -rf /tmp/y \ && rm -rf /tmp/y \
\ \
# laravel # laravel

View File

@@ -141,6 +141,7 @@ RUN set -x \
&& rm -rf /usr/local/src/awesome-ci \ && rm -rf /usr/local/src/awesome-ci \
\ \
&& gem install mixlib-config -v 2.2.4 \ && gem install mixlib-config -v 2.2.4 \
&& gem install rb-inotify -v 0.9.10 \
&& gem install mdl \ && gem install mdl \
&& gem install scss_lint \ && gem install scss_lint \
&& yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y eslint \ && yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y eslint \
@@ -188,7 +189,7 @@ RUN set -x \
&& 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 && composer install --no-interaction --no-progress --no-dev' \ && 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' \
&& 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 \
@@ -205,8 +206,8 @@ RUN set -x \
&& cd / && rm -rf /tmp/gitflow \ && cd / && rm -rf /tmp/gitflow \
\ \
# grunt # grunt
&& yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt \ && until yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt; do sleep 1; done \
&& yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt-cli \ && until yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt-cli; do sleep 1; done \
&& rm -rf /tmp/y \ && rm -rf /tmp/y \
\ \
# laravel # laravel

View File

@@ -141,6 +141,7 @@ RUN set -x \
&& rm -rf /usr/local/src/awesome-ci \ && rm -rf /usr/local/src/awesome-ci \
\ \
&& gem install mixlib-config -v 2.2.4 \ && gem install mixlib-config -v 2.2.4 \
&& gem install rb-inotify -v 0.9.10 \
&& gem install mdl \ && gem install mdl \
&& gem install scss_lint \ && gem install scss_lint \
&& yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y eslint \ && yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y eslint \
@@ -188,7 +189,7 @@ RUN set -x \
&& 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 && composer install --no-interaction --no-progress --no-dev' \ && 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' \
&& 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 \
@@ -205,8 +206,8 @@ RUN set -x \
&& cd / && rm -rf /tmp/gitflow \ && cd / && rm -rf /tmp/gitflow \
\ \
# grunt # grunt
&& yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt \ && until yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt; do sleep 1; done \
&& yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt-cli \ && until yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt-cli; do sleep 1; done \
&& rm -rf /tmp/y \ && rm -rf /tmp/y \
\ \
# laravel # laravel

View File

@@ -141,6 +141,7 @@ RUN set -x \
&& rm -rf /usr/local/src/awesome-ci \ && rm -rf /usr/local/src/awesome-ci \
\ \
&& gem install mixlib-config -v 2.2.4 \ && gem install mixlib-config -v 2.2.4 \
&& gem install rb-inotify -v 0.9.10 \
&& gem install mdl \ && gem install mdl \
&& gem install scss_lint \ && gem install scss_lint \
&& yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y eslint \ && yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y eslint \
@@ -188,7 +189,7 @@ RUN set -x \
&& 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 && composer install --no-interaction --no-progress --no-dev' \ && 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' \
&& 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 \
@@ -205,8 +206,8 @@ RUN set -x \
&& cd / && rm -rf /tmp/gitflow \ && cd / && rm -rf /tmp/gitflow \
\ \
# grunt # grunt
&& yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt \ && until yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt; do sleep 1; done \
&& yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt-cli \ && until yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt-cli; do sleep 1; done \
&& rm -rf /tmp/y \ && rm -rf /tmp/y \
\ \
# laravel # laravel

View File

@@ -531,7 +531,7 @@ 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, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongo, msgpack, mysql, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, Phar, posix, pspell, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, SPL, SQLite, sqlite3, standard, 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, imagick, imap, interbase, intl, json, ldap, libxml, mbstring, mcrypt, memcache, memcached, mongo, mongodb, msgpack, mysql, mysqli, mysqlnd, 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>
</tr> </tr>
<tr> <tr>
<th>5.4</th> <th>5.4</th>
@@ -566,7 +566,7 @@ Check out this table to see which Docker image provides what PHP modules.
<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">apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, json, ldap, libxml, mbstring, mcrypt, memcached, mongodb, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, Phar, posix, pspell, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, sodium, SPL, sqlite3, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib</td> <td id="73-mods">apcu, bcmath, bz2, calendar, Core, ctype, curl, date, dba, dom, enchant, exif, fileinfo, filter, ftp, gd, gettext, gmp, hash, iconv, igbinary, imagick, imap, interbase, intl, json, ldap, libxml, mbstring, memcached, mongodb, mysqli, mysqlnd, openssl, pcntl, pcre, PDO, pdo_dblib, PDO_Firebird, pdo_mysql, pdo_pgsql, pdo_sqlite, pgsql, Phar, posix, pspell, rdkafka, readline, recode, redis, Reflection, session, shmop, SimpleXML, snmp, soap, sockets, sodium, SPL, sqlite3, standard, swoole, sysvmsg, sysvsem, sysvshm, tidy, tokenizer, uploadprogress, wddx, xdebug, xml, xmlreader, xmlrpc, xmlwriter, xsl, Zend OPcache, zip, zlib</td>
</tr> </tr>
<tr> <tr>
<th>7.4</th> <th>7.4</th>
@@ -766,7 +766,7 @@ Have a look at the following table to see all offered volumes for each Docker im
</tr> </tr>
<tr> <tr>
<td><code>/etc/php-fpm-custom.d</code></td> <td><code>/etc/php-fpm-custom.d</code></td>
<td>Mount this directory into your host computer and add custom PHP-FOM <code>\*.conf</code> files in order to alter PHP-FPM behaviour.</td> <td>Mount this directory into your host computer and add custom PHP-FPM <code>\*.conf</code> files in order to alter PHP-FPM behaviour.</td>
</tr> </tr>
<tr> <tr>
<td><code>/etc/php-modules.d</code></td> <td><code>/etc/php-modules.d</code></td>

View File

@@ -3,8 +3,6 @@
FROM devilbox/php-fpm-5.2 FROM devilbox/php-fpm-5.2
{% elif php_version == 5.3 %} {% elif php_version == 5.3 %}
FROM devilbox/php-fpm-5.3 FROM devilbox/php-fpm-5.3
{% elif php_version == 7.3 %}
FROM php:{{ php_version }}-rc-fpm
{% elif php_version == 7.4 %} {% elif php_version == 7.4 %}
FROM devilbox/php-fpm-7.4 FROM devilbox/php-fpm-7.4
{% else %} {% else %}

View File

@@ -332,6 +332,7 @@ software_available:
# awesome-ci requirements # awesome-ci requirements
post: | post: |
gem install mixlib-config -v 2.2.4 \ gem install mixlib-config -v 2.2.4 \
&& gem install rb-inotify -v 0.9.10 \
&& gem install mdl \ && gem install mdl \
&& gem install scss_lint \ && gem install scss_lint \
&& yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y eslint \ && yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y eslint \
@@ -392,7 +393,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 && composer install --no-interaction --no-progress --no-dev' \ && 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' \
&& 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 \
@@ -423,8 +424,8 @@ software_available:
check: grunt --version | grep -E '[.0-9]+' check: grunt --version | grep -E '[.0-9]+'
all: all:
command: | command: |
yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt \ until yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt; do sleep 1; done \
&& yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt-cli \ && until yarn global add --prod --non-interactive --link-duplicates --silent --cache-folder /tmp/y grunt-cli; do sleep 1; done \
&& rm -rf /tmp/y \ && rm -rf /tmp/y \
laravel: laravel:
check: laravel --version | grep -E '(Installer|version)\s*[.0-9]+' check: laravel --version | grep -E '(Installer|version)\s*[.0-9]+'
@@ -725,6 +726,7 @@ extensions_enabled:
- readline - readline
- recode - recode
- redis - redis
- reflection
- rdkafka - rdkafka
- session - session
- shmop - shmop
@@ -942,13 +944,14 @@ extensions_available:
5.2: 5.2:
type: pecl type: pecl
version: 2.0.7 version: 2.0.7
5.3:
type: pecl
version: 2.0.7
all: all:
type: pecl type: pecl
imagick: imagick:
disabled: [5.2, 5.3, 7.4] disabled: [5.2, 7.4]
5.3:
type: pecl
version: 3.3.0
run_dep: [libmagickwand-6.q16-2]
5.4: 5.4:
type: pecl type: pecl
run_dep: [libmagickwand-6.q16-2] run_dep: [libmagickwand-6.q16-2]
@@ -1022,7 +1025,7 @@ extensions_available:
all: all:
type: builtin type: builtin
mcrypt: mcrypt:
disabled: [7.4] disabled: [7.3, 7.4]
7.2: 7.2:
type: pecl type: pecl
version: 1.0.1 version: 1.0.1
@@ -1090,7 +1093,10 @@ extensions_available:
command: yes | pecl install mongo command: yes | pecl install mongo
build_dep: [libssl-dev, libsasl2-dev] build_dep: [libssl-dev, libsasl2-dev]
mongodb: mongodb:
disabled: [5.2, 5.3] disabled: [5.2]
5.3:
type: pecl
version: 0.6.3
5.4: 5.4:
type: pecl type: pecl
version: 1.2.11 version: 1.2.11
@@ -1201,7 +1207,12 @@ extensions_available:
build_dep: [libpq-dev] build_dep: [libpq-dev]
run_dep: [libpq5] run_dep: [libpq5]
phalcon: phalcon:
disabled: [5.2, 5.3, 7.3, 7.4] disabled: [5.2, 7.3, 7.4]
5.3:
type: git
git_url: https://github.com/phalcon/cphalcon
git_ref: phalcon-v2.0.9
command: cd build && ./install >/dev/null
5.4: 5.4:
type: git type: git
git_url: https://github.com/phalcon/cphalcon git_url: https://github.com/phalcon/cphalcon
@@ -1266,6 +1277,8 @@ extensions_available:
&& make install \ && make install \
all: all:
type: pecl type: pecl
reflection:
already_avail: [5.2, 5.3, 5.4, 5.5, 5.6, 7.0, 7.1, 7.2, 7.3, 7.4]
rdkafka: rdkafka:
disabled: [5.2] disabled: [5.2]
all: all:
@@ -1311,7 +1324,11 @@ extensions_available:
spl: spl:
disabled: "{{ php_all_versions }}" # TODO: Did not work disabled: "{{ php_all_versions }}" # TODO: Did not work
swoole: swoole:
disabled: [5.2, 5.3] disabled: [5.2]
5.3:
type: pecl
version: 1.9.23
run_dep: [libnghttp2-5]
5.4: 5.4:
type: pecl type: pecl
version: 1.9.23 version: 1.9.23
@@ -1329,82 +1346,34 @@ extensions_available:
git_ref: master git_ref: master
command: | command: |
git checkout $(git describe --abbrev=0 --tags) \ git checkout $(git describe --abbrev=0 --tags) \
&& git submodule update --init --recursive \
#`&& cd thirdparty/hiredis` \
#`&& make -j$(getconf _NPROCESSORS_ONLN)` \
#`&& make install` \
#`&& cd ../../` \
&& cd thirdparty/nghttp2 \
&& cmake . \
&& make install \
&& ldconfig \
&& cd ../.. \
&& phpize \ && phpize \
&& ./configure \ && ./configure \
--enable-async-redis \
--enable-openssl \ --enable-openssl \
--enable-thread \ --enable-sockets \
--enable-swoole \ --enable-http2 \
--enable-swoole-static \
--with-swoole \
--with-openssl-dir=/usr \
--enable-mysqlnd \ --enable-mysqlnd \
--enable-coroutine \ --enable-coroutine-postgresql \
--enable-picohttpparser \
#`--enable-timewheel` \
#`--enable-hugepage` \
#`--enable-asan` \
#`--with-phpx-dir=` \
#`--with-jemalloc-dir=/usr/include/jemalloc` \
#`--enable-coroutine-postgresql` \
#`--enable-http2` \
#`--enable-sockets` \
#`--with-libpq-dir=/usr/include/postgresql/libpq/` \
&& make -j$(getconf _NPROCESSORS_ONLN) \ && make -j$(getconf _NPROCESSORS_ONLN) \
&& make install \ && make install \
run_dep: [libnghttp2-14, libhiredis0.13] run_dep: [libnghttp2-14, libhiredis0.13]
build_dep: [libnghttp2-dev, libssl-dev, libhiredis-dev, cmake] build_dep: [libnghttp2-dev, libssl-dev, libhiredis-dev, libpq-dev, cmake]
7.4: 7.4:
type: git type: git
git_url: https://github.com/swoole/swoole-src git_url: https://github.com/swoole/swoole-src
git_ref: master git_ref: master
command: | command: |
git checkout $(git describe --abbrev=0 --tags) \ git checkout $(git describe --abbrev=0 --tags) \
&& git submodule update --init --recursive \
#`&& cd thirdparty/hiredis` \
#`&& make -j$(getconf _NPROCESSORS_ONLN)` \
#`&& make install` \
#`&& cd ../../` \
&& cd thirdparty/nghttp2 \
&& cmake . \
&& make install \
&& ldconfig \
&& cd ../.. \
&& phpize \ && phpize \
&& ./configure \ && ./configure \
#`--enable-async-redis` \
--enable-openssl \ --enable-openssl \
--enable-thread \ --enable-sockets \
--enable-swoole \ --enable-http2 \
--enable-swoole-static \
--with-swoole \
--with-openssl-dir=/usr \
--enable-mysqlnd \ --enable-mysqlnd \
--enable-coroutine \ --enable-coroutine-postgresql \
--enable-picohttpparser \
#`--enable-timewheel` \
#`--enable-hugepage` \
#`--enable-asan` \
#`--with-phpx-dir=` \
#`--with-jemalloc-dir=/usr/include/jemalloc` \
#`--enable-coroutine-postgresql` \
#`--enable-http2` \
#`--enable-sockets` \
#`--with-libpq-dir=/usr/include/postgresql/libpq/` \
&& make -j$(getconf _NPROCESSORS_ONLN) \ && make -j$(getconf _NPROCESSORS_ONLN) \
&& make install \ && make install \
run_dep: [libnghttp2-14, libhiredis0.13] run_dep: [libnghttp2-14, libhiredis0.13]
build_dep: [libnghttp2-dev, libssl-dev, libhiredis-dev, cmake] build_dep: [libnghttp2-dev, libssl-dev, libhiredis-dev, libpq-dev, cmake]
all: all:
type: pecl type: pecl
build_dep: [libnghttp2-dev, libssl-dev] build_dep: [libnghttp2-dev, libssl-dev]
@@ -1468,7 +1437,7 @@ extensions_available:
configure: --with-libxml-dir=/usr configure: --with-libxml-dir=/usr
build_dep: [libxml2-dev] build_dep: [libxml2-dev]
xdebug: xdebug:
disabled: [7.3, 7.4] disabled: [7.4]
5.2: 5.2:
type: pecl type: pecl
version: 2.2.7 version: 2.2.7
@@ -1484,6 +1453,9 @@ extensions_available:
5.6: 5.6:
type: pecl type: pecl
version: 2.4.1 version: 2.4.1
7.3:
type: pecl
version: 2.7.0beta1
all: all:
type: pecl type: pecl
xml: xml: