From 4d4c7bc00de464b305b97c08e83358791a0f2f5e Mon Sep 17 00:00:00 2001 From: Cassowary Date: Wed, 28 Feb 2024 08:20:40 -0800 Subject: [PATCH] Individually patch each parameter rather than all at once, and indicate which ones succeed and which ones dont --- import_mailman3_list_config.py | 23 +++++++++++++---------- 1 file changed, 13 insertions(+), 10 deletions(-) diff --git a/import_mailman3_list_config.py b/import_mailman3_list_config.py index d49e6e4..c8b9a85 100755 --- a/import_mailman3_list_config.py +++ b/import_mailman3_list_config.py @@ -69,18 +69,21 @@ def main(args): del p["owner"] if "moderator" in p: del p["moderator"] + if "ban_list" in p: + del p["ban_list"] # patch config - result = requests.patch(f"{REST_PATH}/{pargs.list}/config", auth=rest_auth, json=p) - if result.ok: - print("success") - print(result) - print(result.text) - else: - print("failed") - print(result) - print(result.reason) - print(result.text) + for k, v in p.items(): + result = requests.patch(f"{REST_PATH}/{pargs.list}/config", auth=rest_auth, json={k: v}) + if result.ok: + print(f"*** [🆗] {k} success") + print(result) + print(result.text) + else: + print(f"*** [⚠] {k} failed") + print(result) + print(result.reason) + print(result.text) if __name__ == "__main__":