从aws机密生成环境变量的命令行工具
secrets2env的Python项目详细描述
secret2env
从aws secrets manager中的secrets生成sourcable环境变量的命令行工具 使用yaml定义。
安装
$ pip install secrets2env
环境定义
下面是一个环境定义示例。将生成环境变量的值
使用.format()
和关键字参数。
-secret:aws/secret-namename:ENV_SECRETvalue:"{key1-in-secret}"-secret:production/postgresqlname:PSQL_URIvalue:"postgresql://{username}:{password}@postgresql:5432/{dbname}"
用法
可以将指向类似定义的路径作为参数提供,否则默认为./aws-secrets.yml
。
运行secrets2env
会将源环境打印到stdout,它可以是eval
d或重定向到环境文件。
# with path to definition file $ secrets2env --definition path/to/definition.yml # or using the default path (./aws-secrets.yml) with the definition above $ secrets2env
它将产生以下输出
# Autogenerated by <path/to/installed/secrets2env.py>exportENV_SECRET='some-secret'exportPSQL_URI='postgresql://pg-user:pg-pw@postgresql:5432/pgdb'
# you can eval directlyeval"`secrets2env`"# or redirect to fileecho -e "\n`secrets2env`" >> env.sh
限制/待办事项
- 目前只支持
SecretString
- 目前仅支持OSX和Linux
- 无自动测试