I've created a bash script to push the git branch to remote (local server). The bash script works perfectly but I've to give password for 3 major operations.
#!/bin/bash
for ARGUMENT in "$@"
do
KEY=$(echo $ARGUMENT | cut -f1 -d=)
VALUE=$(echo $ARGUMENT | cut -f2 -d=)
case "$KEY" in
API) API=${VALUE} ;;
SERVICE) SERVICE=${VALUE} ;;
MIGRATION) MIGRATION=${VALUE} ;;
*)
esac
done
if [ -z "$API" ]
then
API=$(cd /var/www/html/folder1 && git describe --contains --all HEAD)
# TERMINAL PROMPTS FOR PASSWORD FOR PUSH
cd /var/www/html/folder1 && git push local $API
fi
if [ -z "$SERVICE" ]
then
SERVICE=$(cd /var/www/html/folder2 && git describe --contains --all HEAD)
# TERMINAL PROMPTS FOR PASSWORD FOR PUSH
cd /var/www/html/folder2 && git push local $SERVICE
fi
# TERMINAL PROMPTS FOR PASSWORD FOR PUSH
ssh user@192.168.0.247 <<-ENDSSH
cd /home/user/clear/folder1
echo "Changing branch to: $API"
git checkout $API
#sbt publishLocal
cd /home/user/clear/folder2
echo "Changing branch to: $SERVICE"
git checkout $SERVICE
#sbt "runMain project"
ENDSSH
Currently I need to give password on:
git push local $API
git push local $SERVICE
ssh user@192.168.0.247
Is there any way I could pass the password once and work for all operations.
Here,
local
- Repository is the same server with IP 192.168.0.247