-
Notifications
You must be signed in to change notification settings - Fork 692
feat: add support to use placement group in launch template #4929
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
base: next
Are you sure you want to change the base?
feat: add support to use placement group in launch template #4929
Conversation
c50f557 to
03c78ee
Compare
| placement = optional(object({ | ||
| affinity = optional(string) | ||
| availability_zone = optional(string) | ||
| # group_id = try(placement.value.group_id, null) # aws >= 6.12.0 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why is the comment. Requiring a newer version of the provider?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The provider aws also allow to use group ID in placement, but only not in all versions. I left the commented so it can be added in the future. I can remove if is misleading
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I will release next week a new major version, including bump of aws provider, and update to node24. You could update the PR to merge in next instead of main.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Sure thing.
npalm
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good, small question
bea36d0 to
9f79d06
Compare
Description
This PR adds support for configuring EC2 placement groups for GitHub Actions runners in the multi-runner module. It plumbs a new placement option from the runner configuration through to the underlying EC2 runner module.
Details
Updated modules/multi-runner/runners.tf to pass placement = each.value.runner_config.placement into the runners module.
This allows specifying AWS placement groups for EC2 runners, enabling tighter control over instance placement.
The change is backwards compatible: if placement is unset in runner_config, behavior remains unchanged.
Motivation / Future work
Placement groups are a prerequisite for supporting macOS runners, which require a host_id.
A follow-up PR will add explicit macOS support leveraging this new placement wiring.