Estoy aprendiendo a crear lambdas en aws. Estoy siguiendo este tutorial oficial .
Los comandos que ejecuto:
sam init (valores predeterminados para todo, elijo la plantilla 8 - backend de la aplicación web)
cd sam-app
sam build
La salida que obtengo es:
Building codeuri: /home/sam-app runtime: nodejs14.x metadata: {} functions: ['getAllItemsFunction', 'getByIdFunction', 'putItemFunction'] Running NodejsNpmBuilder:NpmPack Build Failed Error: NodejsNpmBuilder:NpmPack - NPM Failed: npm ERR! code Z_DATA_ERROR npm ERR! errno -3 npm ERR! zlib: invalid distance too far back npm ERR! A complete log of this run can be found in: npm ERR! /home/username/.npm/_logs/2021-05-20T14_02_59_425Z-debug.log versión del nodo: 16.2.0
versión npm: 7.13.0
versión sam: 1.23.0
versión zlib: 1:1.2.11-4
No estoy modificando ningún archivo, todos son generados por sam.
Intenta construir esto en un contenedor. Usa sam build -u
Esto funcionó para mí, pero no estoy seguro de por qué no funcionaría sin esto.
Tuve el mismo problema en wsl2, lo resolví instalando una versión más nueva de nodejs (v14.17.1) con nvm https://docs.microsoft.com/en-us/windows/dev-environment/javascript/nodejs- en wsl https://github.com/nvm-sh/nvm#git-install
Tal vez en su archivo de template , podría estar usando el siguiente tipo
Type: AWS::Lambda::Function
Si ese es el caso, cambie el tipo a debajo de uno
Type: AWS::Serverless::Function