Pular para o conteúdo principal

Criar e fazer o deploy de uma Infraestrutura

Nesta seção, você encontra um exemplo de como utilizar Plugins de Infraestrutura para criar e fazer o deploy de uma Infraestrutura.

Introdução

  • Nível Iniciante

Este é um exemplo de como criar uma Infraestrutura. Para mais detalhes e para criar a sua Infra, confira a página de Infraestrutura.

Este exemplo auxilia você a criar e fazer o deploy de uma Infraestrutura com o STK CLI da StackSpot. Você irá usar:

  • A Stack S3 CloudFront que você criou no exemplo de Plugin de Infra. Você precisa disso para criar uma Infraestrutura que pode ser usada para fazer o deployment de uma Aplicação.
  • A Stack S3 CloudFront inclui Plugins de Infraestrutura projetados para construir a infraestrutura necessária para o deploy e a acessibilidade do conteúdo HTML.

Agora, siga as instruções para fazer isso.

Antes de começar

Para usar este guia, primeiro, você precisa:

  1. Criar dois Plugins de Infra para gerar a infraestrutura para fazer o deploy da página HTML. Use o exemplo de Plugins de Infra.
  2. Criar uma Stack que contenha os Plugins de Infra do mesmo exemplo.
  3. Você deve adicionar as Stacks a um Workspace para criar, registrar e fazer o deploy da Infraestrutura com a StackSpot.

Pré-requisitos

  • Criar uma conta StackSpot.
  • Instalar o STK CLI.
  • Fazer login na sua conta dentro do STK CLI. Execute o comando:
stk login

Passo 1. Criar um diretório vazio

Crie um diretório vazio para o projeto. Execute o comando no seu terminal:

mkdir demo-infra

Acesse o diretório na sua IDE de preferência, por exemplo, Visual Studio Code.

Passo 2. Criar a Infraestrutura

  1. Acesse o Workspace onde você fez as etapas anteriores e adicionou a Stack S3 CloudFront do Guia de criação de Plugins de Infraestrutura mencionado no início.

Você vai usar este mesmo Workspace para criar e registrar a Infraestrutura. No seu terminal, execute o comando:

stk use workspace

Depois, selecione o Workspace.

Cuidado!

Você só consegue registrar e fazer o deploy de uma Infraestrutura utilizando Plugins dentro de um Workspace.

  1. Para criar a Infraestrutura, execute o comando:
stk create infra demo-infra
Dica!

Qual a diferença entre criar uma Aplicação e uma Infraestrutura?

  • Ao criar uma Aplicação, você precisa de um Starter dentro da Stack.
  • Ao criar uma Infraestrutura, não há necessidade de um Starter, apenas de uma Stack.

Em seguida, responda às perguntas no seu terminal da seguinte forma:

? Nomeie sua Infraestrutura demo-infra
? Você deseja iniciar um repositório git? No
? Descrição da Infraestrutura: (Descreva sua Infraestrutura explicando o propósito) Criar Bucket S3 com distribuição de CloudFront
? Selecione o estúdio: selecione o Estúdio onde você criou a Stack
? Selecione a stack: s3-cloudfront-stack
? Selecione a versão da stack: 1.0.0
? Selecione os plugins de infra desejados: done (2 selections)
> Plugins de infra selecionados a serem aplicados:
- bucket-s3-plugin@0.0.1
- cloudfront-plugin@0.0.1

Na última pergunta ? Selecione os plugins de infra desejados: ambos os plugins já estarão selecionados para serem aplicados. Então, basta pressionar enter.
Em outros casos, você pode selecionar um Plugin por vez para aplicar.

  • Agora, aplique o Plugin Bucket S3:

Quando a pergunta ? Nomeie a utilização do plugin aparecer, apenas aperte enter.

  • Então, responda às perguntas no seu terminal:
? Nomeie o connector para bucket-s3-plugin-conn (aws-s3-conn): demo-infra-tw-01-conn
? Type name of your bucket demo-infra-tw-01

Quando você nomeia o connector, você está nomeando a Connection Interface.
Quando você nomeia o Bucket S3, você está nomeando o alias do Plugin.

  • Agora, aplique o Plugin CloudFront e responda às perguntas no seu terminal:

Quando a pergunta ? Nomeie a utilização do plugin aparecer, apenas aperte enter.

Neste cenário, o Plugin CloudFront reconhece que um Plugin anterior gerou uma Connection Interface requerida. Selecione:

? Escolha um connector para 'aws-s3-conn (bucket-s3-cloudfront-conn)': demo-infra-tw-01-conn (local)
? Type name of your resource (Client)
? Choose http method of new endpoint GET

Você criou com sucesso a Infraestrutura demo-infra!

Dentro da pasta do seu projeto, existirá apenas o arquivo stk.yaml.

Passo 3. Acessar o diretório do seu projeto e registrar a Infraestrutura

Registre a sua Infraestrutura no Workspace para deixá-la disponível na StackSpot. Siga as instruções:

  1. Execute o comando para acessar o diretório:
cd demo-infra
  1. Registre a sua Infraestrutura:
stk register infra

Responda às perguntas da seguinte forma:

? URL repositório: adicione a url do seu repositório
? Base branch: main

A Infraestrutura foi registrada com sucesso.

Informação adicional

Verifique se a sua Infraestrutura foi adicionada ao Workspace:

  1. Acesse o Portal da StackSpot EDP.
  2. Entre no seu Workspace.
  3. Clique em Infraestruturas.
  4. Confirme que a sua Infraestrutura está lá.

Passo 4. Fazer o deploy da sua Infraestrutura

Para fazer o deploy da sua Infraestrutura, execute o comando a seguir:

stk deploy infra -v <versão-da-infra> -e <nome-do-ambiente> -w 

-v indica a versão da Infraestrutura.
-e indica em qual ambiente você quer fazer o deploy.
-w indica que você quer acompanhar o deploy.

Pronto, você iniciou o deploy da Infraestrutura.

  • O deployment começa com o Plugin Bucket S3 porque ele gera uma Connection Interface que o Plugin do CloudFront usará.
  • A StackSpot registra o deployment na página da Infraestrutura no Portal.
  • Após o deployment, você verá as Connection Interfaces geradas pela sua Infraestrutura no Portal StackSpot EDP.

O que você pode fazer a seguir?