You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
There are a handful of minor snags to migrating this project:
glibc library version mismatch between the development and runtime environments. The Goreleaser config file already disables CGO (build: disable CGO #12), so it seems safe to do the same in the makefile.
the provided.al2 runtime requires a specific executable name: the handler executable must be called bootstrap
the runtime also requires bootstrap to be placed in one of two specific locations: either /var/run/task (the Lambda package itself) or /opt (a Lambda layer). As currently packaged, the executable is placed in a bin/ subdirectory, which the runtime will not execute, even if the Lambda configuration attempts to reference it exactly.
For the last problem, I tested out the idea of using the makefile to generate the zip file — without the bin/ prefix — and then using the artifact attribute in the serverless config to have the deploy step use that zip instead of packaging up a new one. Alternatively we could have make dump the bootstrap binary directly into the project root and let serverless continue to handle packaging.
The text was updated successfully, but these errors were encountered:
drocco007
added a commit
to drocco007/ecs-drain-lambda
that referenced
this issue
Aug 29, 2023
Update the service runtime ahead of the deprecation of the go1.x runtime by
AWS.
* disable CGO during build to avoid glibc version mismatch
* rename the executable `bootstrap` and place it in the task root directory
as required by the new runtime
Closesgetsocial-rnd#15
Update the service runtime ahead of the deprecation of the go1.x runtime by
AWS.
* disable CGO during build to avoid glibc version mismatch
* rename the executable `bootstrap` and place it in the task root directory
as required by the new runtime
Closes#15
Hi. AWS is deprecating the Go 1.x Lambda runtime and requiring Go-based Lambdas to use the provided.al2 runtime instead.
There are a handful of minor snags to migrating this project:
CGO
(build: disable CGO #12), so it seems safe to do the same in the makefile.bootstrap
bootstrap
to be placed in one of two specific locations: either/var/run/task
(the Lambda package itself) or/opt
(a Lambda layer). As currently packaged, the executable is placed in abin/
subdirectory, which the runtime will not execute, even if the Lambda configuration attempts to reference it exactly.For the last problem, I tested out the idea of using the makefile to generate the zip file — without the
bin/
prefix — and then using theartifact
attribute in the serverless config to have the deploy step use that zip instead of packaging up a new one. Alternatively we could have make dump thebootstrap
binary directly into the project root and let serverless continue to handle packaging.The text was updated successfully, but these errors were encountered: