1
0
mirror of https://github.com/LaCasemate/fab-manager.git synced 2024-11-28 09:24:24 +01:00
fab-manager/scripts/set-docker-user.sh

37 lines
903 B
Bash
Executable File

#!/usr/bin/env bash
yq() {
docker run --rm -i -v "${PWD}:/workdir" --user "$UID" mikefarah/yq:4 "$@"
}
config()
{
echo -ne "Checking user... "
if [[ "$(whoami)" != "root" ]] && ! groups | grep docker
then
echo "Please add your current user to the docker group OR run this script as root."
echo "current user is not allowed to use docker, exiting..."
exit 1
fi
SERVICE="$(yq eval '.services.*.image | select(. == "sleede/fab-manager*") | path | .[-2]' docker-compose.yml)"
echo -e "\n"
}
set_user()
{
CURRENT_VALUE=$(yq eval ".services.$SERVICE.user" docker-compose.yml)
USER_ID="$(id -u):$(id -g)"
if [[ "$CURRENT_VALUE" == "USER_ID" || "$CURRENT_VALUE" == "null" ]]; then
yq -i eval ".services.$SERVICE.user |= \"$USER_ID\"" docker-compose.yml
echo "Service user was set to $USER_ID for $SERVICE"
fi
}
proceed()
{
config
set_user
}
proceed "$@"