Skip to content

Commit 25c30e4

Browse files
takemi-ohamaclaude
andauthored
fix(cli): wrapper の source .env を devbase root 限定にする (#18)
`bin/devbase` は CWD 直下の `.env` を無条件で bash source していたため、 project ディレクトリ (例: carmo-system-console) で `devbase down` を実行 すると Laravel ランタイム用 `.env` を読み込んでしまい、CRLF 改行や `|` / `&` 等の特殊文字を値に含む行で syntax error / `: command not found` となり全コマンドが起動不能になっていた。 compose は `env_file` 指定および同階層 `.env` を自前で読むため、wrapper 側で project の `.env` を source する必要は無い。source の本来の意図は devbase root の `.env` (AWS / BigQuery 等 devbase ツール用変数) を取り込む ことなので、source 対象を `${DEVBASE_ROOT}/.env` に限定する。 Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
1 parent e0408b0 commit 25c30e4

1 file changed

Lines changed: 6 additions & 1 deletion

File tree

bin/devbase

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,12 @@ DEVBASE_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
1515
# Environment setup
1616
export DOCKER_GID=$( [ "$(uname)" = "Darwin" ] && echo "0" || grep docker /etc/group | cut -d: -f3 )
1717
export COMPOSE_PROJECT_NAME=$(basename "$PWD")
18-
[ -f ".env" ] && set -a && source .env && set +a
18+
# devbase root の .env (AWS / BigQuery 等の devbase ツール用変数) を読み込む。
19+
# project ディレクトリで実行された場合に Laravel ランタイム用 .env を bash で
20+
# source すると、CRLF 改行や `|` / `&` 等の特殊文字を含む値で syntax error に
21+
# なる。compose は同階層の .env を自動で読むため wrapper 側で project .env を
22+
# source する必要は無い。
23+
[ -f "${DEVBASE_ROOT}/.env" ] && set -a && source "${DEVBASE_ROOT}/.env" && set +a
1924
[ -f "env" ] && set -a && source ./env && set +a
2025

2126
# Export for Python modules

0 commit comments

Comments
 (0)