meyosaj406 commited on
Commit
3a58498
·
verified ·
1 Parent(s): 3090e8d

Create verify_env.py

Browse files
Files changed (1) hide show
  1. verify_env.py +40 -0
verify_env.py ADDED
@@ -0,0 +1,40 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # verify_env.py
2
+ import os, re, json
3
+
4
+ KEYS = [
5
+ "NOTION_COOKIE",
6
+ "NOTION_SPACE_ID",
7
+ "NOTION_USER_ID",
8
+ "NOTION_USER_EMAIL",
9
+ ]
10
+
11
+ def redacted(v: str):
12
+ if v is None:
13
+ return None
14
+ s = v
15
+ return f"{s[:4]}…{s[-4:]} (len={len(s)})"
16
+
17
+ def uuid_like(v: str):
18
+ return bool(re.fullmatch(r"[0-9a-fA-F-]{32,}", v or ""))
19
+
20
+ def has_quotes_or_newlines(v: str):
21
+ if not v:
22
+ return False
23
+ return any(ch in v for ch in ['\n', '\r', '"', "'"])
24
+
25
+ def main():
26
+ out = {}
27
+ for k in KEYS:
28
+ raw = os.getenv(k)
29
+ out[k] = {
30
+ "set": raw is not None,
31
+ "empty": (raw or "") == "",
32
+ "redacted": redacted(raw),
33
+ "uuid_like": uuid_like(raw) if k in ("NOTION_SPACE_ID","NOTION_USER_ID") else None,
34
+ "has_quotes_or_newlines": has_quotes_or_newlines(raw),
35
+ "starts_with_token_v2": raw.strip().startswith("token_v2=") if (raw and k=="NOTION_COOKIE") else None,
36
+ }
37
+ print(json.dumps(out, ensure_ascii=False, indent=2))
38
+
39
+ if __name__ == "__main__":
40
+ main()