Injects AWS Secrets Manager secrets as environment variables - or just prints them, if no command is given. (If you need secrets as files instead, you can use aws-secretsmanager-files)
Using go get:
go get -u github.com/keilerkonzept/aws-secretsmanager-env
Or download the binary from the releases page.
# Linux
curl -L https://github.com/keilerkonzept/aws-secretsmanager-env/releases/download/1.1.458/aws-secretsmanager-env_1.1.458_linux_x86_64.tar.gz | tar xz
# OS X
curl -L https://github.com/keilerkonzept/aws-secretsmanager-env/releases/download/1.1.458/aws-secretsmanager-env_1.1.458_osx_x86_64.tar.gz | tar xz
# Windows
curl -LO https://github.com/keilerkonzept/aws-secretsmanager-env/releases/download/1.1.458/aws-secretsmanager-env_1.1.458_windows_x86_64.zip
unzip aws-secretsmanager-env_1.1.458_windows_x86_64.zip
aws-secretsmanager-env [OPTIONS] [COMMAND [ARGS...]]
Usage of aws-secretsmanager-env:
-profile string
override the current AWS_PROFILE setting
-secret-binary-base64 ENV_VAR=SECRET_ARN
a key/value pair ENV_VAR=SECRET_ARN (may be specified repeatedly)
-secret-binary-string ENV_VAR=SECRET_ARN
a key/value pair ENV_VAR=SECRET_ARN (may be specified repeatedly)
-secret-json-key ENV_VAR=SECRET_ARN#JSON_KEY
a key/value pair ENV_VAR=SECRET_ARN#JSON_KEY (may be specified repeatedly)
-secret-json-key-string ENV_VAR=SECRET_ARN#JSON_KEY
a key/value pair ENV_VAR=SECRET_ARN#JSON_KEY (may be specified repeatedly)
-secret-string ENV_VAR=SECRET_ARN
a key/value pair ENV_VAR=SECRET_ARN (may be specified repeatedly)
-version
print version and exit
$ aws-secretsmanager-env -secret-string MY_SECRET=arn:aws:secretsmanager:eu-west-1:28381901202:secret:example-secret-1
MY_SECRET={"hello":"world"}
$ aws-secretsmanager-env -secret-json-key MY_SECRET=arn:aws:secretsmanager:eu-west-1:28381901202:secret:example-secret-1#hello
MY_SECRET="world"
$ aws-secretsmanager-env -secret-json-key-string MY_SECRET=arn:aws:secretsmanager:eu-west-1:28381901202:secret:example-secret-1#hello
MY_SECRET=world
$ aws-secretsmanager-env -secret-json-key-string MY_SECRET=arn:aws:secretsmanager:eu-west-1:28381901202:secret:example-secret-1#hello sh -c 'echo the secret is "$MY_SECRET"'
the secret is "world"