mirror of
https://github.com/shivammathur/setup-php.git
synced 2024-11-22 20:01:06 +07:00
Improve composer installer
- Check to signature. - Add error handling. - See Also https://getcomposer.org/doc/faqs/how-to-install-composer-programmatically.md
This commit is contained in:
parent
83cc9a4bcf
commit
c6f956927a
20
src/linux.sh
20
src/linux.sh
@ -13,13 +13,27 @@ if [ "$version" != "$1" ]; then
|
||||
fi
|
||||
|
||||
if [ ! -e "/usr/bin/composer" ]; then
|
||||
sudo curl -s https://getcomposer.org/installer | php;
|
||||
sudo mv composer.phar /usr/local/bin/composer;
|
||||
EXPECTED_SIGNATURE="$(curl -s https://composer.github.io/installer.sig)"
|
||||
curl -s -L https://getcomposer.org/installer > composer-setup.php
|
||||
ACTUAL_SIGNATURE="$(php -r "echo hash_file('sha384', 'composer-setup.php');")"
|
||||
|
||||
if [ "$EXPECTED_SIGNATURE" != "$ACTUAL_SIGNATURE" ]; then
|
||||
>&2 echo 'ERROR: Invalid installer signature'
|
||||
rm composer-setup.php
|
||||
exit 1
|
||||
fi
|
||||
|
||||
COMPOSER_ALLOW_SUPERUSER=1
|
||||
sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer
|
||||
RESULT=$?
|
||||
rm composer-setup.php
|
||||
exit $RESULT
|
||||
fi
|
||||
|
||||
composer global require hirak/prestissimo > /dev/null 2>&1
|
||||
ini_file=$(php --ini | grep "Loaded Configuration" | sed -e "s|.*:s*||" | sed "s/ //g")
|
||||
ext_dir=$(/usr/bin/php -i | grep "extension_dir => /usr" | sed -e "s|.*=> s*||")
|
||||
sudo chmod 777 "$ini_file"
|
||||
sudo mkdir -p /run/php
|
||||
php -v
|
||||
composer -V
|
||||
composer -V
|
||||
|
Loading…
Reference in New Issue
Block a user