From 52cbbe34be548034ba43a0ecefd3a030a8cd8372 Mon Sep 17 00:00:00 2001 From: Ben Ramsey Date: Wed, 29 Jan 2020 13:16:20 -0600 Subject: [PATCH] Disable Xdebug in push builds to speed them up --- .travis.yml | 1 + resources/docker/Dockerfile | 7 +++++-- resources/docker/build.sh | 14 +++++++++++++- resources/scripts/cmd-proxy.sh | 8 +++++++- resources/scripts/php-coveralls.sh | 4 ++++ 5 files changed, 30 insertions(+), 4 deletions(-) diff --git a/.travis.yml b/.travis.yml index 3fc4b09..75341f8 100644 --- a/.travis.yml +++ b/.travis.yml @@ -47,6 +47,7 @@ before_install: - ./resources/scripts/cmd-proxy.sh ./resources/scripts/system-info.sh install: + - [ "${TRAVIS_EVENT_TYPE}" != "cron" ] && phpenv config-rm xdebug.ini - travis_retry ./resources/scripts/cmd-proxy.sh composer require --no-update "php-coveralls/php-coveralls:^1 | ^2" - travis_retry ./resources/scripts/cmd-proxy.sh composer install --no-interaction --prefer-dist --no-progress --no-suggest diff --git a/resources/docker/Dockerfile b/resources/docker/Dockerfile index 96aaf00..21e098a 100644 --- a/resources/docker/Dockerfile +++ b/resources/docker/Dockerfile @@ -3,6 +3,8 @@ ARG ARCH FROM ${ARCH}/php:${PHP_VERSION}-cli-alpine +ARG XDEBUG + RUN apk update \ && apk add --virtual=builddeps autoconf g++ gcc libc6-compat make re2c \ && apk add \ @@ -15,8 +17,9 @@ RUN apk update \ && docker-php-ext-install -j$(nproc) bcmath gmp zip \ && yes '' | pecl install libsodium-1.0.7 \ && yes '' | pecl install uuid \ - && yes '' | pecl install xdebug \ - && docker-php-ext-enable libsodium uuid xdebug \ + && docker-php-ext-enable libsodium uuid \ + && if [ "${XDEBUG}" == "yes" ]; then yes '' | pecl install xdebug; fi \ + && if [ "${XDEBUG}" == "yes" ]; then docker-php-ext-enable xdebug; fi \ && apk del builddeps COPY composer-install.sh /usr/local/bin/composer-install.sh diff --git a/resources/docker/build.sh b/resources/docker/build.sh index 8cb3029..976b991 100755 --- a/resources/docker/build.sh +++ b/resources/docker/build.sh @@ -2,9 +2,21 @@ PHP_VERSION=$1 ARCH=$2 +XDEBUG=${3:-no} + +xdebug_tag="-without-xdebug" +if [ "${XDEBUG}" == "yes" ]; then + xdebug_tag="" +fi + +build_tag="benramsey/ramsey-uuid:php-${PHP_VERSION}-${ARCH}${xdebug_tag}" docker build \ - --tag benramsey/ramsey-uuid:php-${PHP_VERSION}-${ARCH} \ + --tag ${build_tag} \ --build-arg PHP_VERSION=${PHP_VERSION} \ --build-arg ARCH=${ARCH} \ + --build-arg XDEBUG=${XDEBUG} \ . + +docker run --rm ${build_tag} php -v +docker run --rm ${build_tag} composer --version --ansi diff --git a/resources/scripts/cmd-proxy.sh b/resources/scripts/cmd-proxy.sh index 385e285..6934649 100755 --- a/resources/scripts/cmd-proxy.sh +++ b/resources/scripts/cmd-proxy.sh @@ -14,10 +14,16 @@ fi architecture="${ARCH:-${TRAVIS_CPU_ARCH:-$(uname -m)}}" +# Only use Xdebug if running as a cron job on Travis CI +xdebug="" +if [ "${TRAVIS_EVENT_TYPE}" != "cron" ]; then + xdebug="-without-xdebug" +fi + cmd_proxy="" if [ "${architecture}" = "arm32" ]; then - image="benramsey/ramsey-uuid:php-${php_version}-arm32v7" + image="benramsey/ramsey-uuid:php-${php_version}-arm32v7${xdebug}" volumes="-v ${PWD}:${PWD} -v ${HOME}/.composer/cache:/root/.composer/cache" cmd_proxy="docker run --rm ${volumes} -w ${PWD} ${image}" fi diff --git a/resources/scripts/php-coveralls.sh b/resources/scripts/php-coveralls.sh index d194ff4..5031938 100755 --- a/resources/scripts/php-coveralls.sh +++ b/resources/scripts/php-coveralls.sh @@ -2,6 +2,10 @@ set -e +if [ "${TRAVIS_EVENT_TYPE}" != "cron" ]; then + exit 0 +fi + if [ -f vendor/bin/php-coveralls ]; then php vendor/bin/php-coveralls -v else