aws-samples / aws-lambda-extensions

A collection of sample extensions to help you get started with AWS Lambda Extensions
MIT No Attribution
445 stars 146 forks source link

Any example of Cross - Language External Extension #61

Closed nirav1911 closed 2 years ago

nirav1911 commented 2 years ago

I would like to see examples where the lambda extension is written in different language than the actual lambda function. Eg. Lambda extension written in Python and Lambda function in Java or vice versa. Is it possible? Are there any examples like that?

DmitryGulin commented 2 years ago

This repository has a couple of examples already, e.g.:

In general, you should be able to use any programming language, that would create an executable for x64 or ARM64 Linux platform, to build a runtime independent extension.

jledesma-opsguru commented 1 year ago

Hi folks. @DmitryGulin @nirav1911 I know this post is already closed, but I would like to know if there is possible to create an extension (in python) that could be invoked from inside of a lambda (in go) passing a payload and expecting a response. I was thinking in something similar to the SSM layer that could be invoked using an endpoint.

DmitryGulin commented 1 year ago

@jledesma-opsguru , yes, you should be able to create an extension that would listen to an endpoint, so that Lambda code can communicate with it. Keep in mind, though, that .py and .pyc files will require Python runtime, which is not provided for a non-Python Lambda function. Thus, you'll have to either package runtime with your extension or find a way to compile Python scripts into an x64 or Arm64 Linux executable.