A Config Server import is a startup dependency unless marked optional; the choice changes whether a service may run with local defaults.
Spring Cloud Config import: decide whether missing remote settings stop startup
Choose fail-closed settings
A receipt worker whose lease duration and broker destination come from remote configuration should not quietly start with stale local defaults. Use a required configserver import for that deployment and exercise the unavailable-server case in a separate Cloud-enabled application. Prefixing the import with optional changes the contract: startup can continue without the remote source. Local import checks cover the same failure choice for files, not the Config Server protocol.
Inspect the effective value
The client may fetch the default profile and then an activated profile, so count successful starts and bound total startup time rather than asserting one network request. Do not print secrets while diagnosing precedence. Validate bound settings after all sources have loaded and reject zero or negative lease intervals. Effective configuration and typed setting validation provide the local foundation.
Boundary sketch
spring.application.name=receipt-worker
spring.config.import=configserver:http://config-service.internal:8888
receipt.relay.lease=PT47SCost and verification
Remote configuration adds startup network work and an availability dependency. An optional import reduces startup coupling but increases the chance of running with incomplete policy. This sketch is not executed by the current Spring source kit; verify it against the chosen dependencies and deployment.
Common Mistakes
- Do not use optional for a value required to preserve correctness.
- Do not assume a config import is an authorization mechanism for secret access.
- Do not claim this source kit contacts a Config Server; it does not.
Read next
Spring Boot config import: fail startup when a required file is missing, Spring Boot config source priority: a builder default may lose to a packaged file, Spring Boot environment validation: fail before a worker starts, Spring Cloud release trains: pin the framework set before adding a starter.
Related boundary
Spring Cloud Config label: pin a release to the configuration it was tested with
