cbea3e932b
- Agrega paso 03_terraform para DEV y PROD con init, plan y apply - Crea backend.dev.hcl para configuración explícita de estado DEV - Refactoriza Route53/ACM en main.tf para soportar PROD cross-account usando count condicional sin romper estado de DEV - Descomenta provider aws.route53 en provider.tf - Añade domain_name faltante en prod.tfvars y confirma dev.tfvars - Corrige output route53_record para recursos con count - Elimina errored.tfstate corrupto local - Incluye permiso sts:AssumeRole en IAM policy para Route53 cross-account
67 lines
1.5 KiB
Terraform
67 lines
1.5 KiB
Terraform
# ===============================================================================================================
|
|
# provider.tf - Configuración del proveedor AWS para proyectosacc
|
|
# Descripción:
|
|
# Define la región y versiones del provider AWS para Terraform.
|
|
#
|
|
# Uso:
|
|
# terraform init
|
|
#
|
|
# Autor: Área de Tecnología y Desarrollo - CCsoft
|
|
# ===============================================================================================================
|
|
|
|
terraform {
|
|
required_version = ">= 1.5.0"
|
|
|
|
required_providers {
|
|
aws = {
|
|
source = "hashicorp/aws"
|
|
version = "~> 5.0"
|
|
}
|
|
}
|
|
}
|
|
|
|
provider "aws" {
|
|
region = var.aws_region
|
|
|
|
default_tags {
|
|
tags = {
|
|
Project = var.project_name
|
|
ManagedBy = "terraform"
|
|
Environment = var.environment
|
|
}
|
|
}
|
|
}
|
|
|
|
# Provider exclusivo para ACM en us-east-1 (requerido por CloudFront)
|
|
provider "aws" {
|
|
alias = "us_east_1"
|
|
region = "us-east-1"
|
|
|
|
default_tags {
|
|
tags = {
|
|
Project = var.project_name
|
|
ManagedBy = "terraform"
|
|
Environment = var.environment
|
|
}
|
|
}
|
|
}
|
|
|
|
# Provider para Route 53 en cuenta cross-account (262270938827)
|
|
# Solo se usa en PROD mediante count condicional en los recursos de Route 53.
|
|
provider "aws" {
|
|
alias = "route53"
|
|
region = "us-east-1"
|
|
|
|
assume_role {
|
|
role_arn = "arn:aws:iam::262270938827:role/Route53ProyectosaccCrossAccountRole"
|
|
}
|
|
|
|
default_tags {
|
|
tags = {
|
|
Project = var.project_name
|
|
ManagedBy = "terraform"
|
|
Environment = var.environment
|
|
}
|
|
}
|
|
}
|