Skip to main content

jEAP Spring Boot Config AWS Starter

jEAP Spring Boot Config AWS Starter is a Spring Boot auto-configuration library that feeds a jEAP service's configuration from two AWS services: AWS AppConfig (externalized application configuration) and AWS Secrets Manager (sensitive credentials). It plugs into Spring Boot's spring.config.import mechanism, so AppConfig profiles and secrets become ordinary entries in the Spring Environment and bind to @ConfigurationProperties like any other property source. It provides:

  • Importing AWS AppConfig configuration profiles as Spring property sources via jeap-app-config-aws:
  • A sensible default profile layout (common, common-platform, common-certs, the service itself)
  • Background polling of AppConfig with dynamic context refresh when a configuration changes at runtime
  • Importing AWS Secrets Manager secrets as Spring property sources via jeap-aws-secretsmanager:
  • Optional key prefixing for secrets to avoid property-name clashes
  • AWS SDK clients backed by the JDK URL-connection HTTP client (no Apache/Netty client pulled in)

Documentation

Start with Getting started, then follow the links below.

TopicFile
Getting started (add the dependency, import config/secrets)docs/getting-started.md
Configuration reference (jeap.config.aws.appconfig.*, jeap.aws.secretsmanager.*)docs/configuration.md
AWS AppConfig integrationdocs/appconfig.md
Dynamic configuration refreshdocs/dynamic-refresh.md
AWS Secrets Manager integrationdocs/secrets-management.md

Modules

The artifact consumers depend on is jeap-spring-boot-config-aws-starter. Group id for all modules is ch.admin.bit.jeap; the version is managed by the jEAP Spring Boot parent.

ModulePurpose
jeap-spring-boot-config-aws-starter-parentParent POM (packaging pom) declaring the starter module
jeap-spring-boot-config-aws-starterAuto-configuration and ConfigData integration for AWS AppConfig and Secrets Manager