Skip to content

Add support for ARM64 architecture#2175

Open
ubaskota wants to merge 2 commits into
aws:masterfrom
ubaskota:chalice_arch_update
Open

Add support for ARM64 architecture#2175
ubaskota wants to merge 2 commits into
aws:masterfrom
ubaskota:chalice_arch_update

Conversation

@ubaskota
Copy link
Copy Markdown

Issue #, if available: #1808

Description of changes:
Adds a lambda_architecture configuration option (supports x86_64 and arm64) that can be set in config.json. When set to arm64, Chalice downloads aarch64-compatible wheels during packaging, passes Architectures: ['arm64'] to the Lambda API on create/update, and emits the correct attribute in generated SAM and Terraform templates.

Usage:

{
  "lambda_architecture": "arm64"
}

Supports global, per-stage, and per-function configuration. Defaults to x86_64.

Testing:

  • Added unit and functional tests to validate the changes
  • Manually deployed with chalice deploy using a numpy dependency and verified the function runs correctly on Graviton. Numpy was chosen because it contains architecture-specific C extensions that will fail to load if the wrong platform's wheel is bundled.
  • Generated and deployed a SAM template; confirmed Architectures: ["arm64"] is present and the function executes successfully
  • Generated and deployed a Terraform template; confirmed architectures: ["arm64"] is present and the function executes successfully

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant