Setup do backend¶
O airtestto é um monorepo TypeScript. Cada domínio vive em packages/* e leva a própria infraestrutura CDK, as Lambdas e as regras de negócio.
Pré-requisitos¶
- Node.js e npm
- Docker e Docker Compose
- AWS CLI,
jqecdklocal
Subir o ambiente local¶
O script local cobre sobretudo autenticação e a configuração da API nesse cenário. O LocalStack sobe pelo docker-compose.yml da raiz. A composição dos stacks começa em packages/api/bin/api.ts.
Deploy local de um pacote¶
cdklocal deploy \
--app "npx ts-node packages/<nome>/bin/<nome>.ts" \
--require-approval never \
--context isLocal=true \
--context assetStorageMode=local
Contextos usados com frequência: isLocal, assetStorageMode e stage ou env.
Desenvolvimento¶
Para validar um pacote que tenha script próprio, rode npm run build dentro de packages/<nome>.
Pacotes com Jest, como ai, flipping e sales, guardam testes em __tests__.
Ordem ao alterar um domínio¶
- Atualize o código em
packages/<domínio>. - Ajuste o stack em
packages/<domínio>/cdk. - Se a rota passa pela API central, ajuste
packages/api. - Rode
npm run buildna raiz. - Faça o deploy local e valide os endpoints no LocalStack.
A licença registrada no repositório do backend é MIT.