当我使用 terraform在Outputs.tf中创建“local_file”资源时:
### The hosts file
resource "local_file" "AnsibleHosts" {
content = templatefile("${path.module}/hosts.tmpl",
{
vm-names = [for k, p in azurerm_virtual_machine.vm: p.name],
private-ip = [for k, p in azurerm_network_interface.nic: p.private_ip_address],
publicvm-names = [for k, p in azurerm_virtual_machine.publicvm: p.name],
publicvm-private-ip = [for k, p in azurerm_network_interface.publicnic: p.private_ip_address],
public-ip = [for k, p in azurerm_public_ip.publicip: p.ip_address],
public-dns = [for k, p in azurerm_public_ip.publicip: p.fqdn],
}
)
filename = "hosts.j2"
}
如果我直接通过 VS Code 运行它,我会看到创建的 hosts.j2 文件。
当我使用 Azure DevOps 管道部署它时,Plan and Apply 阶段显示文件已创建。
当我检查我的 DevOps 存储库时,文件不存在。
我假设(我可能是错的)这是因为文件是在构建代理上创建的。有谁知道我如何将文件创建/复制回 Azure DevOps Repo。