vdot 0.3.8

Create your .env files and start processes using Vault.
Documentation

vdot

Build Status Build status

Create your .env files and start processes using Vault.

Installation

Homebrew and Linuxbrew

You can install brew from https://brew.sh.

brew tap sjparkinson/vdot https://github.com/sjparkinson/vdot
brew install vdot

Cargo

You can install cargo from https://www.rust-lang.org/tools/install.

cargo install vdot

Download

You can download executables for macOS, Linux, and Windows from https://github.com/sjparkinson/vdot/releases/latest.

Usage

vdot

USAGE:
    vdot [FLAGS] [OPTIONS] <PATH>...

FLAGS:
    -h, --help       Prints help information
    -V, --version    Prints version information
    -v, --verbose    Verbose mode

OPTIONS:
    -c, --command <command>                Command to spawn
    -o, --output <output>                  Write to the given file [default: .env]
        --vault-address <vault_address>    Vault server address [env: VAULT_ADDR]
        --vault-token <vault_token>        Vault token used to authenticate requests [env: VAULT_TOKEN]

ARGS:
    <PATH>...    Path to the Vault secrets

The following assumes you are using version two of Vault's key-value secret engine. Check out vdot --help for more information.

$ vault kv put secret/foo-bar ENV=production LOG_LEVEL=info
$ vault kv put secret/fizz-buzz LOG_LEVEL=debug
$ vdot --vault-token "$(cat ~/.vault-token)" secret/data/foo-bar secret/data/fizz-buzz
info: saved 2 environment variables to .env
$ cat .env
ENV=production
LOG_LEVEL=info

Environment Variables

Instead of passing in the --vault-* options, you can define them as environmnent variables.

The Vault CLI defines that VAULT_TOKEN and VAULT_ADDR can be used. These two environment variables are also supported by vdot.