keboola/aws-parameter-filler

此包已被废弃,不再维护。未建议替代包。

从 AWS SSM 向 .env 文件填充参数

0.3.0 2020-06-01 12:31 UTC

This package is auto-updated.

Last update: 2023-03-21 07:31:16 UTC


README

Build Status

从指定的参数命名空间(前缀)和区域获取 AWS SSM 参数。将参数存储为 .env 文件。

用法

可执行文件接受三个参数

  • 目标文件
  • 参数命名空间(以斜杠开始和结束)
  • AWS 区域

示例

aws-parameter-filler .env /company/my-application/ us-east-1

必须具有使用 GetParametersByPathGetParameter 权限的 AWS 凭据。

开发

克隆此存储库,并使用以下命令初始化工作区

git clone https://github.com/keboola/aws-parameter-filler
cd aws-parameter-filler
docker-compose build

使用 test-cf-stack.json 创建测试堆栈。为生成的用户创建访问密钥。另外,手动创建 SecureString 参数,该参数无法使用云Formation模板创建

Name: /keboola/$STACKNAME/aws-parameter-filler/six
Value: SuperSecretValue
Type: SecureString
Description: Parameter filler test - Encrypted parameter

设置以下环境变量(或使用 .env.template

  • AWS_ACCESS_KEY_ID - 从创建的访问密钥。
  • AWS_SECRET_ACCESS_KEY - 从创建的访问密钥。
  • TEST_NAMESPACE - 命名空间堆栈输出的值。
  • TEST_REGION - 区域堆栈输出的值。

使用以下命令运行测试套件

docker-compose run

Composer 集成

此实用程序可用于 composer。通过运行以下命令将库添加到您的项目

composer require keboola/aws-parameter-filler

然后在您的 composer.json 中添加以下内容

"scripts": {
	"get-parameters": "aws-parameter-filler .env /my-stack/ us-east-1"
}

然后运行 composer get-parameters 将下载指定命名空间的参数并将它们存储在应用程序根目录的 .env 文件中。也可以使用环境变量

"scripts": {
	"get-parameters": "aws-parameter-filler .env /keboola/$KEBOOLA_STACK/runner-sync-api/ $KEBOOLA_STACK_REGION"
}

许可协议

MIT 许可协议,请参阅 LICENSE 文件。