From adfb92c23f7548833c0a895726b9b722f28861c3 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Fran=C3=A7ois=20De=20Keersmaeker?=
 <francois.dekeersmaeker@uclouvain.be>
Date: Thu, 19 Dec 2024 15:09:55 +0100
Subject: [PATCH] Python package meta config

---
 pcap_anonymize/{cli.py => __main__.py} | 13 ++++++++-----
 pyproject.toml                         |  4 ++++
 2 files changed, 12 insertions(+), 5 deletions(-)
 rename pcap_anonymize/{cli.py => __main__.py} (50%)

diff --git a/pcap_anonymize/cli.py b/pcap_anonymize/__main__.py
similarity index 50%
rename from pcap_anonymize/cli.py
rename to pcap_anonymize/__main__.py
index dcdbb33..9b740f6 100644
--- a/pcap_anonymize/cli.py
+++ b/pcap_anonymize/__main__.py
@@ -3,13 +3,16 @@ import argparse
 from .pcap_anonymize import anonymize_pcap
 
 
+### MAIN FUNCTION ###
 def main() -> None:
-    """
-    Main function for the CLI.
-    """
     parser = argparse.ArgumentParser(description="Anonymize a PCAP traffic capture.")
-    parser.add_argument("input", type=os.PathLike, help="Path to the input PCAP file.")
-    parser.add_argument("-o", "--output", type=os.PathLike, help="Path to the output PCAP file.")
+    parser.add_argument("input", type=str, help="Path to the input PCAP file.")
+    parser.add_argument("-o", "--output", type=str, help="Path to the output PCAP file.")
     args = parser.parse_args()
 
     anonymize_pcap(args.input, args.output)
+
+
+### ENTRY POINT ###
+if __name__ == "__main__":
+    main()
diff --git a/pyproject.toml b/pyproject.toml
index 8d0e43d..3e2eb78 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -52,3 +52,7 @@ dependencies = [
 [project.urls]
 "Homepage" = "https://forge.uclouvain.be/smart-home-network-security/pcap-anonymize"
 "Source" = "https://forge.uclouvain.be/smart-home-network-security/pcap-anonymize"
+
+[project.scripts]
+pcap-anonymize = "pcap_anonymize:__main__.main"
+pcap_anonymize = "pcap_anonymize:__main__.main"
-- 
GitLab