diff --git a/.gitignore b/.gitignore index 5c69778..f59019a 100644 --- a/.gitignore +++ b/.gitignore @@ -6,4 +6,3 @@ __pycache__/ logs/ .idea/ .coverage -docker/mock-clients/ \ No newline at end of file diff --git a/Makefile b/Makefile index 0c615d7..7872750 100644 --- a/Makefile +++ b/Makefile @@ -67,9 +67,9 @@ test-e2e: uv run pytest tests/e2e/ -v --tb=short test-e2e-headed: - uv run pytest tests/e2e/ --headed --slowmo 100 -v --tb=short + uv run pytest tests/e2e/ --headed --slowmo 300 -v --tb=short -test: test-stack-up test-unit test-e2e +test: test-unit test-e2e # --------------------------------------------------------------------------- # Integration test stack (real WireGuard + mock clients + VictoriaMetrics) @@ -85,7 +85,7 @@ test-stack-up: test-stack-seed test-stack-seed: @echo "[*] Starting infrastructure..." - docker compose up -d postgres valkey victoriametrics mock-oidc mock-saml + docker compose up -d postgres valkey victoriametrics @echo "[*] Waiting for Postgres..." @until docker compose exec -T postgres pg_isready -U wiregui > /dev/null 2>&1; do sleep 1; done @echo "[*] Running migrations..." diff --git a/docker/mock-clients/configs/client1.conf b/docker/mock-clients/configs/client1.conf new file mode 100644 index 0000000..9e2d4e7 --- /dev/null +++ b/docker/mock-clients/configs/client1.conf @@ -0,0 +1,9 @@ +[Interface] +PrivateKey = SALYR6RYKISfffOs7+PeQkiI7M5r73qwXYn4fo5Bjl4= + +[Peer] +PublicKey = HdbPtoka8YH5EO0AE/c7qgpn+C+KJ3jb4PeKGwn38QU= +PresharedKey = NhqmMbL8ou6QfBREN8VmS/FX4aaYKwX+yvOESwVetTg= +Endpoint = wiregui:51820 +AllowedIPs = 10.3.2.0/24 +PersistentKeepalive = 5 diff --git a/docker/mock-clients/configs/client2.conf b/docker/mock-clients/configs/client2.conf new file mode 100644 index 0000000..918b1ff --- /dev/null +++ b/docker/mock-clients/configs/client2.conf @@ -0,0 +1,9 @@ +[Interface] +PrivateKey = YLu3dTKCT2yKaRHWAbhkV5iDO3uz9Ay+I8elcU9c6mE= + +[Peer] +PublicKey = HdbPtoka8YH5EO0AE/c7qgpn+C+KJ3jb4PeKGwn38QU= +PresharedKey = OEsRd6g/+b6Z5nhraXoC3cOAVCR0EAloKKKdeW/PKgk= +Endpoint = wiregui:51820 +AllowedIPs = 10.3.2.0/24 +PersistentKeepalive = 5 diff --git a/docker/mock-clients/configs/client3.conf b/docker/mock-clients/configs/client3.conf new file mode 100644 index 0000000..3f048f1 --- /dev/null +++ b/docker/mock-clients/configs/client3.conf @@ -0,0 +1,9 @@ +[Interface] +PrivateKey = EIvEgJvaZYF9g4iIyYaevV3GaEKoB4AXa6Z1M1b5qXQ= + +[Peer] +PublicKey = HdbPtoka8YH5EO0AE/c7qgpn+C+KJ3jb4PeKGwn38QU= +PresharedKey = 0QBrDLFpiqXZWYMeQ1uXm5pujSKrwmqx5VC2D0ETTAo= +Endpoint = wiregui:51820 +AllowedIPs = 10.3.2.0/24 +PersistentKeepalive = 5 diff --git a/docker/mock-clients/configs/clients.env b/docker/mock-clients/configs/clients.env new file mode 100644 index 0000000..e2abfd0 --- /dev/null +++ b/docker/mock-clients/configs/clients.env @@ -0,0 +1,6 @@ +CLIENT1_IP=10.3.2.101 +CLIENT1_PEERS=10.3.2.102 10.3.2.103 +CLIENT2_IP=10.3.2.102 +CLIENT2_PEERS=10.3.2.101 10.3.2.103 +CLIENT3_IP=10.3.2.103 +CLIENT3_PEERS=10.3.2.101 10.3.2.102 diff --git a/wiregui/config.py b/wiregui/config.py index 498a5c4..ae8220b 100644 --- a/wiregui/config.py +++ b/wiregui/config.py @@ -50,7 +50,7 @@ class Settings(BaseSettings): idp_config_file: str | None = None # path to YAML file with IdP definitions # Logging - log_to_file: bool = False # write timestamped log file to logs/ directory + log_to_file: bool = True # write timestamped log file to logs/ directory # App host: str = "0.0.0.0" diff --git a/wiregui/log_config.py b/wiregui/log_config.py index 2e0b610..d0be111 100644 --- a/wiregui/log_config.py +++ b/wiregui/log_config.py @@ -17,7 +17,7 @@ def setup_logging(log_to_file: bool = False) -> None: ) if log_to_file: - timestamp = datetime.now().strftime("%Y%m%d") + timestamp = datetime.now().strftime("%Y%m%d_%H%M%S") logger.add( f"logs/wiregui_{timestamp}.log", format="{time:YYYY-MM-DD HH:mm:ss.SSS} | {level:<7} | {name}:{function}:{line} - {message}",