用于针对 LocalStack 运行 Terraform 的瘦包装脚本
项目描述
tflocal- 带有 LocalStack 的 Terraform
这个包提供tflocal- 一个小的包装脚本来针对LocalStack运行Terraform。
先决条件
- Python 3.x
pipterraform
这个怎么运作
该脚本使用Terraform Override 机制并创建一个临时文件localstack_providers_override.tf来配置 AWSprovider部分的端点。所有服务的端点都配置为指向 LocalStack API(http://localhost:4566默认情况下)。
安装
tflocal命令行界面可以通过以下方式安装pip:
pip install terraform-local
配置
可以配置以下环境变量:
TF_CMD: Terraform 命令调用 (默认:terraform)LOCALSTACK_HOSTNAME: 目标 LocalStack 实例的主机名EDGE_PORT: 目标 LocalStack 实例的端口号S3_HOSTNAME:用于连接到 LocalStack S3 的特殊主机名(默认值s3.localhost.localstack.cloud:)USE_EXEC: 是否使用os.exec代替subprocess.Popen(如果出现 I/O 问题,请尝试使用此选项)<SERVICE>_ENDPOINT:设置自定义服务端点,例如,COGNITO_IDP_ENDPOINT=http://example.com
用法
该tflocal命令的用法与该terraform命令相同。详细使用请参考terraform --help.
更改日志
- v0.4:修复使用 use_s3_path_style 为 S3_HOSTNAME=localhost;排除
meteringmarketplace服务端点 - v0.3:修复支持 -chdir=... 在目标目录中创建提供程序文件
- v0.2:添加指定自定义端点的能力;将 INT 信号传递给子进程
- v0.1:初始版本
执照
该软件库是根据 Apache 许可证 2.0 版发布的(请参阅 参考资料LICENSE)。