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:
-
Criar dois Plugins de Infra para gerar a infraestrutura para fazer o deploy da página HTML. Use o exemplo de Plugins de Infra;
-
Criar uma Stack que contenha os Plugins de Infra do mesmo exemplo;
-
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
- 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.
Você só consegue registrar e fazer o deploy de uma Infraestrutura utilizando os Plugins dentro de um Workspace.
- Para criar a Infraestrutura, execute o comando:
stk create infra demo-infra
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 pressionarenter
. 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:
- Execute o comando para acessar o diretório:
cd demo-infra
- 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.
Verifique se a sua Aplicação foi adicionada ao Workspace:
- Acesse o Portal da StackSpot EDP;
- Entre no seu Workspace;
- Clique em ‘Infraestrutura’;
- Confirme que a sua Infraestrutura está lá.
Passo 5. Fazer o deploy da infraestrutura da sua Aplicação
Você só consegue fazer o deploy caso você tenha:
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.