Skip to content

Commit 4a6037f

Browse files
committed
fix: use native Graviton instances for arm64 builds (no QEMU)
QEMU emulation is unreliable for arm64 packages with C extensions (numpy, Pillow, cryptography, etc.) - processes hang or produce incorrect binaries. Changes: - Launch one native EC2 Spot instance per requested architecture - x86_64 builds: c5.xlarge (existing launch template) - arm64 builds: c7g.xlarge Graviton (new arm64 launch template + AL2023 arm64 AMI) - Each instance builds only its native architecture and uploads to S3 under the same build_id - DynamoDB tracks completion with atomic pending_arches counter (ADD -1) and arch_s3_keys StringSet; last instance to finish sets COMPLETED - Remove QEMU setup from user-data (not needed for native builds) - Add ec2_arm64_instance_type variable (default: c7g.xlarge) - Add LAUNCH_TEMPLATE_ID_ARM64 env var to process_build Lambda
1 parent c93091c commit 4a6037f

5 files changed

Lines changed: 287 additions & 168 deletions

File tree

0 commit comments

Comments
 (0)