Skip to content

andresionek91/supletivo-data-hackers-AWS-CDK

Repository files navigation

Supletivo Data Hackers: AWS CDK

Material criado para a aula de AWS CDK do Supletivo Data Hackers.

O objetivo é criar uma aplicação que utiliza o AWS CDK para criar uma stack de infraestrutura na AWS. Essa stack será composta por um bucket S3, uma função Lambda e um API Gateway.

Confira aqui o conteúdo gravado

Branch da demo ao vivo

Objetivos da demo

  1. Criar uma stack de infraestrutura na AWS utilizando o AWS CDK
    1. Mostrar como o CDK gera o template CloudFormation
    2. Mostrar como o CDK faz o deploy da stack
    3. Mostrar como trabalhar com diferentes ambientes (dev, prod, etc)
  2. Criar um bucket S3
  3. Criar uma função Lambda que:
    1. Recebe um input e escreve um arquivo no bucket S3
    2. Lê o arquivo do bucket S3 e retorna o conteúdo
    3. Lista os arquivos do bucket S3
  4. Criar um API Gateway
    1. Criar um endpoint para escrever um arquivo no bucket S3
    2. Criar um endpoint para ler um arquivo do bucket S3
    3. Criar um endpoint para listar os arquivos do bucket S3
  5. Criar um teste para a função Lambda
  6. Criar um teste para a infraestrutura

Requisitos

  1. Para instalar esse projeto você precisa ter o Python Poetry instalado. Para instalar o Poetry, siga as instruções do site oficial
  2. Você também precisa instalar o AWS CDK. Para isso, também siga as instruções do site oficial.
  3. Por fim, você precisa ter uma conta na AWS e configurar as credenciais de acesso. Para isso, siga as instruções do site oficial.
    1. Crie um perfil para acessar as suas credenciais. Para isso, crie um arquivo ~/.aws/credentials com o seguinte conteúdo:

      [my_profile]
      aws_access_key_id = <your_access_key_id>
      aws_secret_access_key = <your_secret_access_key>
    2. Crie um arquivo ~/.aws/config com o seguinte conteúdo:

      [profile my_profile]
      region=us-east-1
      output=json

Instalação

Simplesmente rode:

make init

Esse comando irá criar um ambiente virtual Python e instalar todas as dependências necessárias para rodar o projeto. Também vai rodar os testes para garantir que tudo está funcionando.

Acesse o ambiente virtual com:

source .venv/bin/activate

Rodando o projeto

Após modificar o seu stack, você pode rodar o seguinte comando para ver o template CloudFormation gerado:

cdk synth

E para fazer o deploy da stack:

cdk deploy <Nome-da-Stack>--profile my_profile

Links úteis

About

Conteúdo do supletivo de AWS CDK do Data Hackers

Resources

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published