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-serverrunning Spring Cloud Config in native/dev mode serving per-service configuration from aconfig/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>.ymlfiles, Dockerfile. - Acceptance Criteria:
GET /<service>/defaultreturns 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>.ymlfiles, 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).