管理cloudformation堆栈配置的工具
carica-cfn-tools的Python项目详细描述
创建和更新cloudformation堆栈的简单命令行工具 使模板和堆栈配置的版本控制更容易 在一个地方。支持一些对动态 将手动维护的模板与生成的模板合并(例如, “chalice package”)中的sam.json,其中包含您希望包含的资源 在你的主模板中。
开发
vinstall脚本使用virtualenv准备一个有用的python环境 为了开发,您不必构建和安装carica cfn工具 能够运行和测试它。
运行./vinstall
通过运行. ./venv/bin/activate
setup.py中列出的console_scripts现在在您的路径中,因此 可以像这样简单地运行它们:
carica-cfn ...
示例堆栈配置
Region: us-east-1 Bucket: mycorp-cfn-us-east-1 Name: WarehouseApp Template: ../templates/warehouse-app.yml Parameters: # Normal parameter values can include strings, numbers, booleans, etc. Stage: dev TableReadCapacityUnits: 10 TableWriteCapacityUnits: 5 AdminPassword: # A parameter with a "ParameterStore" sub-key will be resolved to the # SSM Parameter Store parameter with that name. ParameterStore: dev.warehouseapp.admin-password PostgreSQLPassword: # A parameter with a "SecretsManager" sub-key will be resolved to the # Secrets Manager secret with that ID. SecretsManager: dev.warehouseapp.postgresql-password Extras: - ../cfn/static/logo.png - ../cfn/static/index.html JinjaExtras: - ../cfn/includes/*.yml JinjaExtrasContext: FOO: bar
extras和jinjaextras可以是相对于 堆栈配置文件。
extras或jinjaextras目录,无论是绝对指定的 路径或从glob模式展开,递归地复制到部署中。 在以源的last目录组件命名的顶级目录中。 像/foo/bar/baz这样的额外目录路径最终在部署中成为/baz。
附加文件或jinjaextras文件,无论是按绝对路径还是按扩展路径 从glob模式复制到部署的根目录中。
jinjaextras在所有extras之后使用jinja2模板引擎进行处理 复制到临时目录。
jinjaextrascontext是运行jinja时作为上下文传递的字典。