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 PR closes out #32 and does the following:
Refactors ruleset loading logic from
handlers/types.go
andhandlers/proxy.go
into a separate package inpkg/ruleset/ruleset.go
.Adds ability to load rulesets from nested directories for better organization.
Adds ability to load gzip-compressed rulesets from webservers (for future ruleset distribution efforts)
Test cases for all of the above.
Adds
-r
or-rulesets
cli flag to pass in ruleset path instead of setting env variables.Warns the user if they forgot to load a ruleset
In addition, it maintains backward compatibility with the older ways of loading rulesets.
A future PR will reorganize the default
rulesets.yaml
to use this nested directory loading feature. (ie: break out each rule into it's own file, organized in directories)