aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorsigoden <sigoden@gmail.com>2024-10-18 19:28:57 +0800
committerGitHub <noreply@github.com>2024-10-18 19:28:57 +0800
commit615aa25266cf024027aca178f16f75bd115a9901 (patch)
tree9c9c255152d4fd067ffa0b4091c3f4b39c22ff6d
parentfb62dd5e18d77f465b1d27dad02a6eb1ab91185e (diff)
downloadllm-functions-docker-615aa25266cf024027aca178f16f75bd115a9901.tar.gz
fix: js/py dotenv unexpectedly overrides existing env vars (#113)
-rw-r--r--Argcfile.sh2
-rwxr-xr-xscripts/run-agent.js5
-rwxr-xr-xscripts/run-agent.py4
-rwxr-xr-xscripts/run-tool.js5
-rwxr-xr-xscripts/run-tool.py4
5 files changed, 14 insertions, 6 deletions
diff --git a/Argcfile.sh b/Argcfile.sh
index 075b3d8..1f1f770 100644
--- a/Argcfile.sh
+++ b/Argcfile.sh
@@ -1,8 +1,6 @@
#!/usr/bin/env bash
set -e
-# @meta dotenv
-
BIN_DIR=bin
TMP_DIR="cache/tmp"
diff --git a/scripts/run-agent.js b/scripts/run-agent.js
index 7add1e2..6a02792 100755
--- a/scripts/run-agent.js
+++ b/scripts/run-agent.js
@@ -75,7 +75,10 @@ async function loadEnv(filePath) {
if (line.trim().startsWith("#") || line.trim() === "") return;
const [key, ...value] = line.split("=");
- process.env[key.trim()] = value.join("=").trim();
+ const envName = key.trim();
+ if (!process.env[envName]) {
+ process.env[envName] = value.join("=").trim();
+ }
});
} catch { }
}
diff --git a/scripts/run-agent.py b/scripts/run-agent.py
index b97dcd1..5c925ba 100755
--- a/scripts/run-agent.py
+++ b/scripts/run-agent.py
@@ -67,7 +67,9 @@ def load_env(file_path):
continue
key, *value = line.split("=")
- os.environ[key.strip()] = "=".join(value).strip()
+ env_name = key.strip()
+ if env_name not in os.environ:
+ os.environ[env_name] = "=".join(value).strip()
except FileNotFoundError:
pass
diff --git a/scripts/run-tool.js b/scripts/run-tool.js
index 9c86482..d610772 100755
--- a/scripts/run-tool.js
+++ b/scripts/run-tool.js
@@ -62,7 +62,10 @@ async function loadEnv(filePath) {
if (line.trim().startsWith("#") || line.trim() === "") return;
const [key, ...value] = line.split("=");
- process.env[key.trim()] = value.join("=").trim();
+ const envName = key.trim();
+ if (!process.env[envName]) {
+ process.env[envName] = value.join("=").trim();
+ }
});
} catch { }
}
diff --git a/scripts/run-tool.py b/scripts/run-tool.py
index 4b6af78..99af580 100755
--- a/scripts/run-tool.py
+++ b/scripts/run-tool.py
@@ -62,7 +62,9 @@ def load_env(file_path):
continue
key, *value = line.split("=")
- os.environ[key.strip()] = "=".join(value).strip()
+ env_name = key.strip()
+ if env_name not in os.environ:
+ os.environ[env_name] = "=".join(value).strip()
except FileNotFoundError:
pass