This repository has been archived by the owner on May 3, 2020. It is now read-only.
Refactor configuration handling in Config
class.
#515
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This pull request adds a
config.rb
file which is responsible for centralizing the configuration loading and parsing across the project. It updates every occurrence ofconfig_options
lookups to use theConfig
class instead. It is built on top of #514 and so should be merged after it to avoid possible merge conflicts (although both should be fast-forwardable)As a bonus, I've also made the lookup fallback to
config.json.defaults
when keys are not present inconfig.json
. The goal is to make future additions transparent and not require manual intervention to enable those features. In theory, using this approach, config.json can contain only the overrides that are not default and possibly even make the configuration initialization step infirst_time.rb
obsolete.This is the first step towards making it possible for containerized Serpico instances to load their configuration from a host-mounted volume.