download 1.4 KB

123456789101112131415161718192021222324252627282930313233
  1. #!/bin/bash
  2. set -o errexit
  3. [ -z "$1" ] && echo "Please specify the version to download (ex. 2.0.0)" && exit
  4. edition=${2:-community}
  5. if [[ "$edition" == "enterprise" ]]; then
  6. rm -rf src
  7. composer create-project --repository=https://repo.magento.com/ --ignore-platform-reqs magento/project-enterprise-edition="$1" src
  8. exit 0
  9. fi
  10. if [ ! -f ~/.docker-magento/magento2-"$1".tar.gz ]; then
  11. mkdir -p ~/.docker-magento
  12. (cd ~/.docker-magento && curl -fOL http://pubfiles.nexcess.net/magento/ce-packages/magento2-"$1".tar.gz) || true
  13. fi
  14. # Fallback download to hypernode if archive doesn't exist on Nexcess (smaller than 1MB)
  15. if ! tar -tzf ~/.docker-magento/magento2-"$1".tar.gz -O &>/dev/null; then
  16. (cd ~/.docker-magento && curl -o magento2-"$1".tar.gz -fOL https://www.magento.mirror.hypernode.com/releases/magento-"$1".tar.gz) || true
  17. fi
  18. # Final fallback. If no archive exists, let's use Composer!
  19. if ! tar -tzf ~/.docker-magento/magento2-"$1".tar.gz -O &>/dev/null; then
  20. echo "Archive not found, or not yet available due to new version release."
  21. echo "Attempting install with Composer..."
  22. rm -rf src
  23. composer create-project --repository=https://repo.magento.com/ --ignore-platform-reqs magento/project-community-edition="$1" src
  24. else
  25. echo "Extracting magento2-$1.tar.gz to ./src"
  26. mkdir -p src && tar xzf ~/.docker-magento/magento2-"$1".tar.gz -o -C src
  27. fi