Sign inSign up

peekaboo51490/rozgaar.ai-event-registry

By peekaboo51490

β€’Updated 7 months ago

Image
0

946

peekaboo51490/rozgaar.ai-event-registry repository overview

⁠rozgaar.ai Event Registry Service

Docker Pulls Docker Image Size


β πŸš€ Features

The Event Registry Service acts as a control plane for event-driven systems by defining and governing event contracts.

⁠Core Capabilities
  • Client (Tenant) Management
    • Register and manage owning services or teams
  • Topic Definition
    • Define event topics with partitioning, keying, and retention metadata
  • Schema Registry (Avro)
    • Register Avro payload schemas
    • Immutable, versioned schema evolution
    • Explicit schema versioning (v1 β†’ v2 β†’ v3)
  • Example Payloads
    • Generate example payloads from schemas
    • Save and retrieve documented examples
  • Swagger / OpenAPI
    • Fully documented REST APIs
    • Contract-first API design
  • Transport Agnostic
    • No Kafka / Pulsar dependency
    • Designed to integrate with any event gateway later
⁠Design Principles
  • Explicit contracts over implicit behavior
  • Boring, predictable infrastructure
  • Control plane only (no data plane responsibilities)
  • Long-term maintainability over short-term shortcuts

⁠🐳 Docker Images

Repository


peekaboo51490/rozgaar.ai-event-registry

⁠Available Tags
TagDescription
latestLatest stable release
vX.Y.ZImmutable, pinned production versions

βœ… Always prefer versioned tags (vX.Y.Z) in production to enable safe rollbacks.


⁠πŸ“₯ Pull the Image

docker pull peekaboo51490/rozgaar.ai-event-registry:latest

Or a pinned version:

docker pull peekaboo51490/rozgaar.ai-event-registry:v1.0.0

⁠▢️ Run Locally (Example)

docker run -d \
  --name rozgaar-event-registry \
  -p 8080:8080 \
  -e SPRING_PROFILES_ACTIVE=prod \
  -e DB_URL=jdbc:postgresql://postgres:5432/rozgaar_event-registry \
  -e DB_USERNAME=rozgaar_user \
  -e DB_PASSWORD=rozgaar_pass \
  peekaboo51490/rozgaar.ai-event-registry:latest

β βš™οΈ Configuration

⁠Environment Variables
VariableRequiredDefaultDescription
SPRING_PROFILES_ACTIVE❌prodSpring profile to run
DB_URLβœ…β€”PostgreSQL JDBC URL
DB_USERNAMEβœ…β€”Database username
DB_PASSWORDβœ…β€”Database password
SERVER_PORT❌8080Application HTTP port
SWAGGER_UI_ENABLED❌falseEnable Swagger UI
HIBERNATE_SQL_LOG_LEVEL❌INFOSQL log verbosity
HIBERNATE_BINDER_LOG_LEVEL❌OFFSQL parameter logging

Timeouts & retries are preconfigured for production reliability.


β πŸ“– API Documentation

When enabled, Swagger UI is available at:

/swagger-ui/index.html

OpenAPI specification:

/v3/api-docs

All endpoints are:

  • grouped by resource
  • tagged consistently
  • validated via request/response DTOs

β πŸ“Š Observability & Monitoring

  • Health checks: /api/actuator/health
  • Prometheus metrics: /api/actuator/prometheus
  • Metrics server port: 10103

Prometheus configuration:

  • Exemplars: disabled
  • Tracing sampling: 100% (can be tuned)

β πŸ›‘οΈ Mandatory Headers

Certain routes enforce mandatory headers for security and auditability.

Skipped routes:

/api/actuator
/api/actuator/**

(Authorization and authentication are pluggable and can be enabled later.)


⁠☸️ Kubernetes & Production Usage

  • Stateless service (safe for horizontal scaling)
  • Designed to run behind an API Gateway / Ingress
  • Works with Helm-based deployments
  • Compatible with rolling updates
  • Safe to use with immutable Docker image tags

β πŸ“¦ Versioning Strategy

  • Semantic Versioning (vMAJOR.MINOR.PATCH)
  • Versions are derived from commit history
  • Each release is immutable
  • Rollbacks are as simple as deploying a previous tag

⁠🧭 Roadmap (High Level)

  • Authentication & authorization
  • Schema compatibility enforcement
  • Event gateway integration (Kafka / Pulsar)
  • Consumer registration
  • Multi-region deployments
  • Contract approval workflows

⁠✨ Philosophy

This service exists to make event-driven systems:

  • predictable
  • governable
  • discoverable
  • safe to evolve

It intentionally avoids coupling to any specific messaging technology.

Tag summary

Content type

Image

Digest

sha256:6aab7b031…

Size

151.6 MB

Last updated

7 months ago

docker pull peekaboo51490/rozgaar.ai-event-registry