4
respostas

Erro na aplicação da variável

Olá,

Estou acompanhando as aulas e me deparei com um erro na aplicação da variável tipo map, poderiam me auxiliar? O arquivo de variável está assim:

  type = "map"

  default = {
      "us-east-1" = "ami-07ebfd5b3428b6f4d"
      "us-east-2" = "ami-02ccb28830b645a41"
  }
}

Já o trecho da instância EC2 está assim:

resource "aws_instance" "dev5" {
  ami = var.amis["us-east-1"]
  instance_type = "t2.micro" 
  key_name = "terraform-aws"
  tags = {
      Name = "dev5"
  }
  vpc_security_group_ids = ["${aws_security_group.acesso-ssh.id}"]
}

Mas quando rodo o comando terraform plan, ocorre o seguinte:

terraform$ terraform plan

Error: Error parsing lab/terraform/ec2.tf: At 25:9: Unknown token: 25:9 IDENT var.amis

A linha 25 a qual se refere a mensagem está assim:

  ami = var.amis["us-east-1"]

Poderiam me auxiliar no entendimento e solução?

4 respostas

Olá Rogério, tudo bem? O terraform está indicando que é um erro de sintaxe, porém precisamos verificar ambos os arquivos por completo, teria como você disponibilizar todo o conteúdo do arquivo main.tf (no seu caso é ec2.tf) e também todo o conteúdo do arquivo vars.tf. Temos que verificar, porque o erro fala que é na linha 25 (ami = var.amis["us-east-1"]) porém pode ser que o erro esteja no arquivo de vars.tf, ou algum erro de formatação no arquivo vars.tf!

Boa tarde. Estou com o mesmo problema. Revisei todo o codigo dos arquivos e não tem nada de errado. Alguem poderia ajudar?

Olá Diego, você poderia disponibilizar seus arquivos pra gente poder analisar e verificar o problema!

Olá. O problema foi resolvido pelo instrutor no video seguinte. Para quem passar pelo mesmo problema segue aqui a causa e a solução:

O problema é causado pelo extension Terraform do Visual Studio Code que é indicado para ser instalado no inicio do curso. Nas versões mais atuais desta extensão, para que as variaveis funcionem sem erros, devem ser usadas colocando os valores dentro da chave em "${ }" . Exemplos: "${var.amis["us-east-1"]}" "${var.key_name}" "${var.cdirs_acesso_remoto}"

Espero ter ajudado.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software