Serverless: Opção para remover o aws-sdk do node_modules local antes da implantação

Criado em 6 jun. 2017  ·  3Comentários  ·  Fonte: serverless/serverless

Esta é uma (Proposta de Recurso)

Opção para remover o aws-sdk do node_modules local antes da implantação

Descrição

O aws-sdk sozinho é um módulo de nó enorme (mais de 20 MB descompactado) e, juntamente com todas as suas dependências, pesa o suficiente para evitar edições de código no navegador na plataforma lambda.

Um usuário pode querer usar algo que dependa do aws-sdk (por exemplo @awspilot/dynamodb ) - mas isso funcionará bem com o módulo aws-sdk nativo do lambda.

Atualmente, você pode remover manualmente o aws-sdk e suas dependências e, assim, reduzir sua função package.zip, usando meu caso como exemplo, um fator de 25.

Poderia ser uma opção para serverless remover esses módulos desnecessários antes de empacotar/implantar?

Problemas semelhantes ou dependentes:

Dados Adicionais

N / D

feature

Comentários muito úteis

FWIW: _Agora_ basta adicionar aws-sdk como devDependency . Ele será excluído automaticamente e porque o tempo de execução do AWS Lambda Node.JS tem o aws-sdk incorporado, seu Lambda ainda deve funcionar (o meu funcionou :))

Todos 3 comentários

Ei @davepwsmith obrigado por abrir 👍

Você pode usar as regras exclude / include para definir globs que descreverão o que deve ser excluído/incluído em seu pacote de implantação (consulte: https://serverless.com/framework/docs/providers /aws/guide/packaging#exclude--include).

Também estamos trabalhando no #2709, que pode estar relacionado.

FWIW: _Agora_ basta adicionar aws-sdk como devDependency . Ele será excluído automaticamente e porque o tempo de execução do AWS Lambda Node.JS tem o aws-sdk incorporado, seu Lambda ainda deve funcionar (o meu funcionou :))

@ChristianUlbrich Obrigado por compartilhar!
Acabei de cortar 9mb do tamanho do pacote com a mudança de aws-sdk para devDependency 🔥

Esta página foi útil?
0 / 5 - 0 avaliações