uci-edit-server/make-env-file

32 lines
1.3 KiB
Bash
Executable File

#!/bin/bash
is_p_int() { [ "$1" ] && [ -z "${1//[0-9]}" ] ;}
declare -A settings
[[ ! $(getent group docker) ]] && echo no docker group on machine, exiting && exit
[[ ! $1 ]] && echo "no editor set, usage make <editor>" && exit
SDIR=$(cd $(dirname $(readlink -f "$0")) >/dev/null 2>&1 ; pwd -P)
ENV_FILE=$SDIR/editors/${1}.cfg
# source any environment for particular site
# shopt -s extglob
# ENV_FILE=$(ls ${FILE}* 2> /dev/null | grep -v '.off$\|.example$\|.tmpl$\|.template$')
[[ -f $ENV_FILE ]] && source $ENV_FILE || echo WARNING no settings file $ENV_FILE, using defaults
PUID=$(id -u $USER 2> /dev/null)
[[ ! $PUID ]] && echo no user $USER, exiting && exit
[[ ! $(getent group docker | grep ${USER}) ]] && echo $USER not in docker group, exiting && exit
__ce_PUID=${PUID:-$([[ ! $(is_p_int PUID) ]] && echo $(id -u ))}
__ce_PGID=${PGID:-$(getent group docker | cut -d: -f3)}
ename=$(basename "${1%.*}")
__ce_Name=${Name:-$ename-files-editor}
__ce_TZ=${TZ:-"America/Los_Angeles"}
__ce_Password=${Password:-password}
Parent_Folder=${Parent_Folder:-${HOME}/.local/share/code-edit}
__ce_Files=${Files:-${Parent_Folder}/$ename/files}
mkdir -p ${__ce_Files}
__ce_Config=${Config:-${Parent_Folder}/$ename/config}
mkdir -p ${__ce_Config}
__ce_Port=${Port:-8443}
echo "$( set -o posix ; set | grep __ce_ | sed 's/__ce_//')" > $SDIR/editors/docker.$ename.env