refactor: move all global config into HCL only (no flags)#101
Merged
alecthomas merged 1 commit intomainfrom Feb 7, 2026
Merged
refactor: move all global config into HCL only (no flags)#101alecthomas merged 1 commit intomainfrom
alecthomas merged 1 commit intomainfrom
Conversation
To facilitate this, I added a config.InjectEnvars() function that
emulates the envar mapping we were using with Kong. This still allows
all global config to be configured via envars automatically.
eg.
```
CACHEW_GIT_CLONE_FETCH_INTERVAL=10s cachewd
```
The flags now look like this:
```
~/dev/cachew $ cachewd --help
Usage: cachewd --config=PATH [flags]
Flags:
-h, --help Show context-sensitive help.
--schema Print the configuration file schema ($CACHEW_SCHEMA).
--config=PATH Configuration file path ($CACHEW_CONFIG).
```
b06eadf to
bf7e563
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
To facilitate this, I added a config.InjectEnvars() function that emulates the envar mapping we were using with Kong. This still allows all global config to be configured via envars automatically.
eg.
The flags now look like this:
We could also duplicate some common configuration in flags...like --log-level ... but that would be a bit of extra work. We'll see how we go.