MGC Terraform Provider - Guia do Usuário
Este guia fornece instruções passo a passo sobre como instalar e usar um provedor Magalu no Terraform para integrar recursos em seu ambiente de infraestrutura. Siga estes passos cuidadosamente para garantir uma integração bem-sucedida.
Pré-requisitos
Antes de começar tenha certeza de que você tem o Terraform instalado e para isso siga as instruções no site da Hashicorp.
Autenticação
É importante que você tenha feito o procedimento de autenticação pelo CLI ao menos uma vez, porque o provider Terraform utilizará a mesma sessão de usuário.
Instalando o provider terraform da Magalu Cloud
Atualmente o provider MGC Terraform não está disponível no Terraform registry (online). Os passos abaixo auxiliam na instalação do provider localmente usando o método dev_override.
Siga as instruções cuidadosamente para instalar e configurar o provider na sua instalação do Terraform.
1. Usando um navegador, acesse o link abaixo e baixe a versão correspondente a sua plataforma e sistema operacional:
https://github.com/MagaluCloud/mgccli/releases
2. Descompacte o arquivo para o local de sua preferência.
3. Crie uma pasta para o seu projeto, como por exemplo: ~/terraform-mgc.
4. Copie para esta pasta o binário do provider como por exemplo: terraform-provider-mgc.
5. Crie um novo arquivo de configuração para o projeto, como por exemplo ~/terraform-mgc/main.tf e adicione o seguinte conteúdo ao arquivo:
// main.tf
terraform {
required_providers {
mgc = {
source = "registry.terraform.io/magalucloud/mgc"
version = "0.17.0"
}
}
}
provider "mgc" {}
Lembre de atualizar o número da versão para a versão atual da sua CLI.
Ajustando link para o provider
Como estamos usando a versão offline do provider, precisamos ajustar a sua referência para a pasta onde ele está instalado. Para isso adicione o seguinte conteúdo no arquivo de configuração local de seu usuário: ~/.terraformrc.
No Windows esse arquivo está localizado em $env:APPDATA e seu nome deve ser terraform.rc .
// terraform.rc
provider_installation {
dev_overrides {
"registry.terraform.io/magalucloud/mgc" = "/home/usuario/terraform-mgc"
}
direct {}
}
Caso o arquivo de configuração não exista, você deverá criá-lo previamente.
Nos sistemas Windows o caminho para a pasta terraform-mgc deve ser referenciado desta forma:
C:/Users/<seu_usuario>/terraform-mgc
Para mais informações sobre o arquivo de configuração, veja a documentação oficial da Hashicorp aqui.
Adicionando seus recursos
Para adicionar recursos suportados da Magalu Cloud no seu projeto terraform, siga as instruções contidas na referência que está localizada dentro do mesmo arquivo ZIP onde estava o binário, na pasta doc/resources.
Abaixo segue um exemplo de configuração para instância de Virtual Machine:
// virtual_machines.tf
resource "mgc_virtual-machine_instances" "myvm" {
provider = "mgc"
name = "my-tf-vm"
machine_type = {
name = "cloud-bs1.xsmall"
}
image = {
name = "cloud-ubuntu-22.04 LTS"
}
ssh_key_name = "my_ssh_key"
availability_zone = "br-ne-1c"
}
Esse exemplo deve ser adicionado a um arquivo com extensão .tf , como por exemplo virtual_machines.tf e deve ficar na mesma pasta do arquivo main.tf criado anteriormente.
Testando seu projeto terraform
Agora vamos executar o seu projeto terraform. Os comandos sugeridos abaixo seguem o fluxo básico de execução e verificação da ferramenta, mas para melhor compreender o seu funcionamento recomendamos visitar a documentação oficial a página do desenvolvedor: Terraform Documentation
Como estamos utilizando um provider local, não é necessário rodar o comando terraform init.
Abra um seu terminal dentro da pasta onde está o projeto terraform (os arquivos .tf) e execute o seguinte comando para revisar as mudanças antes de aplicar:
terraform plan
E quando estiver seguro das alterações execute o comando abaixo para aplicá-las.
terraform apply
Responda aos prompts de confirmação, caso sejam exibidos no seu terminal.
Para verificar as alterações aplicadas sobre seus recursos na Magalu Cloud, execute o comando abaixo.
terraform show
Agora você pode também abrir o Console Web da Magalu Cloud para ver suas alterações na UI, ou então através da Command Line Interface (CLI).