Description
Is there an existing issue for this?
- I have searched the existing issues
Current Behavior
We have a localstack setup that works with macbook with intel cpu but fails with m1.
lambda invoke response:
https://github.com/fermanjj/localstack-test
{
"StatusCode": 200,
"FunctionError": "Unhandled",
"LogResult": "",
"ExecutedVersion": "$LATEST"
}
lambda is a Rust binary with provided.al2 runtime. The binary is built with Linux X86-64 architectures cargo-lambda lambda build
If we specify the --arm64 for the build and --architectures arm64 in the cli create-function command then the lambda fails on the intel mac too.
Expected Behavior
invoking the lambda successfully succeeds
lambda invoke response:
{
"body": ".",
"headers": {
"content-type": "text/plain"
},
"isBase64Encoded": false,
"multiValueHeaders": {
"content-type": [
"text/plain"
]
},
"statusCode": 200
}
How are you starting LocalStack?
With a docker-compose file
Steps To Reproduce
Recreatable code:
https://github.com/fermanjj/localstack-test
./run.sh
Environment
- OS with M1 Processor:12.6
- LocalStack: localstack/localstack-pro:latest
- OS with Intel Processor: 13.2.1
Anything else?
2023-03-09 15:53:22 localstack-test | 2023-03-09T20:53:21.835 WARN --- [ asgi_gw_2] localstack.aws.accounts : Ignoring production AWS credentials provided to LocalStack. Falling back to default account ID.
2023-03-09 15:53:22 localstack-test | 2023-03-09T20:53:21.841 DEBUG --- [uest_thread)] l.s.awslambda.lambda_api : Running lambda arn:aws:lambda:us-east-1:000000000000:function:test
2023-03-09 15:53:22 localstack-test | 2023-03-09T20:53:21.841 INFO --- [uest_thread)] l.s.a.lambda_executors : Running lambda: arn:aws:lambda:us-east-1:000000000000:function:test
2023-03-09 15:53:22 localstack-test | 2023-03-09T20:53:21.842 DEBUG --- [uest_thread)] l.s.a.lambda_extended : Putting invocation event (request ID f487f25b) for Lambda 'arn:aws:lambda:us-east-1:000000000000:function:test' to queue
2023-03-09 15:53:22 localstack-test | 2023-03-09T20:53:21.842 DEBUG --- [uest_thread)] l.s.a.lambda_launcher : Executing docker separate execution hook for function arn:aws:lambda:us-east-1:000000000000:function:test
2023-03-09 15:53:22 localstack-test | 2023-03-09T20:53:21.950 DEBUG --- [uest_thread)] l.u.c.container_client : Getting the entrypoint for image: localstack/lambda:provided.al2
2023-03-09 15:53:22 localstack-test | 2023-03-09T20:53:21.955 DEBUG --- [uest_thread)] l.u.c.docker_sdk_client : Creating container with attributes: {'mount_volumes': None, 'ports': <PortMappings: {}>, 'cap_add': ['NET_ADMIN'], 'cap_drop': None, 'security_opt': None, 'dns': '127.0.0.1', 'additional_flags': '', 'workdir': None, 'privileged': None, 'labels': None, 'command': 'bootstrap', 'detach': False, 'entrypoint': '/tmp/ad2f5444.sh', 'env_vars': {'AWS_ACCESS_KEY_ID': 'test', 'AWS_SECRET_ACCESS_KEY': 'test', 'AWS_REGION': 'us-east-1', 'DOCKER_LAMBDA_USE_STDIN': '1', 'LOCALSTACK_HOSTNAME': '172.24.0.2', 'AWS_ENDPOINT_URL': 'http://172.24.0.2:4566', 'EDGE_PORT': '443', '_HANDLER': 'bootstrap', 'AWS_LAMBDA_FUNCTION_TIMEOUT': '3', 'AWS_LAMBDA_FUNCTION_NAME': 'test', 'AWS_LAMBDA_FUNCTION_VERSION': '$LATEST', 'AWS_LAMBDA_FUNCTION_INVOKED_ARN': 'arn:aws:lambda:us-east-1:000000000000:function:test', 'LOCALSTACK_DEBUG': '1', 'AWS_LAMBDA_FUNCTION_MEMORY_SIZE': 1536, '_LAMBDA_RUNTIME': 'provided.al2', 'AWS_LAMBDA_LOG_GROUP_NAME': '/aws/lambda/test', 'AWS_LAMBDA_LOG_STREAM_NAME': 'test', 'AWS_LAMBDA_RUNTIME_API': 'test.us-east-1.localhost.localstack.cloud:4566', 'LOCALSTACK_HOSTS_ENTRY': 'test.us-east-1.localhost.localstack.cloud'}, 'image_name': 'localstack/lambda:provided.al2', 'interactive': True, 'name': None, 'network': 'localstack-test_default', 'platform': None, 'remove': True, 'self': <localstack.utils.container_utils.docker_sdk_client.SdkDockerClient object at 0xffffb4a97370>, 'tty': False, 'user': 'root'}
2023-03-09 15:53:22 localstack-test | 2023-03-09T20:53:21.981 DEBUG --- [uest_thread)] l.u.c.docker_sdk_client : Copying file /tmp/function.zipfile.715678e2/. into 314301750cd67996095a4ffed86f14cb861cd3c35b5000bc248d5a597e857f35:/var/task
2023-03-09 15:53:22 localstack-test | 2023-03-09T20:53:22.101 DEBUG --- [uest_thread)] l.u.c.docker_sdk_client : Copying file /var/lib/localstack/tmp/ad2f5444.sh into 314301750cd67996095a4ffed86f14cb861cd3c35b5000bc248d5a597e857f35:/tmp/ad2f5444.sh
2023-03-09 15:53:22 localstack-test | 2023-03-09T20:53:22.156 DEBUG --- [uest_thread)] l.u.c.docker_sdk_client : Starting container 314301750cd67996095a4ffed86f14cb861cd3c35b5000bc248d5a597e857f35
2023-03-09 15:53:22 localstack-test | 2023-03-09T20:53:22.374 DEBUG --- [uest_thread)] l.s.a.lambda_extended : Waiting for Lambda invocation result of request ID f487f25b
2023-03-09 15:53:25 localstack-test | 2023-03-09T20:53:25.376 ERROR --- [uest_thread)] l.s.a.lambda_extended : Unable to invoke Lambda "arn:aws:lambda:us-east-1:000000000000:function:test":
2023-03-09 15:53:25 localstack-test | Traceback (most recent call last):
2023-03-09 15:53:25 localstack-test | File "/opt/code/localstack/.venv/lib/python3.10/site-packages/localstack_ext/services/awslambda/lambda_extended.py.enc", line 302, in do_run_lambda_executor
2023-03-09 15:53:25 localstack-test | File "/usr/local/lib/python3.10/queue.py", line 179, in get
2023-03-09 15:53:25 localstack-test | raise Empty
2023-03-09 15:53:25 localstack-test | _queue.Empty
2023-03-09 15:53:25 localstack-test | 2023-03-09T20:53:25.383 DEBUG --- [uest_thread)] l.s.a.lambda_extended : Log output for invocation of Lambda "test":
2023-03-09 15:53:25 localstack-test | 2023-03-09T20:53:25.398 DEBUG --- [uest_thread)] l.u.c.docker_sdk_client : Removing container: 314301750cd67996095a4ffed86f14cb861cd3c35b5000bc248d5a597e857f35
2023-03-09 15:53:25 localstack-test | 2023-03-09T20:53:25.417 INFO --- [uest_thread)] l.s.awslambda.lambda_api : Error executing Lambda function arn:aws:lambda:us-east-1:000000000000:function:test: Timeout - Lambda container did not report result after 3 secs Traceback (most recent call last):
2023-03-09 15:53:25 localstack-test | File "/opt/code/localstack/.venv/lib/python3.10/site-packages/localstack_ext/services/awslambda/lambda_extended.py.enc", line 302, in do_run_lambda_executor
2023-03-09 15:53:25 localstack-test | File "/usr/local/lib/python3.10/queue.py", line 179, in get
2023-03-09 15:53:25 localstack-test | raise Empty
2023-03-09 15:53:25 localstack-test | _queue.Empty
2023-03-09 15:53:25 localstack-test |
2023-03-09 15:53:25 localstack-test | During handling of the above exception, another exception occurred:
2023-03-09 15:53:25 localstack-test |
2023-03-09 15:53:25 localstack-test | Traceback (most recent call last):
2023-03-09 15:53:25 localstack-test | File "/opt/code/localstack/localstack/services/awslambda/lambda_api.py", line 462, in run_lambda
2023-03-09 15:53:25 localstack-test | result = LAMBDA_EXECUTOR.execute(
2023-03-09 15:53:25 localstack-test | File "/opt/code/localstack/.venv/lib/python3.10/site-packages/localstack_ext/services/awslambda/lambda_extended.py.enc", line 350, in execute_local_executor
2023-03-09 15:53:25 localstack-test | File "/opt/code/localstack/localstack/services/awslambda/lambda_executors.py", line 494, in execute
2023-03-09 15:53:25 localstack-test | return do_execute()
2023-03-09 15:53:25 localstack-test | File "/opt/code/localstack/localstack/services/awslambda/lambda_executors.py", line 484, in do_execute
2023-03-09 15:53:25 localstack-test | return _run(func_arn=func_arn)
2023-03-09 15:53:25 localstack-test | File "/opt/code/localstack/localstack/utils/cloudwatch/cloudwatch_util.py", line 183, in wrapped
2023-03-09 15:53:25 localstack-test | raise e
2023-03-09 15:53:25 localstack-test | File "/opt/code/localstack/localstack/utils/cloudwatch/cloudwatch_util.py", line 179, in wrapped
2023-03-09 15:53:25 localstack-test | result = func(*args, **kwargs)
2023-03-09 15:53:25 localstack-test | File "/opt/code/localstack/localstack/services/awslambda/lambda_executors.py", line 471, in _run
2023-03-09 15:53:25 localstack-test | raise e
2023-03-09 15:53:25 localstack-test | File "/opt/code/localstack/localstack/services/awslambda/lambda_executors.py", line 467, in _run
2023-03-09 15:53:25 localstack-test | result = self._execute(lambda_function, inv_context)
2023-03-09 15:53:25 localstack-test | File "/opt/code/localstack/localstack/services/awslambda/lambda_executors.py", line 790, in _execute
2023-03-09 15:53:25 localstack-test | result = self.run_lambda_executor(lambda_function=lambda_function, inv_context=inv_context)
2023-03-09 15:53:25 localstack-test | File "/opt/code/localstack/.venv/lib/python3.10/site-packages/localstack_ext/services/awslambda/lambda_extended.py.enc", line 346, in run_lambda_executor
2023-03-09 15:53:25 localstack-test | File "/opt/code/localstack/.venv/lib/python3.10/site-packages/localstack_ext/services/awslambda/lambda_extended.py.enc", line 295, in run_lambda_executor
2023-03-09 15:53:25 localstack-test | File "/opt/code/localstack/.venv/lib/python3.10/site-packages/localstack_ext/services/awslambda/lambda_extended.py.enc", line 306, in do_run_lambda_executor
2023-03-09 15:53:25 localstack-test | localstack.services.awslambda.lambda_executors.InvocationException: Timeout - Lambda container did not report result after 3 secs
2023-03-09 15:53:25 localstack-test |
2023-03-09 15:53:25 localstack-test | 2023-03-09T20:53:25.417 DEBUG --- [uest_thread)] l.s.awslambda.lambda_api : Lambda invocation duration: 3576.09ms
2023-03-09 15:53:25 localstack-test | 2023-03-09T20:53:25.418 INFO --- [ asgi_gw_2] localstack.request.aws : AWS lambda.Invoke => 200