Files
caddy-proxy-manager/drizzle/meta/_journal.json
fuomag9 3a4a4d51cf feat: add L4 (TCP/UDP) proxy host support via caddy-l4
- New l4_proxy_hosts table and Drizzle migration (0015)
- Full CRUD model layer with validation, audit logging, and Caddy config
  generation (buildL4Servers integrating into buildCaddyDocument)
- Server actions, paginated list page, create/edit/delete dialogs
- L4 port manager sidecar (docker/l4-port-manager) that auto-recreates
  the caddy container when port mappings change via a trigger file
- Auto-detects Docker Compose project name from caddy container labels
- Supports both named-volume and bind-mount (COMPOSE_HOST_DIR) deployments
- getL4PortsStatus simplified: status file is sole source of truth,
  trigger files deleted after processing to prevent stuck 'Waiting' banner
- Navigation entry added (CableIcon)
- Tests: unit (entrypoint.sh invariants + validation), integration (ports
  lifecycle + caddy config), E2E (CRUD + functional routing)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-22 00:11:16 +01:00

119 lines
2.3 KiB
JSON

{
"version": "5",
"dialect": "sqlite",
"entries": [
{
"idx": 0,
"version": "6",
"when": 1762515724134,
"tag": "0000_initial",
"breakpoints": true
},
{
"idx": 1,
"version": "6",
"when": 1766854292252,
"tag": "0001_adorable_sally_floyd",
"breakpoints": true
},
{
"idx": 2,
"version": "6",
"when": 1766880443160,
"tag": "0002_perfect_hedge_knight",
"breakpoints": true
},
{
"idx": 3,
"version": "6",
"when": 1769262874211,
"tag": "0003_instances",
"breakpoints": true
},
{
"idx": 4,
"version": "6",
"when": 1770395358533,
"tag": "0004_slimy_grim_reaper",
"breakpoints": true
},
{
"idx": 5,
"version": "6",
"when": 1770395358534,
"tag": "0005_remove_static_response",
"breakpoints": true
},
{
"idx": 6,
"version": "6",
"when": 1770395358535,
"tag": "0006_remove_redirects",
"breakpoints": true
},
{
"idx": 7,
"version": "6",
"when": 1740441600000,
"tag": "0007_linking_tokens",
"breakpoints": true
},
{
"idx": 8,
"version": "6",
"when": 1740960000000,
"tag": "0008_unique_provider_subject",
"breakpoints": true
},
{
"idx": 9,
"version": "6",
"when": 1772129593846,
"tag": "0009_watery_bill_hollister",
"breakpoints": true
},
{
"idx": 10,
"version": "6",
"when": 1772200000000,
"tag": "0010_waf",
"breakpoints": true
},
{
"idx": 11,
"version": "6",
"when": 1772300000000,
"tag": "0011_mtls",
"breakpoints": true
},
{
"idx": 12,
"version": "6",
"when": 1772400000000,
"tag": "0012_ca_private_key",
"breakpoints": true
},
{
"idx": 13,
"version": "6",
"when": 1772500000000,
"tag": "0013_issued_client_certificates",
"breakpoints": true
},
{
"idx": 14,
"version": "6",
"when": 1772806000000,
"tag": "0014_waf_blocked",
"breakpoints": true
},
{
"idx": 15,
"version": "6",
"when": 1774300000000,
"tag": "0015_l4_proxy_hosts",
"breakpoints": true
}
]
}