Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/keilerkonzept/aws-secretsmanager-env
injects AWS Secrets Manager secrets as environment variables. single binary, no dependencies. osx & linux & windows. #aws #golang #cli
https://github.com/keilerkonzept/aws-secretsmanager-env
aws env environment-variables exec secretsmanager self-contained
Last synced: 3 months ago
JSON representation
injects AWS Secrets Manager secrets as environment variables. single binary, no dependencies. osx & linux & windows. #aws #golang #cli
- Host: GitHub
- URL: https://github.com/keilerkonzept/aws-secretsmanager-env
- Owner: keilerkonzept
- License: mit
- Created: 2019-07-16T16:19:31.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2024-07-30T21:30:56.000Z (7 months ago)
- Last Synced: 2024-07-31T02:28:34.572Z (7 months ago)
- Topics: aws, env, environment-variables, exec, secretsmanager, self-contained
- Language: Go
- Homepage:
- Size: 12.3 MB
- Stars: 18
- Watchers: 4
- Forks: 5
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# aws-secretsmanager-env
[](https://hub.docker.com/r/sgreben/aws-secretsmanager-env/tags)
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](https://github.com/keilerkonzept/aws-secretsmanager-files))
- [Get it](#get-it)
- [Use it](#use-it)
- [Examples](#examples)
- [Comments](#comments)## Get it
Using go get:
```bash
go get -u github.com/keilerkonzept/aws-secretsmanager-env
```Or [download the binary](https://github.com/keilerkonzept/aws-secretsmanager-env/releases/latest) from the releases page.
```bash
# 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
```## Use it
```text
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
```### Examples
```shell
$ 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"
```