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 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.

  • O S3 CloudFront Stack inclui Plugins de Infraestrutura projetados para construir a infraestrutura necessária para implantação e 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 Aplicação 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 e adicionou o s3-cloudfront Stack 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 os 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 do Stack.
  • Ao criar uma Infraestrutura, não há necessidade de um Starter, apenas de um 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 as 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 as 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. Acesse o diretório do seu projeto e registre 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 Aplicação foi adicionada ao Workspace:

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

Passo 5. Fazer o deploy da infraestrutura da sua Aplicação

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

stk deploy app -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 que o Plugin do CloudFront usará.
  • StackSpot registra o deployment na página da Infraestrutura no Portal.
  • Após o deployment, você verá as Connections Interfaces geradas pela sua Infraestrutura no Portal StackSpot EDP.

O que você pode fazer a seguir?