首页 > 解决方案 > 使用 Terraform 时 Ansible 如何找到 group_vars

问题描述

我正在使用 terraform 和 Ansible 建立一个项目。在 Terraform 创建了所有需要的资源之后,我需要使用 Ansible 来配置服务器,我在其中使用以下内容:

# provisioner "local-exec" {
#     environment = {
#       ANSIBLE_SSH_RETRIES       = "30"
#       ANSIBLE_HOST_KEY_CHECKING = "False"
#     }
#     command = "ansible-playbook ${var.ec2_ansible_playbook} --extra-vars env_name=${var.env} -u ubuntu -i ${aws_eip.main.0.public_ip},"
#   }

Ansible 找不到我的group_vars,如何将 Ansible 指向正确的路径group_vars?以前,我只使用 Ansible,我会运行类似的东西

ansible-playbook provision.yml -i inventory/prod/hosts

Ansible 查找 group_vars 不会有任何问题,因为它们与主机位于同一位置。任何帮助表示赞赏。

标签: ansibleterraformterraform-provider-awsansible-inventoryterragrunt

解决方案


您可以指定文档working-dir中提到的类似内容

我认为默认情况下它使用模块目录作为工作目录。


推荐阅读