feat: support per-runner-flavor SQS batch size and window in multi_runner_config#5108
feat: support per-runner-flavor SQS batch size and window in multi_runner_config#5108Copilot wants to merge 6 commits into
Conversation
Dependency Review✅ No vulnerabilities or license issues or OpenSSF Scorecard issues found.Scanned FilesNone |
|
@Brend-Smits can you please review this PR? |
|
@copilot resolve the merge conflicts in this pull request |
There was a problem hiding this comment.
Pull request overview
This PR adds per-runner-flavor overrides for SQS event source mapping tuning in the multi-runner module, allowing mixed runner fleets to use different Lambda batching behavior without changing global defaults.
Changes:
- Extends
multi_runner_config.runner_configwith per-flavor optional overrides forlambda_event_source_mapping_batch_sizeandlambda_event_source_mapping_maximum_batching_window_in_seconds. - Updates the per-flavor
module "runners"wiring tocoalesce(per_flavor_override, module_level_default)for both settings. - Regenerates/updates
modules/multi-runnerdocs to reflect the new fields.
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
modules/multi-runner/variables.tf |
Adds optional per-flavor batch size/window fields to the runner_config object type and documents them in the multi_runner_config heredoc. |
modules/multi-runner/runners.tf |
Applies per-flavor overrides via coalesce() when passing event source mapping settings into the runners module. |
modules/multi-runner/README.md |
Updates the generated inputs documentation to include the new per-flavor configuration options. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
4cddd3c to
aaa109f
Compare
…nner_config Add sqs_batch_size and sqs_batch_window fields to multi_runner_config, allowing per-runner-flavor configuration of SQS event source mapping batch settings. Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
aaa109f to
757a59a
Compare
|
@Brend-Smits this PR is removing the |
Good catch, thanks. Must have done something wrong when merging. |
|
@copilot resolve the merge conflicts in this pull request |
…atch-size-window-config # Conflicts: # modules/multi-runner/README.md
Merged |
Description
lambda_event_source_mapping_batch_sizeandlambda_event_source_mapping_maximum_batching_window_in_secondsare module-level variables applied identically to every runner flavor. Deployments with mixed load profiles (e.g. 1000-runner high-volume vs 10-runner low-volume) need per-flavor tuning to avoid unnecessary latency, wasted SSM throughput, and GitHub API rate limit pressure on low-volume flavors.Adds both as
optional(number, null)fields inmulti_runner_config.runner_config, withcoalesce()fallback to the existing module-level variables. Follows the established pattern used byscale_up_reserved_concurrent_executions.Changes:
modules/multi-runner/variables.tf— new optional fields in therunner_configobject type + descriptions; restorediam_overridesfields accidentally dropped during mergemodules/multi-runner/runners.tf—coalesce(per_flavor, module_level)for both parameters; restorediam_overrideswiringmodules/multi-runner/README.md— regenerated with terraform-docs to reflect all changes; kept in sync with latestmainUsage:
Fully backwards compatible. Existing configs require no changes.
Test Plan
terraform fmt(clean)iam_overridesis fully restored inrunner_configobject type, heredoc description, standalone variable, andrunners.tfwiringmainand regenerated README; no remaining conflictsRelated Issues