Skip to content

Conversation

@richardgetz
Copy link

@richardgetz richardgetz commented Nov 18, 2025

Which issue(s) does this change fix?

Why is this change necessary?

  • Deployments with many Lambda/image artifacts currently serialize all uploads, which can take minutes on larger
    stacks. Allowing users to opt into parallel uploads lets them shorten the pre-deploy packaging phase when
    bandwidth and CPU permit.

How does it address the issue?

  • Adds a --parallel-upload flag (and guided/config plumbing) so sam deploy runs the packaging phase with concurrent
    S3/ECR uploads.
  • Reworks Template.export to submit resource uploads to a ThreadPoolExecutor, sharing a thread-safe deduplication
    cache and guarding the ECR uploader’s login state.
  • Propagates the flag through PackageContext/DeployContext, CLI telemetry output, and schema/config metadata.

What side effects does this change have?

  • When enabled, artifact uploads will consume more CPU/network in exchange for faster completion. Default behavior
    remains the same (serial uploads) unless the flag/config setting is used.

Mandatory Checklist

PRs will only be reviewed after checklist is complete

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

@github-actions github-actions bot added area/package sam package command area/deploy sam deploy command area/schema JSON schema file pr/external stage/needs-triage Automatically applied to new issues and PRs, indicating they haven't been looked at. labels Nov 18, 2025
@richardgetz richardgetz marked this pull request as ready for review November 18, 2025 23:16
@richardgetz richardgetz requested a review from a team as a code owner November 18, 2025 23:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area/deploy sam deploy command area/package sam package command area/schema JSON schema file pr/external stage/needs-triage Automatically applied to new issues and PRs, indicating they haven't been looked at.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant