oncall-engine/dev/add_env_var.sh

27 lines
667 B
Bash
Raw Normal View History

#!/usr/bin/env bash
# https://gist.github.com/maxpoletaev/4ed25183427a2cd7e57a
case "$OSTYPE" in
darwin*) PLATFORM="OSX" ;;
linux*) PLATFORM="LINUX" ;;
bsd*) PLATFORM="BSD" ;;
*) PLATFORM="UNKNOWN" ;;
esac
replace() {
if [[ "$PLATFORM" == "OSX" || "$PLATFORM" == "BSD" ]]; then
sed -i "" "$1" "$2"
elif [ "$PLATFORM" == "LINUX" ]; then
sed -i "$1" "$2"
fi
}
if grep -q $1 $3; then
# file contains string, lets replace it
# https://stackoverflow.com/a/42667816 - why we need the -i ''
replace "s~$1=.*~$1=$2~g" $3
else
# file doesn't contain string, lets append it
echo "$1=$2" >> $3
fi