"For example, most folks that run large-scale container orchestration platforms cannot utilize their built-in secret or configuration management. These primitives are generally not meant, designed, or built for hundreds of engineers on tens of teams and generally do not include the necessary controls to be able to sanely manage, own, and operate their applications. It is extremely common for folks to separate their s…
Unfortunately I live in not-US (Aus), but I have to say, envkey looks very good! I'm actually floating this and HashiCorp Vault by management at the moment, since even with 4 devs, keeping environment variables in sync is a PAIN! If you don't mind me asking, how does the Go integration work? I initially thought it was actually some sort of alternate `os.Getenv()` that you imported, but that doesn't seem to be the cas…
When a process starts, envkeygo makes a request to our config service (via envkey-fetch) to fetch the encrypted config, then decrypts the config and sets them on the environment so they can be retrieved with `os.Getenv`. Both the lookup id (for fetching the encrypted config) and the encryption passphrase for decryption are initially passed in via an ENVKEY=... environment variable--you can think of it as a single environment variable that "expands" into all the others that you need.
Latency on a request is generally in the 150-300ms range from the US (our primary servers are in us-east-1).
EnvKey is strongly consistent and transactional, so once you make a change to your config, it will be available immediately for any subsequent requests. For now, it's still up to you to restart servers/services yourself after a change. With the v2, this will be scriptable.
We'll eventually hire outside the US too, but for now I'm trying to keep the timezone spread and administrative burden low :)