#!/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 "$@"