config: implemented simple config module to store token and settings

This commit is contained in:
Levente Polyak 2022-10-22 15:49:57 +02:00
parent b5d5402e43
commit f63d343e40
No known key found for this signature in database
GPG Key ID: FC1B547C8D8172C8
2 changed files with 31 additions and 0 deletions

27
src/lib/config.sh Normal file
View File

@ -0,0 +1,27 @@
#!/hint/bash
#
# SPDX-License-Identifier: GPL-3.0-or-later
[[ -z ${DEVTOOLS_INCLUDE_CONFIG_SH:-} ]] || return 0
DEVTOOLS_INCLUDE_CONFIG_SH=1
set -e
readonly XDG_DEVTOOLS_DIR="${XDG_CONFIG_HOME:-$HOME/.config}/devtools"
readonly XDG_DEVTOOLS_GITLAB_CONFIG="${XDG_DEVTOOLS_DIR}/gitlab.conf"
# default config variables
export GITLAB_TOKEN=""
load_devtools_config() {
if [[ ! -f "${XDG_DEVTOOLS_GITLAB_CONFIG}" ]]; then
GITLAB_TOKEN=""
return
fi
GITLAB_TOKEN=$(grep GITLAB_TOKEN "${XDG_DEVTOOLS_GITLAB_CONFIG}"|cut -d= -f2|cut -d\" -f2)
}
save_devtools_config() {
mkdir -p "${XDG_DEVTOOLS_DIR}"
printf 'GITLAB_TOKEN="%s"\n' "${GITLAB_TOKEN}" > "${XDG_DEVTOOLS_GITLAB_CONFIG}"
}

View File

@ -5,6 +5,8 @@
_DEVTOOLS_LIBRARY_DIR=${_DEVTOOLS_LIBRARY_DIR:-@pkgdatadir@}
# shellcheck source=src/lib/common.sh
source "${_DEVTOOLS_LIBRARY_DIR}"/lib/common.sh
# shellcheck source=src/lib/config.sh
source "${_DEVTOOLS_LIBRARY_DIR}"/lib/config.sh
set -e
@ -32,6 +34,8 @@ fi
export _DEVTOOLS_COMMAND='pkgctl'
load_devtools_config
# command checking
while (( $# )); do
case $1 in