feat: smart capacity defaults and per-runner data paths in runner wizard
- Capacity defaults: Unraid=2, Fedora=2, macOS=1 (based on host type) - Data path appends runner name to base path to prevent collisions - RUNNER_DEFAULT_DATA_PATH → RUNNER_DATA_BASE_PATH - LOCAL_RUNNER_DATA_PATH → LOCAL_RUNNER_DATA_BASE_PATH Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -16,7 +16,7 @@ RUNNERS_CONF="${PROJECT_ROOT}/runners.conf"
|
||||
# shellcheck disable=SC1091
|
||||
source "${PROJECT_ROOT}/lib/common.sh"
|
||||
|
||||
# Load .env for defaults (RUNNER_DEFAULT_IMAGE, RUNNER_DEFAULT_CAPACITY, etc.)
|
||||
# Load .env for defaults (RUNNER_DEFAULT_IMAGE, RUNNER_DATA_BASE_PATH, etc.)
|
||||
load_env
|
||||
|
||||
# Colors — only emit ANSI escapes when stdout is a terminal (not piped/redirected)
|
||||
@@ -404,9 +404,9 @@ for ((i = 0; i < runner_count; i++)); do
|
||||
fi
|
||||
if [[ -z "$path_default" ]]; then
|
||||
if [[ "$r_type" == "native" ]]; then
|
||||
path_default="${LOCAL_RUNNER_DATA_PATH:-~/gitea-runner}"
|
||||
path_default="${LOCAL_RUNNER_DATA_BASE_PATH:-~/gitea-runner}/${r_name}"
|
||||
else
|
||||
path_default="${RUNNER_DEFAULT_DATA_PATH:-/mnt/nvme/gitea-runner}"
|
||||
path_default="${RUNNER_DATA_BASE_PATH:-/mnt/nvme/gitea-runner}/${r_name}"
|
||||
fi
|
||||
fi
|
||||
prompt_field "data_path" "absolute path for runner data" "runner_path" "$path_default"
|
||||
@@ -460,7 +460,12 @@ for ((i = 0; i < runner_count; i++)); do
|
||||
cap_default=$(ini_default_get "$ex_name" "capacity" "")
|
||||
fi
|
||||
if [[ -z "$cap_default" ]]; then
|
||||
cap_default="${RUNNER_DEFAULT_CAPACITY:-1}"
|
||||
# Smart defaults per host type
|
||||
case "$r_host" in
|
||||
UNRAID) cap_default=2 ;;
|
||||
FEDORA) cap_default=2 ;;
|
||||
*) cap_default=1 ;; # macOS / native
|
||||
esac
|
||||
fi
|
||||
prompt_field "capacity" "max concurrent jobs (>= 1)" "capacity" "$cap_default"
|
||||
save_runner_field "$r_name" "capacity" "$PROMPT_RESULT"
|
||||
|
||||
Reference in New Issue
Block a user