🐛 fix(commit-message): isolate CI event variables in tests

This commit is contained in:
csh
2026-08-24 11:01:59 +08:00
parent 06aafc2c19
commit fd653ff49d
+10 -1
View File
@@ -18,10 +18,19 @@ ROOT = Path(__file__).resolve().parents[1]
SKILL_ROOT = ROOT / "skills" / "commit-message"
VALIDATOR = SKILL_ROOT / "scripts" / "validate_commit_message.py"
CI_ENTRY = ROOT / ".gitea" / "ci" / "commit_message_lint.py"
EVENT_ENV_KEYS = (
"GITHUB_EVENT_NAME",
"GITHUB_EVENT_PATH",
"GITEA_EVENT_NAME",
"GITEA_EVENT_PATH",
)
def run(script, *args, env=None):
merged = {**os.environ, **(env or {})}
merged = os.environ.copy()
for key in EVENT_ENV_KEYS:
merged.pop(key, None)
merged.update(env or {})
merged.pop("COMMIT_POLICY_PATH", None)
return subprocess.run(
[sys.executable, str(script), *args],