Terraform do Zero na GCP – Parte 3: Criando o Primeiro Projeto

Se você caiu aqui de pára-quedas e quer ver o que rolou antes, veja o seguinte post:

Terraform do Zero na GCP – Parte 2: Preparando o Ambiente

Agora que já preparamos o terreno, é hora de criar o primeiro projeto. Nesse post, vamos:

  • Criar a estrutura básica de um projeto Terraform
  • Inicializar o Terraform (terraform init)
  • Criar e aplicar um recurso real na GCP (um bucket no Cloud Storage)

Estrutura de Arquivos

Crie uma pasta para seu projeto e adicione os seguintes arquivos:

Escrevendo o main.tf

O arquivo main.tf é o arquivo onde toda a lógica está detalhada, onde todos os recursos a serem provisionados estão definidos. Obviamente, são feitas diversas segmentações no processo para facilitar a manutenção, mas o arquivo que é lido e validado inicialmente, é o main.tf

Escrevendo o variables.tf e o variables.tfvars

Aqui fica o arquivo de declaração das variáveis a serem utilizadas no processo.
Você notou o "${var.project_id}-static-site" logo acima? A ideia aqui é informar para o main.tf que existe uma variável chamada “project_id” e que ela está disponível par ser utilizada.
Qual o valor dela? Se ela não tiver um valor “default”, como na variável region, ela precisará ser declarada no arquivo variables.tfvars.

Então, crie um arquivo terraform.tfvars com os valores das variáveis a serem utilizadas:

Escrevendo o outputs.tf

Inicializando o Terraform

Execute os comandos no terminal:

Planejando e aplicando

Primeiro, veja o que será criado:

Depois, aplique:

Confirme com yes quando solicitado.

Resultado

Se tudo estiver certo, você verá algo como:

E o nome do bucket criado será exibido no output.

Mas, será que ele criou de fato o bucket?

(Opcional – mas recomendado) Limpando recursos

Para destruir tudo:

E assim, já conseguimos criar o primeiro bucket na GCP!

Mas já terminamos? O que vem no próximo post?

Calma… A brincadeira está só começando!
Agora que criamos nosso primeiro recurso, vamos aprender a trabalhar melhor com as variáveis, outputs, e ver algumas boas práticas, para estruturarmos os projetos de forma escalável.

Se quiser ir para o próximo post da série:

Terraform: Dando o próximo passo – Criando uma infraestrutura do zero na GCP

Deixe uma resposta

Este site utiliza o Akismet para reduzir spam. Saiba como seus dados em comentários são processados.