fix(codex): only remove top-level profile key, preserve profiles sections
Use awk to track when we enter a TOML section and only remove 'profile =' lines that appear at the top level (before any [section] headers). This ensures user-provided [profiles.*] sections are preserved intact.
This commit is contained in:
parent
9af62366b7
commit
316269e437
@ -155,8 +155,15 @@ function populate_config_toml() {
|
|||||||
# This allows users to run `codex` without --profile flag
|
# This allows users to run `codex` without --profile flag
|
||||||
if [ "$ARG_ENABLE_AIBRIDGE" = "true" ]; then
|
if [ "$ARG_ENABLE_AIBRIDGE" = "true" ]; then
|
||||||
printf "Setting aibridge as default profile\n"
|
printf "Setting aibridge as default profile\n"
|
||||||
# Remove any existing profile line from base config (since enable_aibridge=true is explicit)
|
# Remove any existing top-level profile line (before first section header)
|
||||||
sed -i '/^profile\s*=/d' "$CONFIG_PATH"
|
# This only removes profile = ... at top level, not inside [profiles.*] sections
|
||||||
|
awk '
|
||||||
|
BEGIN { in_top_level = 1 }
|
||||||
|
/^\[/ { in_top_level = 0 }
|
||||||
|
in_top_level && /^profile[ \t]*=/ { next }
|
||||||
|
{ print }
|
||||||
|
' "$CONFIG_PATH" > "${CONFIG_PATH}.tmp"
|
||||||
|
mv "${CONFIG_PATH}.tmp" "$CONFIG_PATH"
|
||||||
# Prepend profile = "aibridge" to the config
|
# Prepend profile = "aibridge" to the config
|
||||||
local temp_config
|
local temp_config
|
||||||
temp_config=$(cat "$CONFIG_PATH")
|
temp_config=$(cat "$CONFIG_PATH")
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user