commit 231ad162d26193546cc57594f7769e0e4729c1e0 parent 187ec7dfabfb53066af349e294ec7195b4223d4d Author: Fred Großkopf <fred@kuandu.systems> Date: Thu, 17 Sep 2026 23:58:41 +0200 dry: adds load_config helper Diffstat:
| M | gitpages.sh | | | 37 | ++++++++++++++++++++----------------- |
1 file changed, 20 insertions(+), 17 deletions(-)
diff --git a/gitpages.sh b/gitpages.sh @@ -86,7 +86,25 @@ has_repos() { ls "$1"/*.git > /dev/null 2>&1 2> /dev/null } + # --- Core Logic --- + +load_config() { + CONFIG="$1" + + [ -r "$CONFIG" ] || + error "config $CONFIG not readable" + + WEB_ROOT=$(get_config_val "WEB_ROOT") + GIT_SRC=$(get_config_val "GIT_SRC") + GIT_RAW=$(get_config_val "GIT_RAW") + GIT_HTML=$(get_config_val "GIT_HTML") + INDEX_TITLE=$(get_config_val "INDEX_TITLE") + INDEX_DESC=$(get_config_val "INDEX_DESCRIPTION") + REPO_TITLE_DESC=$(get_config_val "REPO_TITLE_DESCRIPTION") + ASSETS_DIR=$(get_config_val "ASSETS_DIR") +} + generate_repo_html() { rm -rf "$STAGING_DIR" mkdir -p "$STAGING_DIR" @@ -150,18 +168,9 @@ swap_target_dir() { } generate_repo() { - CONFIG="$1" + load_config "$1" REPO_SRC="$2" - [ -r "$CONFIG" ] || error "config $CONFIG not readable" - WEB_ROOT=$(get_config_val "WEB_ROOT") - GIT_HTML=$(get_config_val "GIT_HTML") - GIT_RAW=$(get_config_val "GIT_RAW") - INDEX_TITLE=$(get_config_val "INDEX_TITLE") - INDEX_DESC=$(get_config_val "INDEX_DESCRIPTION") - REPO_TITLE_DESC=$(get_config_val "REPO_TITLE_DESCRIPTION") - ASSETS_DIR=$(get_config_val "ASSETS_DIR") - check_deps REPO_BASE=$(basename "$REPO_SRC" ".git") @@ -182,13 +191,7 @@ generate_repo() { } generate_all() { - CONFIG="$1" - - [ -r "$CONFIG" ] || error "config $CONFIG not readable" - - WEB_ROOT=$(get_config_val "WEB_ROOT") - GIT_SRC=$(get_config_val "GIT_SRC") - GIT_RAW=$(get_config_val "GIT_RAW") + load_config "$1" [ -n "$WEB_ROOT" ] || error "WEB_ROOT missing in config" [ -n "$GIT_SRC" ] || error "GIT_SRC missing in config"