#!/bin/bash set -e testDir="php-sdk-test" GREEN="\033[0;32m" NC="\033[0m" if [ ! $PLIVO_API_PROD_HOST ] || [ ! $PLIVO_API_DEV_HOST ] || [ ! $PLIVO_AUTH_ID ] || [ ! $PLIVO_AUTH_TOKEN ]; then echo "Environment variables not properly set! Please refer to Local Development section in README!" exit 126 fi cd /usr/src/app echo "Setting plivo-api endpoint to dev..." find /usr/src/app/src/Plivo -type f -exec sed -i "s/$PLIVO_API_PROD_HOST/$PLIVO_API_DEV_HOST/g" {} \; composer install if [ ! -d $testDir ]; then echo "Creating test dir..." mkdir -p $testDir fi if [ ! -f $testDir/test.php ]; then echo "Creating test file..." cd $testDir echo " test.php echo "require '/usr/src/app/vendor/autoload.php';" >> test.php echo "use Plivo\\RestClient;" >> test.php echo -e "\n\n\$client = new RestClient();\n" >> test.php echo -e "\n\n?>" >> test.php cd - fi echo -e "\n\nSDK setup complete! You can test changes either on host or inside the docker container:" echo -e "\ta. To test your changes ON HOST:" echo -e "\t\t1. Add your test code in /$testDir/test.php" echo -e "\t\t2. Run your test file using: $GREEN make run CONTAINER=$HOSTNAME$NC" echo -e "\t\t3. Run unit tests using: $GREEN make test CONTAINER=$HOSTNAME$NC" echo echo -e "\tb. To test your changes INSIDE CONTAINER:" echo -e "\t\t1. Run a terminal in the container using: $GREEN docker exec -it $HOSTNAME /bin/bash$NC" echo -e "\t\t2. Add your test code in /usr/src/app/$testDir/test.php" echo -e "\t\t3. Run your test file using: $GREEN make run$NC" echo -e "\t\t4. Run unit tests using: $GREEN make test$NC" ## To keep the container running post setup /bin/bash