From bd2e28522adadd4d59c0e53dfc358cae1202d9e4 Mon Sep 17 00:00:00 2001 From: gitlost Date: Mon, 29 May 2017 10:08:22 +0100 Subject: [PATCH 1/7] Install Imagick. --- .travis.yml | 3 ++- bin/install-imagick.sh | 29 +++++++++++++++++++++++++++++ 2 files changed, 31 insertions(+), 1 deletion(-) create mode 100644 bin/install-imagick.sh diff --git a/.travis.yml b/.travis.yml index ac14a9aff..303cb132b 100644 --- a/.travis.yml +++ b/.travis.yml @@ -15,6 +15,7 @@ cache: directories: - vendor - $HOME/.composer/cache + - $HOME/opt/$TRAVIS_PHP_VERSION env: global: - PATH="$TRAVIS_BUILD_DIR/vendor/bin:$PATH" @@ -35,7 +36,7 @@ matrix: before_install: - phpenv config-rm xdebug.ini - - if [[ $TRAVIS_PHP_VERSION = '5.6' ]]; then printf "\n" | pecl install imagick; fi + - bash bin/install-imagick.sh - php -m install: diff --git a/bin/install-imagick.sh b/bin/install-imagick.sh new file mode 100644 index 000000000..efb744c87 --- /dev/null +++ b/bin/install-imagick.sh @@ -0,0 +1,29 @@ +#!/usr/bin/env bash + +set -ex + +# ImageMagick/Imagick versions to use +IMAGEMAGICK_VERSION='6.9.7-10' +IMAGICK_VERSION='3.4.3' + +install_imagemagick() { + curl -O "https://www.imagemagick.org/download/releases/ImageMagick-$IMAGEMAGICK_VERSION.tar.xz" -f + tar xf "ImageMagick-$IMAGEMAGICK_VERSION.tar.xz" + rm "ImageMagick-$IMAGEMAGICK_VERSION.tar.xz" + cd "ImageMagick-$IMAGEMAGICK_VERSION" + + ./configure --prefix="$HOME/opt/$TRAVIS_PHP_VERSION" --with-perl=no + make + make install + + # Don't need doc - saves around 24M. + if [[ -d "$HOME/opt/$TRAVIS_PHP_VERSION/share/doc" ]]; then rm -rf "$HOME/opt/$TRAVIS_PHP_VERSION/share/doc"; fi + + cd "$TRAVIS_BUILD_DIR" +} + +# Install ImageMagick if the current version isn't up to date +PATH="$HOME/opt/$TRAVIS_PHP_VERSION/bin:$PATH" identify -version | grep "$IMAGEMAGICK_VERSION" || install_imagemagick + +# Install Imagick for PHP +echo "$HOME/opt/$TRAVIS_PHP_VERSION" | pecl install -f "imagick-$IMAGICK_VERSION" From e5e2cba249791020aad633bd0f1ece323c7d4bb0 Mon Sep 17 00:00:00 2001 From: gitlost Date: Mon, 29 May 2017 10:23:15 +0100 Subject: [PATCH 2/7] Check caching (comment change). --- bin/install-imagick.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/bin/install-imagick.sh b/bin/install-imagick.sh index efb744c87..b8ea78202 100644 --- a/bin/install-imagick.sh +++ b/bin/install-imagick.sh @@ -6,6 +6,7 @@ set -ex IMAGEMAGICK_VERSION='6.9.7-10' IMAGICK_VERSION='3.4.3' +# Based on http://stackoverflow.com/a/41138688/664741 install_imagemagick() { curl -O "https://www.imagemagick.org/download/releases/ImageMagick-$IMAGEMAGICK_VERSION.tar.xz" -f tar xf "ImageMagick-$IMAGEMAGICK_VERSION.tar.xz" From 861babaa2e85151b9385deab82a675b8a46d0f05 Mon Sep 17 00:00:00 2001 From: gitlost Date: Mon, 29 May 2017 10:29:58 +0100 Subject: [PATCH 3/7] Split cache by WP_VERSION also. --- .travis.yml | 2 +- bin/install-imagick.sh | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/.travis.yml b/.travis.yml index 303cb132b..d63d532ff 100644 --- a/.travis.yml +++ b/.travis.yml @@ -15,7 +15,7 @@ cache: directories: - vendor - $HOME/.composer/cache - - $HOME/opt/$TRAVIS_PHP_VERSION + - $HOME/opt/$WP_VERSION/$TRAVIS_PHP_VERSION env: global: - PATH="$TRAVIS_BUILD_DIR/vendor/bin:$PATH" diff --git a/bin/install-imagick.sh b/bin/install-imagick.sh index b8ea78202..e7122ce26 100644 --- a/bin/install-imagick.sh +++ b/bin/install-imagick.sh @@ -13,18 +13,18 @@ install_imagemagick() { rm "ImageMagick-$IMAGEMAGICK_VERSION.tar.xz" cd "ImageMagick-$IMAGEMAGICK_VERSION" - ./configure --prefix="$HOME/opt/$TRAVIS_PHP_VERSION" --with-perl=no + ./configure --prefix="$HOME/opt/$WP_VERSION/$TRAVIS_PHP_VERSION" --with-perl=no make make install # Don't need doc - saves around 24M. - if [[ -d "$HOME/opt/$TRAVIS_PHP_VERSION/share/doc" ]]; then rm -rf "$HOME/opt/$TRAVIS_PHP_VERSION/share/doc"; fi + if [[ -d "$HOME/opt/$WP_VERSION/$TRAVIS_PHP_VERSION/share/doc" ]]; then rm -rf "$HOME/opt/$WP_VERSION/$TRAVIS_PHP_VERSION/share/doc"; fi cd "$TRAVIS_BUILD_DIR" } # Install ImageMagick if the current version isn't up to date -PATH="$HOME/opt/$TRAVIS_PHP_VERSION/bin:$PATH" identify -version | grep "$IMAGEMAGICK_VERSION" || install_imagemagick +PATH="$HOME/opt/$WP_VERSION/$TRAVIS_PHP_VERSION/bin:$PATH" identify -version | grep "$IMAGEMAGICK_VERSION" || install_imagemagick # Install Imagick for PHP -echo "$HOME/opt/$TRAVIS_PHP_VERSION" | pecl install -f "imagick-$IMAGICK_VERSION" +echo "$HOME/opt/$WP_VERSION/$TRAVIS_PHP_VERSION" | pecl install -f "imagick-$IMAGICK_VERSION" From 8c4b0831b349b3e64229781c5903b54b2e57e436 Mon Sep 17 00:00:00 2001 From: gitlost Date: Mon, 29 May 2017 11:12:38 +0100 Subject: [PATCH 4/7] Sigh. Try ImageMagick 6.9.8-8 for PHP 7.1. --- bin/install-imagick.sh | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/bin/install-imagick.sh b/bin/install-imagick.sh index e7122ce26..0377b7a68 100644 --- a/bin/install-imagick.sh +++ b/bin/install-imagick.sh @@ -6,6 +6,10 @@ set -ex IMAGEMAGICK_VERSION='6.9.7-10' IMAGICK_VERSION='3.4.3' +if [[ "$TRAVIS_PHP_VERSION" = '7.1' ]]; then + IMAGEMAGICK_VERSION='6.9.8-8' +fi + # Based on http://stackoverflow.com/a/41138688/664741 install_imagemagick() { curl -O "https://www.imagemagick.org/download/releases/ImageMagick-$IMAGEMAGICK_VERSION.tar.xz" -f From e8ef5b27a83309cc8e823dac3544fcc10ff41a95 Mon Sep 17 00:00:00 2001 From: gitlost Date: Mon, 29 May 2017 11:25:21 +0100 Subject: [PATCH 5/7] Test caching (comment change). --- bin/install-imagick.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/bin/install-imagick.sh b/bin/install-imagick.sh index 0377b7a68..f9c90ad2d 100644 --- a/bin/install-imagick.sh +++ b/bin/install-imagick.sh @@ -7,6 +7,7 @@ IMAGEMAGICK_VERSION='6.9.7-10' IMAGICK_VERSION='3.4.3' if [[ "$TRAVIS_PHP_VERSION" = '7.1' ]]; then + # This non-10 version will probably disappear in the near future. IMAGEMAGICK_VERSION='6.9.8-8' fi From b5c4afdd3f2b4321937574adbbec562adeccaf0a Mon Sep 17 00:00:00 2001 From: gitlost Date: Mon, 29 May 2017 19:14:44 +0100 Subject: [PATCH 6/7] Try ImageMagick 7.0.4-10 for PHP 7.1. --- bin/install-imagick.sh | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/bin/install-imagick.sh b/bin/install-imagick.sh index f9c90ad2d..60a12938b 100644 --- a/bin/install-imagick.sh +++ b/bin/install-imagick.sh @@ -7,8 +7,7 @@ IMAGEMAGICK_VERSION='6.9.7-10' IMAGICK_VERSION='3.4.3' if [[ "$TRAVIS_PHP_VERSION" = '7.1' ]]; then - # This non-10 version will probably disappear in the near future. - IMAGEMAGICK_VERSION='6.9.8-8' + IMAGEMAGICK_VERSION='7.0.4-10' fi # Based on http://stackoverflow.com/a/41138688/664741 From 28cbbf040505c53580d6b22246ba4ddf4b68ad7a Mon Sep 17 00:00:00 2001 From: gitlost Date: Mon, 29 May 2017 20:24:17 +0100 Subject: [PATCH 7/7] Check caching (comments change). --- bin/install-imagick.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/bin/install-imagick.sh b/bin/install-imagick.sh index 60a12938b..71efb6713 100644 --- a/bin/install-imagick.sh +++ b/bin/install-imagick.sh @@ -2,7 +2,7 @@ set -ex -# ImageMagick/Imagick versions to use +# ImageMagick/Imagick versions to use. IMAGEMAGICK_VERSION='6.9.7-10' IMAGICK_VERSION='3.4.3' @@ -27,8 +27,8 @@ install_imagemagick() { cd "$TRAVIS_BUILD_DIR" } -# Install ImageMagick if the current version isn't up to date +# Install ImageMagick if the current version isn't up to date. PATH="$HOME/opt/$WP_VERSION/$TRAVIS_PHP_VERSION/bin:$PATH" identify -version | grep "$IMAGEMAGICK_VERSION" || install_imagemagick -# Install Imagick for PHP +# Install Imagick for PHP. echo "$HOME/opt/$WP_VERSION/$TRAVIS_PHP_VERSION" | pecl install -f "imagick-$IMAGICK_VERSION"