-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
PythonPipBuilder:ResolveDependencies errors on arm64, Incorrect Layer build behaviors #3747
Comments
Found some related issues/PRs in the lambda builder repo: @jfuss The latest version of the.builders was in use and I still hit this issue. |
Thanks for reporting this issue @brysontyrrell , For your layer build, you need to provide For the rest of the cases used following template;
And I used If i tried to build it on my Mac (which is an X86), it fails with following error;
Since To test this on an arm64 machine, I spun up a new EC2 instance with arm64 architecture, and tried to build it there. Since that machine is a linux/arm64, I am able to build it either running So regarding to your findings;
Please let us know if you have other questions or concerns. |
Patch is released in v1.104.0. Closing |
Note: this is another open issue on this build error #1840 but there have been no updates since December and there are other behaviors I'm noticing that are not a part of that issue.
Description:
I have a SAM template where I have defined the architecture at
arm64
for my functions and for my shared Lambda Layer.I am working on an Apple Silicon MacBook Pro (arm64 host).
I am installing a private package from CodeArtifact that has a dependency of
jsonschema
that has a dependency ofpyrsistent
.The Lambda Layer is configured to use the builder:
If I run
sam build
without a container and view the build files in.aws-sam/build
I can see that it compiled for x86 by some of the binaries that are present:pvectorc.cpython-39-x86_64-linux-gnu.so
. The layer's compatibility is clearly set forarm64
.I then tried to run the build in a container. The Layer pulled the
x86_64
image!I added the package to a requirements file for the Lambda function to compare. It did pull the
arm64
, but then it hit the following error:Error: PythonPipBuilder:ResolveDependencies - {pyrsistent==0.18.1(wheel)}
Running
sam build
without using a container yielded the same error.Switching the Lambda Function to use
x86_64
results in a successful build.I launched a container to test installing the package (
docker run --rm -it build-python3.9:latest-arm64
) and it did so without an issue.Here's a summary of the
sam build
issues:pyrsistent
dependency (error above) using the arm64 image or building on an arm64 host. This is NOT reproducible inside the arm64 image or on an arm64 host usingpip
directly.These issues have halted all attempts to migrate to Graviton for Lambda Functions with my group.
Additional environment details (Ex: Windows, Mac, Amazon Linux etc)
sam --version
: 1.40.1Add --debug flag to command you are running
The text was updated successfully, but these errors were encountered: