AWS Lambda
Guia do desenvolvedor

Pacote de implantação do AWS Lambda no Go

Para criar uma função do Lambda, primeiro você precisa criar um pacote de implantação da função do Lambda, um arquivo .zip consistindo em seu código e todas as dependências.

Depois de criar um pacote de implantação, você pode fazer upload dele diretamente ou fazer upload do arquivo .zip primeiro em um bucket do Amazon S3 na mesma região da AWS onde deseja criar a função do Lambda e, em seguida, especificar o nome do bucket e da chave do objeto ao criar a função do Lambda usando o console ou a CLI da AWS.

Para funções do Lambda escritas em Go, faça download da biblioteca do Lambda para Go, navegando até o diretório de tempo de execução do Go e insira o seguinte comando: go get github.com/aws/aws-lambda-go/lambda

Em seguida, use o comando a seguir para compilar, empacotar e implantar uma função do Lambda Go por meio da CLI. Observe que o nome da função deve corresponder ao nome de seu Lambdamanipulador do .

GOOS=linux go build lambda_handler.go zip handler.zip ./lambda_handler # --handler is the path to the executable inside the .zip aws lambda create-function \ --region region \ --function-name lambda-handler \ --memory 128 \ --role arn:aws:iam::account-id:role/execution_role \ --runtime go1.x \ --zip-file fileb://path-to-your-zip-file/handler.zip \ --handler lambda-handler

nota

Se estiver usando um ambiente não Linux, como Windows ou macOS, verifique se a função de manipulador é compatível com o Contexto de execução do Lambda configurando a variável de ambiente GOOS (sistema operacional Go) como "linux" ao compilar o código de sua função de manipulador.

Criar um pacote de implantação no Windows

Para criar um .zip que funcione no AWS Lambda usando o Windows, recomendamos instalar a ferramenta build-lambda-zip.

nota

Se ainda não tiver feito isso, você precisará instalar o Git e, em seguida, adicionar o executável git à variável de ambiente %PATH% do Windows.

Para fazer download do cliente, execute o comando a seguir:

go.exe get -u github.com/aws/aws-lambda-go/cmd/build-lambda-zip

Use a ferramenta em seu GOPATH. Se você tiver uma instalação padrão do Go, a ferramenta geralmente estará em %USERPROFILE%\Go\bin. Caso contrário, navegue até o local onde o tempo de execução do Go foi instalado e faça o seguinte:

Em cmd.exe, execute o seguinte:

set GOOS=linux go build -o main main.go %USERPROFILE%\Go\bin\build-lambda-zip.exe -o main.zip main

No Powershell, execute o seguinte:

$env:GOOS = "linux" go build -o main main.go ~\Go\Bin\build-lambda-zip.exe -o main.zip main