52 lines
1.5 KiB
Bash
52 lines
1.5 KiB
Bash
|
#! /usr/bin/env bash
|
||
|
|
||
|
RED='\033[0;31m'
|
||
|
GREEN='\033[0;32m'
|
||
|
NC='\033[0m' # No Color
|
||
|
|
||
|
vercomp () {
|
||
|
if [[ $1 == $2 ]]
|
||
|
then
|
||
|
return 1
|
||
|
fi
|
||
|
local IFS=.
|
||
|
local i ver1=($1) ver2=($2)
|
||
|
# fill empty fields in ver1 with zeros
|
||
|
for ((i=${#ver1[@]}; i<${#ver2[@]}; i++))
|
||
|
do
|
||
|
ver1[i]=0
|
||
|
done
|
||
|
for ((i=0; i<${#ver1[@]}; i++))
|
||
|
do
|
||
|
if [[ -z ${ver2[i]} ]]
|
||
|
then
|
||
|
# fill empty fields in ver2 with zeros
|
||
|
ver2[i]=0
|
||
|
fi
|
||
|
if ((10#${ver1[i]} > 10#${ver2[i]}))
|
||
|
then
|
||
|
return 1
|
||
|
fi
|
||
|
done
|
||
|
return 0
|
||
|
}
|
||
|
|
||
|
composer_version_string=`composer --version`
|
||
|
composer_version=`echo $composer_version_string | awk 'BEGIN { FS="[ ]" } ; { print $3 }'`
|
||
|
|
||
|
if [[ $(vercomp $composer_version 1.9.0 ; echo $?) -eq 0 ]]; then
|
||
|
echo -e "${RED}Please update your version of composer.${NC} The minimum requirements is 1.9.0."
|
||
|
echo -e "The minimum requirement is 1.9.0. You can use the following to update your composer installation:"
|
||
|
|
||
|
cat << EOF
|
||
|
|
||
|
$ php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
|
||
|
$ php -r "if (hash_file('sha384', 'composer-setup.php') === 'e0012edf3e80b6978849f5eff0d4b4e4c79ff1609dd1e613307e16318854d24ae64f26d17af3ef0bf7cfb710ca74755a') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
|
||
|
$ php composer-setup.php --install-dir=/tmp --filename=composer
|
||
|
$ mv /tmp/composer /usr/local/bin/composer
|
||
|
EOF
|
||
|
|
||
|
exit 1
|
||
|
|
||
|
fi
|