Skip to content

Commit

Permalink
#217 implement krausening as a light weight config store
Browse files Browse the repository at this point in the history
Leverage Krausening file watching. No need to pre load all the config on
server init. Use env var to dictate which storage option to use

 #217 refactor universal config vault storage
  • Loading branch information
cwoods-cpointe committed Jul 25, 2024
1 parent 3a9bacb commit fca2a02
Show file tree
Hide file tree
Showing 35 changed files with 409 additions and 542 deletions.
1 change: 1 addition & 0 deletions build-parent/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,7 @@
<version.slf4j>2.0.7</version.slf4j>
<version.delta.hive.connector>0.6.0</version.delta.hive.connector>
<version.testcontainers>1.19.8</version.testcontainers>
<version.vault>5.1.0</version.vault>

<!-- Spark Default Dependencies. See `spark-*` profiles below for alternative sets -->
<version.spark>3.4.0</version.spark>
Expand Down
15 changes: 9 additions & 6 deletions docs/modules/ROOT/pages/guides/guides-configuration-store.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -7,12 +7,6 @@ environment-specific configurations, based on the project's development lifecycl
project https://github.com/TechnologyBrewery/krausening[Krausening]. Usage limitations and regeneration strategies can
also be set, allowing configurations to automatically refreshed, thereby bolstering security of sensitive properties.

Currently, the Configuration Store supports integration with Vault. This is an excellent solution for large
production/test environments that need to have configuration encrypted at rest. However, this may not be ideal for
small or local test environments. For this the Configuration Store can be configured to leverage an in-memory
solution. Either solution will have the exact same usage and only differ in the setup and initialization of the
Configuration Store.

=== Setup
The Configuration Store tool is currently under development. Stay tuned for its release!

Expand Down Expand Up @@ -80,6 +74,15 @@ client.getProperty("messaging", "auth-token") ---> auth-secret
For more information on property definition and usage, visit
https://github.com/TechnologyBrewery/krausening[Krausening].

==== Properties Storage Options
The universal config store offers robust production ready configuration storage using vault. This is an excellent
solution for large enterprise applications. For smaller applications looking for a more light weight but still robust
storage option, the universal config can be set to use Krausening. The universal config can also be set up to use in
memory storage if you need to run some quick local tests.

The default property storage is Krausening. To change it to use one of the other options you can set the environment
variable STORAGE_CLASS. The values currently available are `krausening`, `vault`, and `inMemory`

==== Property Regeneration Policies
Policies are used to define limitations and rules for when a given property should be regenerated. This allows the user
to outline which properties they would like to be regenerated, when they would like them to be regenerated, and how to
Expand Down
49 changes: 0 additions & 49 deletions extensions/extensions-configuration-store-vault/LICENSE.txt

This file was deleted.

26 changes: 0 additions & 26 deletions extensions/extensions-configuration-store-vault/README.md

This file was deleted.

163 changes: 0 additions & 163 deletions extensions/extensions-configuration-store-vault/pom.xml

This file was deleted.

This file was deleted.

Loading

0 comments on commit fca2a02

Please sign in to comment.