[MM-60556] Update Golang, server model, and lambda runtime #457
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
The first commit is just applying previously reviewed changes found in #453
The second commit is migrating from the deprecated go1.x lambda runtime to a supported one (using
provided.al2023
). I have been following https://aws.amazon.com/blogs/compute/migrating-aws-lambda-functions-from-the-go1-x-runtime-to-the-custom-runtime-on-amazon-linux-2/ plus some Golang specific changes, most notably the need for the binary to be calledbootstrap
hence some packaging modifications.This should also allow us to run the function on arm64 and likely reduce overall costs. I am not including this change in here, but it should be trivial to do later on.
So far I tested on a real lambda deployment using
make deploy-lambda
, which has been working okay. The idea is, once approved, to merge tomaster
, make sure everything looks good in staging, and then port toproduction
. After that, I'll try once more to add #455 on top.Ticket Link
https://mattermost.atlassian.net/browse/MM-60556