Skip to content

Commit e86d78c

Browse files
Merge pull request #1008 from yasinBursali/refactor/dream-cli-post-pipefail-hygiene
refactor(dream-cli): guard .env grep pipelines against pipefail kill on missing keys
2 parents 3351c56 + ea225f6 commit e86d78c

1 file changed

Lines changed: 7 additions & 7 deletions

File tree

dream-server/dream-cli

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -251,7 +251,7 @@ _check_version_compat() {
251251

252252
# 1. Installed version
253253
_COMPAT_INSTALLED_VER=$(grep '^DREAM_VERSION=' "$INSTALL_DIR/.env" 2>/dev/null \
254-
| head -1 | cut -d= -f2 | tr -d '[:space:]')
254+
| sed -n '1p' | cut -d= -f2 | tr -d '[:space:]' || true)
255255
# Fall back to .version file (written by dream-update.sh / PR #349 convention)
256256
if [[ -z "$_COMPAT_INSTALLED_VER" && -f "$INSTALL_DIR/.version" ]]; then
257257
_COMPAT_INSTALLED_VER=$(jq -r '.version // empty' "$INSTALL_DIR/.version" 2>/dev/null \
@@ -833,7 +833,7 @@ cmd_dry_run() {
833833
local cur_ver="0.0.0"
834834
if [[ -f "$INSTALL_DIR/.env" ]]; then
835835
local _v
836-
_v=$(grep '^DREAM_VERSION=' "$INSTALL_DIR/.env" 2>/dev/null | cut -d= -f2 | tr -d '[:space:]')
836+
_v=$(grep '^DREAM_VERSION=' "$INSTALL_DIR/.env" 2>/dev/null | cut -d= -f2 | tr -d '[:space:]' || true)
837837
[[ -n "$_v" ]] && cur_ver="$_v"
838838
fi
839839
if [[ "$cur_ver" == "0.0.0" && -f "$INSTALL_DIR/.version" ]]; then
@@ -846,7 +846,7 @@ cmd_dry_run() {
846846
local api_json=""
847847
local dashboard_port="${DASHBOARD_PORT:-3002}"
848848
local api_key=""
849-
api_key=$(grep '^DASHBOARD_API_KEY=' "$INSTALL_DIR/.env" 2>/dev/null | cut -d= -f2 | tr -d '[:space:]')
849+
api_key=$(grep '^DASHBOARD_API_KEY=' "$INSTALL_DIR/.env" 2>/dev/null | cut -d= -f2 | tr -d '[:space:]' || true)
850850
if [[ -n "$api_key" ]]; then
851851
api_json=$(curl -sf --max-time 5 \
852852
-H "X-API-Key: ${api_key}" \
@@ -935,7 +935,7 @@ cmd_dry_run() {
935935
local key
936936
for key in "${model_keys[@]}"; do
937937
local val
938-
val=$(grep "^${key}=" "$INSTALL_DIR/.env" 2>/dev/null | cut -d= -f2 | tr -d '[:space:]')
938+
val=$(grep "^${key}=" "$INSTALL_DIR/.env" 2>/dev/null | cut -d= -f2 | tr -d '[:space:]' || true)
939939
printf " %-16s %s\n" "${key}:" "${val:-(not set)}"
940940
done
941941
echo ""
@@ -950,7 +950,7 @@ cmd_dry_run() {
950950
else
951951
for key in "${update_keys[@]}"; do
952952
local val
953-
val=$(grep "^${key}=" "$INSTALL_DIR/.env" 2>/dev/null | cut -d= -f2 | tr -d '[:space:]')
953+
val=$(grep "^${key}=" "$INSTALL_DIR/.env" 2>/dev/null | cut -d= -f2 | tr -d '[:space:]' || true)
954954
printf " %-16s %s\n" "${key}:" "${val:-(not set)}"
955955
done
956956
fi
@@ -1431,7 +1431,7 @@ cmd_enable() {
14311431
local current_backend="${GPU_BACKEND:-nvidia}"
14321432
if [[ -f "$INSTALL_DIR/.env" ]]; then
14331433
local env_backend
1434-
env_backend=$(grep "^GPU_BACKEND=" "$INSTALL_DIR/.env" | cut -d= -f2 | tr -d '"')
1434+
env_backend=$(grep "^GPU_BACKEND=" "$INSTALL_DIR/.env" 2>/dev/null | cut -d= -f2 | tr -d '"' || true)
14351435
if [[ -n "$env_backend" ]]; then
14361436
current_backend="$env_backend"
14371437
else
@@ -1778,7 +1778,7 @@ META
17781778
if [[ -f "$preset_dir/env" ]]; then
17791779
cp "$preset_dir/env" "$INSTALL_DIR/.env"
17801780
local restored_mode
1781-
restored_mode=$(grep "^DREAM_MODE=" "$INSTALL_DIR/.env" 2>/dev/null | cut -d= -f2)
1781+
restored_mode=$(grep "^DREAM_MODE=" "$INSTALL_DIR/.env" 2>/dev/null | cut -d= -f2 || true)
17821782
success "Restored .env (mode: ${restored_mode:-local})"
17831783
fi
17841784

0 commit comments

Comments
 (0)