Ansible和Terraform脚本的推荐目录布局

时间:2019-07-17 03:14:15

标签: ansible terraform devops

是否存在建议的方法来在一个git存储库中构造ansible剧本和terraform脚本?应该考虑什么,有什么限制?

1 个答案:

答案 0 :(得分:0)

我不确定是否有建议的最佳实践,但这是我的工作:

- my_module
  - modules
    -my_module
    -sub_module-01
    -submodule-02
    - ...
    - config

my_module/modules/my_module是项目中最高级的子模块。基本上,它是将所有其他子模块粘合在一起的包装器。

尤其是,我通常有一个config子模块,该子模块接收仅与服务器/启动模板配置相关的变量,并输出将插入Cloud-init config之类的东西,将其插入EC2 /启动模板/等user_data的论点。

但是,如果某些配置足够复杂和/或在许多模块之间共享,我可能会创建一个单独的foo-config Terraform项目,该项目位于单独的存储库中。

我想您可以使用Ansible Playbooks做类似的事情:创建负责接收变量并正确呈现Playbook的模块,然后根据需要将它们放在单独的模块上。