【发布时间】:2021-09-04 12:16:05
【问题描述】:
我正在尝试通过 Terraform 部署 NextJS 应用程序,但我似乎无法让 Route53 区域工作。我已经通过 Route53 注册了域,并使用该域设置了一个托管区域。当使用 CLI 命令aws route53 list-hosted-zones 时,我可以成功地看到那里的托管区域。但是,每当尝试运行 terraform plan 时,我都会遇到这个问题:
Error: no matching Route53Zone found
on .terraform/modules/aws_static_site/main.tf line 1, in data "aws_route53_zone" "zone":
1: data "aws_route53_zone" "zone" {
这是我的 tf 文件:
provider "aws" {
region = "eu-west-1"
profile = "rozzle-static-site"
}
module "aws_static_site" {
source = "dvargas92495/static-site/aws"
version = "1.2.0"
domain = "rozzle.co.uk"
secret = "REMOVED"
tags = {
Application = "rozzle-static-site"
}
}
provider "github" {
owner = "dvargas92495"
}
resource "github_actions_secret" "deploy_aws_access_key" {
repository = "static-site-demo"
secret_name = "DEPLOY_AWS_ACCESS_KEY_ID"
plaintext_value = module.aws_static_site.deploy-id
}
resource "github_actions_secret" "deploy_aws_access_secret" {
repository = "static-site-demo"
secret_name = "DEPLOY_AWS_SECRET_ACCESS_KEY"
plaintext_value = module.aws_static_site.deploy-secret
}
我无法弄清楚这是如何工作的。希望有人能帮忙!
【问题讨论】:
-
你的数据块是什么样子的?
-
什么数据块?模块中的数据块?
-
正确,错误是引用一个数据块,该数据块是什么样的以及它正在使用的任何相关输入。
-
data "aws_route53_zone" "zone" { name = "${local.zone_domain_name}." private_zone = false } -
zone_domain_name 本地:
zone_domain_name = join(".", slice(local.domain_parts, local.domain_length - 2, local.domain_length))
标签: terraform amazon-route53 terraform-provider-aws