Skip to content

4.1 Config Server

Sprint: Sprint 04 - Platform Infrastructure Services
Feature ID: 4.1
Subtasks: 4.1.1, 4.1.2

Objective

Deliver "Config Server" within Sprint 04 - Platform Infrastructure Services.

Dependencies

Aggregated from the subtasks below (prerequisite task IDs and enablers):

  • Sprint 03 complete
  • 4.1.1

Subtasks

4.1.1 Config-server application

  • ID: 4.1.1
  • Title: Implement Spring Cloud Config server (8888)
  • Description: Create microservices/config-server running Spring Cloud Config in native/dev mode serving per-service configuration from a config/ directory (datasource, Kafka, OTLP, security properties per service). In production this is replaced by ConfigMaps/Secrets (ADR-010); document the boundary.
  • Business Purpose: Centralized, environment-aware configuration for all services (analysis Section 7).
  • Inputs: ADR-010 (service discovery and configuration), analysis Section 7.
  • Outputs: config-server app, config/<service>.yml files, Dockerfile.
  • Acceptance Criteria:
  • GET /<service>/default returns that service's merged config.
  • A service started with spring.config.import=configserver: receives its properties.
  • Dependencies: Sprint 03 complete
  • Complexity: M

4.1.2 Config encryption for secrets

  • ID: 4.1.2
  • Title: Enable encrypted config values
  • Description: Configure the config-server symmetric/asymmetric key so secret properties (DB passwords, JWT secret) are stored encrypted ({cipher}...) and decrypted on serve.
  • Business Purpose: Keep secrets out of plaintext config (NFR-06 adjacent, ADR-011).
  • Inputs: ADR-010, ADR-011.
  • Outputs: Encryption key config, encrypted sample secrets.
  • Acceptance Criteria:
  • An encrypted property is served decrypted to an authorized client; the raw store shows only {cipher} text.
  • Dependencies: 4.1.1
  • Complexity: S

Acceptance Criteria

Each subtask above carries its own objective, testable acceptance criteria. This feature is complete when every subtask's acceptance criteria are met.

Deliverables

  • config-server app, config/<service>.yml files, Dockerfile.
  • Encryption key config, encrypted sample secrets.

Definition of Done

  • All subtasks (4.1.1, 4.1.2) completed and their acceptance criteria verified.
  • All listed dependencies satisfied.
  • Build and tests green per the global conventions in ../README.md (Section 3).