1
resposta

erro de versão e autenticação ao executar terraform plan

é meu primeiro contato com terraform através do curso e ao tentar realizar o primeiro deploy da minha infra estou recebendo a mensagem abaixo, acredito que a mensagem pode ser dividida em dois blocos, a principio parece um problema relacionado a versão e a segunda parte sobre a credencial.

A respeito da credencial já revalidei algumas vezes, recriei uma nova e até mesmo setei em hard code conforme orientado em alguns foruns mas sem sucesso.

Sobre a versão ainda não está claro pra mim se é necessário apenas atualizar ou se a versão em si interfere de alguma forma no processo de autenticação.

PS C:\terraform> terraform plan ╷ │ Warning: Version constraints inside provider configuration blocks are deprecated │ │ on main.tf line 2, in provider "aws": │ 2: version = "~> 2.0" │

│ Terraform 0.13 and earlier allowed provider version constraints inside the provider configuration block, but that is now deprecated and will be │ removed in a future version of Terraform. To silence this warning, move the provider version constraint into the required_providers block.╵ ╷

│ Error: error using credentials to get account ID: error calling sts:GetCallerIdentity: InvalidClientTokenId: The security token included in the request is invalid. │ status code: 403, request id: 7b430020-c826-4aaf-9d5a-ac1127b8ba57 │ │ with provider["registry.terraform.io/hashicorp/aws"], │ on main.tf line 1, in provider "aws": │ 1: provider "aws" {


Abaixo meu arquivo tf

provider "aws" {
    version = "~> 2.0"
    region  = "us-east-1"
}

resource "aws_instance" "dev" {
    count = 3
    ami = "ami-026c8acd92728196b"
    instance_type = "t2.micro"
    key_name ="terraform-aws"

    tags = {
        Name = "dev${count.index}"

    }
}
1 resposta

A primeira mensagem não é um erro, é um warning. Pode ser ignorado, mas eu te recomendaria corrigir. Terraform, até a versão 0.13, permitia que a versão do provider ficasse dentro do bloco de configuração do provider. Isso vai ser removido no futuro e a recomendação é manter a versão no required_providers, dentro do bloco terraform.

Tente usar o profile default dentro da configuração do provider. Você tem o aws cli instalado? Tente fazer a partir desse tutorial: https://developer.hashicorp.com/terraform/tutorials/aws-get-started/aws-build