Terraform

Awesome Terraform Awesome

>精选的资源清单 HashiCorp's Terraform. Your contributions 受欢迎的!

Terraform使您能够安全且可预测地创建,更改和改善生产基础架构. 它是一个开放源代码工具,将API编码为声明性配置文件,这些文件可以在团队成员之间共享,视为代码,进行编辑,审阅和版本控制.

Official Resources

Community

Books

Tutorials and Blog Posts

Beginner Guides

Writing Custom Providers

How-To

Multi-Environment Configuration

Azure

Miscellaneous

Community Modules

有关此处未列出的更多社区模块,请参见 Terraform Module Registry.

Private Module Registries

Providers

Testing

  • kitchen-terraform -提供了一组Test Kitchen插件,使系统可以使用Test Kitchen聚合Terraform配置并通过InSpec控件验证生成的Terraform状态.
  • rspec-terraform -针对您的Terraform模块的RSpec测试.
  • terraform-compliance -Terraform文件的BDD测试.
  • terraform_validate -协助在Terraform中实施用户定义的标准.
  • terratest - Terratest is a Go library that makes it easier to write automated tests for your infrastructure code.

Tools

  • astro -Astro是用于将多个Terraform执行作为单个命令进行管理的工具.
  • atlantis -通过GitHub在Terraform上进行协作的统一工作流程.
  • blast radius -Terraform依赖图的交互式可视化.
  • fogg -消除管理Terraform资料库中的工作的工具.
  • geopoiesis -专业的持续集成和部署工具,用于现代声明式基础架构的设置和管理.
  • iam-policy-json-to-terraform -将JSON格式的IAM策略转换为Terraform aws_iam_policy_document的小型工具
  • k2tf -Kubernetes YAML到Terraform HCL转换器.
  • json2hcl -将JSON转换为HCL,反之亦然.
  • modules.tf -基础结构作为代码生成器-通过使用 Cloudcraft.co 到Terraform. Source code.
  • para -缺少的第三方插件管理器和Terraform / Terragrunt的“瑞士军刀”-仅有1个工具可简化所有工作流程.
  • pre-commit-terraform -预先提交git挂钩,以处理Terraform配置(自动格式化,验证,更新文档).
  • pretf -嵌入式Terraform包装器,可使用Python生成Terraform配置. 看到 pretf documentation
  • python-terrafile -系统地管理来自Github的外部模块,以在Terraform中使用.
  • prettyplan -Prettyplan(available online here)是一个小工具,可帮助您轻松查看大型Terraform计划.
  • ruby-terraform -用于调用terraform命令的简单Ruby包装器.
  • scenery -另一个Terraform计划输出修饰词.
  • scratchrelaxtv -一个简单的Python工具,可帮助模块开发-从main.tf中提取变量,以生成variables.tf,并从variables.tf中创建模块使用存根.
  • tau -Tau是terraform之上的瘦包装,用于管理多个部署,依赖项和秘密.
  • terraboard -Web仪表板以检查Terraform状态.
  • terraboot -DSL生成Terraform配置并运行它.
  • terrafile -系统地管理来自Github的外部模块,以在Terraform中使用(用Go编写).
  • terrafile -系统地管理来自Github的外部模块,以在Terraform中使用(用Ruby编写).
  • terraform-bundle -轻松构建包含Terraform二进制文件以及提供程序二进制文件的捆绑软件. 对于CI和空白的Terraform Enterprise非常有用.
  • terraform-docs -快速实用程序,可从terraform模块生成文档.
  • terraform-landscape -改进Terraform的计划输出,使其更易于阅读和理解.
  • terraform-plan-parser -命令行实用程序和JavaScript API,用于从“ terraform plan”中解析标准输出并将其转换为JSON.
  • terraform-provisioner -用于管理同一Terraform脚本的多个配置的工具.
  • terraform-rake-tasks -用于管理Terraform计划的共享Rake任务.
  • terraform.py -Ansible动态清单脚本,用于解析Terraform状态文件.
  • terraformer -CLI工具,用于从现有基础结构生成terraform文件. 代码基础架构. 支持的提供商很少.
  • terraforming -将现有的AWS资源导出为Terraform样式(tf,tfstate). 类似于terraformer.
  • terragrunt -Terragrunt是Terraform的薄包装,它支持锁定Terraform状态并执行最佳实践.
  • terrahelp -旨在提供补充功能的命令行实用程序,在使用Terraform时有时会证明是有用的.
  • terrahub -TerraHub是Terraform自动化和编排工具. 与企业友好的GUI无缝集成到console.terrahub.io中,以显示实时Terraform执行以及历史Terraform运行的审核和报告功能.
  • terrascan -收集用于Terraform模板的静态代码分析的安全性和最佳实践测试
  • tfenv -受rbenv启发的Terraform版本管理器.
  • tfjson -读取Terraform计划文件并将其转储为JSON的实用程序.
  • tflint -Terraform linter,用于检测“ terraform plan”无法检测到的错误
  • tfmask -Terraform实用程序,可屏蔽“ terraform plan”和“ terraform apply”中的选择输出
  • tfscaffold -用于控制多环境多组件地形管理的AWS基础架构的框架.
  • tfschema -Terraform提供程序的架构检查器.
  • tfupdate -更新Terraform配置中的版本限制.
  • tfwrapper -Rubygem提供耙任务,以合理地运行Hashicorp Terraform.
  • tgf -Terragrunt前端,用于通过Docker执行Terragrunt / Terraform.
  • xterrafile 从模块注册表,git或本地目录中系统地管理外部模块,以在Terraform中使用(用Go编写).

Libraries

  • pyhcl -Python中的HCL解析器
  • rhcl -纯Ruby HCL解析器

Terraform Enterprise

Talks

Editor Plugins

License

CC0

在法律允许的范围内,Shuaib Yunus放弃了该作品的所有版权以及相关或邻近的权利.