OpenKeel implementation in Go of OpenStack neutron-vpnaas on the OVN path, generated from the reverse-specification of branch stable/2026.2 by the generate-go-from-spec skill. neutron-vpnaas-api serves the VPN API (/v2.0/vpn and the agent scheduler) and replaces the ovn-vpnaas service plugin and its driver: same routes, status codes, error bodies and policies, same tables. neutron-vpnaas-agent replaces neutron-ovn-vpn-agent: it runs strongSwan, the original's daemon, in one qvpn-<router> namespace per router. It runs beside openkeel-neutron, on its database and its OVN; clients reach it through a proxy in openkeel-neutron: see docs/NEUTRON-INTEGRATION.md. What is reproduced and what differs is in docs/CONFORMANCE.md; the security checklist is in docs/SECURITY.md.
Go module: github.com/openkeel/openkeel-neutron-vpnaas
Binaries: neutron-vpnaas-api (API on port 9696, agent API on 9697, health and metrics on 9090), neutron-vpnaas-agent (health on 9091; needs Linux, root and strongSwan: Dockerfile.agent)
Configuration: YAML, see config/config.example.yaml and config/agent.example.yaml
Setting up a development environment, the database and the tests: docs/GETTING-STARTED.md
Database schema, migrations and upgrades: docs/DATABASE.md
Auszug aus openkeel-neutron-vpnaas/README.md (auf Englisch).
REST-API
35 Operationen der Original-REST-API (Routen und Body-Aktionen) und ihr Status in OpenKeel.
Aufgezeichnete Austausche des OVN-Profils werden gegen den Go-Dienst wiedergegeben, die Konfigurationsgenerierung wird mit den Original-Templates verglichen, und echte IPsec-Tunnel werden End-to-End aufgebaut.
Replay aufgezeichneter Austausche
E2E-Replay des OVN-Profils
Die aufgezeichneten VPNaaS-Austausche, die dieser Dienst bedient, liefern dieselben Antworten; die von Neutron bedienten werden auf dem echten Stack geprüft.
Ausführung
make e2e-strict, auf go-mysql-server und auf MariaDB 11.4.
Letztes Ergebnis 84 wiedergegeben, 84 bestanden (2026-10-31); 25 der 108 aufgezeichneten Austausche gehören zu Neutron oder sind nicht mehr anwendbar.
Hier ist nur aufgeführt, was bewusst ausgelassen wurde; noch nicht erledigte Arbeit steht in den Known gaps der docs/CONFORMANCE.md des Moduls. Alle Module
Neutron-VPNaaS-Interaktionen
Dienstansicht, vom Diagramm-Skill aus dem OpenKeel-Modell generiert.