From d65dea969db2405828deade12afdd02d183ab6fa Mon Sep 17 00:00:00 2001 From: Max Mehl Date: Fri, 12 Jul 2024 19:50:05 +0200 Subject: [PATCH] censor GitHub token --- gh_org_mgr/_gh_org.py | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/gh_org_mgr/_gh_org.py b/gh_org_mgr/_gh_org.py index 1bdc7e9..bce3220 100644 --- a/gh_org_mgr/_gh_org.py +++ b/gh_org_mgr/_gh_org.py @@ -59,6 +59,18 @@ def df2json(self) -> str: """Convert the dataclass to a JSON string""" d = asdict(self) + # Censor sensible fields + def censor_half_string(string: str) -> str: + """Censor 50% of a string (rounded up)""" + half1 = int(len(string) / 2) + half2 = len(string) - half1 + return string[:half1] + "*" * (half2) + + sensible_keys = ["gh_token"] + for key in sensible_keys: + d[key] = censor_half_string(d.get(key, "")) + + # Print dict nicely def pretty(d, indent=0): string = "" for key, value in d.items():