travis-build.sh 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. #!/usr/bin/env bash
  2. #### halt script on error
  3. set -xe
  4. echo '##### Print docker version'
  5. docker --version
  6. echo '##### Print environment'
  7. env | sort
  8. #### Build the Docker Images
  9. if [ -n "${PHP_VERSION}" ]; then
  10. cp env-example .env
  11. sed -i -- "s/PHP_VERSION=.*/PHP_VERSION=${PHP_VERSION}/g" .env
  12. sed -i -- 's/=false/=true/g' .env
  13. sed -i -- 's/CHANGE_SOURCE=true/CHANGE_SOURCE=false/g' .env
  14. sed -i -- 's/PHPDBG=true/PHPDBG=false/g' .env
  15. sed -i -- 's/CASSANDRA=true/CASSANDRA=false/g' .env
  16. sed -i -- 's/GEARMAN=true/GEARMAN=false/g' .env
  17. sed -i -- 's/AEROSPIKE=true/AEROSPIKE=false/g' .env
  18. sed -i -- 's/PHALCON=true/PHALCON=false/g' .env
  19. sed -i -- 's/RDKAFKA=true/RDKAFKA=false/g' .env
  20. sed -i -- 's/MAILPARSE=true/MAILPARSE=false/g' .env
  21. sed -i -- 's/SWOOLE=true/SWOOLE=false/g' .env
  22. sed -i -- 's/V8JS=true/V8JS=false/g' .env
  23. if [ "${PHP_VERSION}" == "5.6" ]; then
  24. # Aerospike C Client SDK 4.0.7, Debian 9.6 is not supported
  25. # https://github.com/aerospike/aerospike-client-php5/issues/145
  26. sed -i -- 's/WORKSPACE_INSTALL_AEROSPIKE=true/WORKSPACE_INSTALL_AEROSPIKE=false/g' .env
  27. sed -i -- 's/PHP_FPM_INSTALL_AEROSPIKE=true/PHP_FPM_INSTALL_AEROSPIKE=false/g' .env
  28. fi
  29. if [ "${PHP_VERSION}" == "7.3" ]; then
  30. # V8JS extension does not yet support PHP 7.3.
  31. sed -i -- 's/WORKSPACE_INSTALL_V8JS=true/WORKSPACE_INSTALL_V8JS=false/g' .env
  32. # This ssh2 extension does not yet support PHP 7.3.
  33. sed -i -- 's/PHP_FPM_INSTALL_SSH2=true/PHP_FPM_INSTALL_SSH2=false/g' .env
  34. # xdebug extension does not yet support PHP 7.3.
  35. sed -i -- 's/PHP_FPM_INSTALL_XDEBUG=true/PHP_FPM_INSTALL_XDEBUG=false/g' .env
  36. # memcached extension does not yet support PHP 7.3.
  37. sed -i -- 's/PHP_FPM_INSTALL_MEMCACHED=true/PHP_FPM_INSTALL_MEMCACHED=false/g' .env
  38. fi
  39. sed -i -- 's/CHANGE_SOURCE=true/CHANGE_SOURCE=false/g' .env
  40. cat .env
  41. docker-compose build ${BUILD_SERVICE}
  42. docker images
  43. fi
  44. #### Generate the Laradock Documentation site using Hugo
  45. if [ -n "${HUGO_VERSION}" ]; then
  46. HUGO_PACKAGE=hugo_${HUGO_VERSION}_Linux-64bit
  47. HUGO_BIN=hugo_${HUGO_VERSION}_linux_amd64
  48. # Download hugo binary
  49. curl -L https://github.com/spf13/hugo/releases/download/v$HUGO_VERSION/$HUGO_PACKAGE.tar.gz | tar xz
  50. mkdir -p $HOME/bin
  51. mv ./${HUGO_BIN}/${HUGO_BIN} $HOME/bin/hugo
  52. # Remove existing docs
  53. if [ -d "./docs" ]; then
  54. rm -r ./docs
  55. fi
  56. # Build docs
  57. cd DOCUMENTATION
  58. hugo
  59. fi