Fetch configuration from the environment.
Presently, config is stored statefully in an atom
after initial load.
Fetch configuration from the environment. Presently, config is stored statefully in an `atom` after initial load.
(default-config)
This is our default, precendence based, load config from environment mechasnism. A deep merge is used to create final config map.
Current precendence is:
Ultimately we shouldn't need this, the config stage of application/development startup needs to revisited. But until all of our components' constructors are refactored this isn't possible.
When that day comes we can remove the use of eval
, the atom, and move to
a stateless startup sequence, where each component recieves the entire config map and
parses out the piece it's interested in.
This is our default, precendence based, load config from environment mechasnism. A deep merge is used to create final config map. Current precendence is: 1) Environemt variables 2) AWS S3 3) The filesystem (legacy) Ultimately we shouldn't need this, the config stage of application/development startup needs to revisited. But until all of our components' constructors are refactored this isn't possible. When that day comes we can remove the use of `eval`, the atom, and move to a stateless startup sequence, where each component recieves the entire config map and parses out the piece it's interested in.
(fetch-s3)
This does some nasty things to avoid a hard dependency on aws.s3
in this project.
Consider this docstring an apology. default-config
shouldn't exist as such.
This does some nasty things to avoid a hard dependency on `aws.s3` in this project. Consider this docstring an apology. `default-config` shouldn't exist as such.
(set! m)
Set the config-map
atom to configuration sourced from the envinronment,
probably from:
org.purefn.kurosawa.config.file/fetch
org.purefn.kurosawa.config.env/fetch
, ororg.purefn.kurosawa.aws.ssm/fetch
Set the `config-map` atom to configuration sourced from the envinronment, probably from: - `org.purefn.kurosawa.config.file/fetch` - `org.purefn.kurosawa.config.env/fetch`, or - `org.purefn.kurosawa.aws.ssm/fetch`
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close