Skip to content

feat(spy-server): add read-only API for the Control Plane#304

Draft
ron96g wants to merge 1 commit intomainfrom
feat/spy-server
Draft

feat(spy-server): add read-only API for the Control Plane#304
ron96g wants to merge 1 commit intomainfrom
feat/spy-server

Conversation

@ron96g
Copy link
Copy Markdown
Member

@ron96g ron96g commented Mar 31, 2026

Implement the Spy Server, a read-only HTTP API that provides a stable REST interface for querying Applications, ApiExposures, ApiSubscriptions, EventExposures, EventSubscriptions, and EventTypes.

Key components:

  • OpenAPI specs (application, stargate, event) with merged uber-openapi
  • GoFiber HTTP server with JWT/OAuth2 security and scope-based ACL
  • Read-only controllers and CRD-to-API response mappers for 6 resources
  • Kubernetes-backed in-memory stores (BadgerDB) populated by informers
  • Deprecated write endpoints returning HTTP 410 Gone (directing to Rover)
  • Pagination, structured logging (zap), and Viper-based configuration

Implement the Spy Server, a read-only HTTP API that provides a stable REST interface for querying Applications, ApiExposures, ApiSubscriptions, EventExposures, EventSubscriptions, and EventTypes.

Key components:
- OpenAPI specs (application, stargate, event) with merged uber-openapi
- GoFiber HTTP server with JWT/OAuth2 security and scope-based ACL
- Read-only controllers and CRD-to-API response mappers for 6 resources
- Kubernetes-backed in-memory stores (BadgerDB) populated by informers
- Deprecated write endpoints returning HTTP 410 Gone (directing to Rover)
- Pagination, structured logging (zap), and Viper-based configuration
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant