Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
36 commits
Select commit Hold shift + click to select a range
5c23012
feat: Add feature to enable dynamic instance types via workflow labels
npalm Apr 8, 2025
6be3726
docs: auto update terraform docs
Apr 8, 2025
4c1f2fa
feat: allow to use dynamic instance type in multiple events
edersonbrilhante Jan 19, 2026
e485239
style: fix format
edersonbrilhante Jan 19, 2026
2c2ec39
fix: add dynamic labels as runner labels
edersonbrilhante Jan 19, 2026
886412f
test: add tests for dynamic labels
edersonbrilhante Jan 19, 2026
f7fc866
fix: wire enable_dynamic_ec2_config
edersonbrilhante Jan 19, 2026
5f56ef9
fix: fix runner owner logic
edersonbrilhante Jan 19, 2026
0c026d7
chore: decrease log level for some logs
edersonbrilhante Jan 19, 2026
e93e296
style: fix format issues
edersonbrilhante Jan 19, 2026
079ecee
feat: add support for all fields in FleetLaunchTemplateOverridesRequest
edersonbrilhante Jan 20, 2026
d478870
style: fix formatting issues
edersonbrilhante Jan 20, 2026
6561720
fix: convert instanceTypes to constant
edersonbrilhante Jan 20, 2026
6c94342
test: fix test cases
edersonbrilhante Jan 20, 2026
1460582
fix: fix imports
edersonbrilhante Jan 20, 2026
3c4a197
docs: update function docs for parseEc2OverrideConfig
edersonbrilhante Jan 20, 2026
c65665f
feat: allow use any dynamic label with prefix ghr-
edersonbrilhante Jan 30, 2026
f808607
style: fix formatting
edersonbrilhante Jan 30, 2026
bdb86f4
docs: auto update terraform docs
github-actions[bot] Jan 30, 2026
e02c418
fix: fix wrong variable
edersonbrilhante Jan 30, 2026
ce82eb1
fix: replace old envvar for new envvar
edersonbrilhante Jan 30, 2026
5742c07
style: fix tflint
edersonbrilhante Jan 30, 2026
e810cec
fix: fix envvar in dispatcher
edersonbrilhante Mar 9, 2026
b49cd27
test: remove wrong tests
edersonbrilhante Mar 9, 2026
9192bd0
docs: add documentation and mask as experimental
edersonbrilhante Mar 10, 2026
b8a3c42
docs: update variable description
edersonbrilhante Mar 10, 2026
e528373
docs: auto update terraform docs
github-actions[bot] Mar 10, 2026
e67a37e
docs: auto update terraform docs
github-actions[bot] Mar 11, 2026
f6dc7e3
test dynamic labels
npalm Mar 17, 2026
41d5466
test dynamic labels
npalm Mar 17, 2026
8f7089c
Merge branch 'main' into feat-ec2-dynamic-config
edersonbrilhante Mar 30, 2026
c39c74a
Merge branch 'main' into feat-ec2-dynamic-config
npalm Apr 9, 2026
f361d92
Update docs/configuration.md
edersonbrilhante Apr 11, 2026
cb083ce
feat: add sanitize function dynamic labels
edersonbrilhante Apr 11, 2026
596a84c
docs: auto update terraform docs
github-actions[bot] Apr 11, 2026
eca2581
style: fix format issue
edersonbrilhante Apr 11, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -121,6 +121,7 @@ Join our discord community via [this invite link](https://discord.gg/bxgXW8jJGh)
| <a name="input_disable_runner_autoupdate"></a> [disable\_runner\_autoupdate](#input\_disable\_runner\_autoupdate) | Disable the auto update of the github runner agent. Be aware there is a grace period of 30 days, see also the [GitHub article](https://github.blog/changelog/2022-02-01-github-actions-self-hosted-runners-can-now-disable-automatic-updates/) | `bool` | `false` | no |
| <a name="input_enable_ami_housekeeper"></a> [enable\_ami\_housekeeper](#input\_enable\_ami\_housekeeper) | Option to disable the lambda to clean up old AMIs. | `bool` | `false` | no |
| <a name="input_enable_cloudwatch_agent"></a> [enable\_cloudwatch\_agent](#input\_enable\_cloudwatch\_agent) | Enables the cloudwatch agent on the ec2 runner instances. The runner uses a default config that can be overridden via `cloudwatch_config`. | `bool` | `true` | no |
| <a name="input_enable_dynamic_labels"></a> [enable\_dynamic\_labels](#input\_enable\_dynamic\_labels) | Experimental! Can be removed / changed without trigger a major release. Enable dynamic EC2 configs based on workflow job labels. When enabled, jobs can request specific configs via the 'gh-ec2-<config type key>:<config type value>' label (e.g., 'gh-ec2-instance-type:t3.large'). When enabled, labels starting with `ghr-` are ignored during webhook label matching. | `bool` | `false` | no |
| <a name="input_enable_ephemeral_runners"></a> [enable\_ephemeral\_runners](#input\_enable\_ephemeral\_runners) | Enable ephemeral runners, runners will only be used once. | `bool` | `false` | no |
| <a name="input_enable_jit_config"></a> [enable\_jit\_config](#input\_enable\_jit\_config) | Overwrite the default behavior for JIT configuration. By default JIT configuration is enabled for ephemeral runners and disabled for non-ephemeral runners. In case of GHES check first if the JIT config API is available. In case you are upgrading from 3.x to 4.x you can set `enable_jit_config` to `false` to avoid a breaking change when having your own AMI. | `bool` | `null` | no |
| <a name="input_enable_job_queued_check"></a> [enable\_job\_queued\_check](#input\_enable\_job\_queued\_check) | Only scale if the job event received by the scale up lambda is in the queued state. By default enabled for non ephemeral runners and disabled for ephemeral. Set this variable to overwrite the default behavior. | `bool` | `null` | no |
Expand Down Expand Up @@ -193,7 +194,7 @@ Join our discord community via [this invite link](https://discord.gg/bxgXW8jJGh)
| <a name="input_runner_disable_default_labels"></a> [runner\_disable\_default\_labels](#input\_runner\_disable\_default\_labels) | Disable default labels for the runners (os, architecture and `self-hosted`). If enabled, the runner will only have the extra labels provided in `runner_extra_labels`. In case you on own start script is used, this configuration parameter needs to be parsed via SSM. | `bool` | `false` | no |
| <a name="input_runner_ec2_tags"></a> [runner\_ec2\_tags](#input\_runner\_ec2\_tags) | Map of tags that will be added to the launch template instance tag specifications. | `map(string)` | `{}` | no |
| <a name="input_runner_egress_rules"></a> [runner\_egress\_rules](#input\_runner\_egress\_rules) | List of egress rules for the GitHub runner instances. | <pre>list(object({<br/> cidr_blocks = list(string)<br/> ipv6_cidr_blocks = list(string)<br/> prefix_list_ids = list(string)<br/> from_port = number<br/> protocol = string<br/> security_groups = list(string)<br/> self = bool<br/> to_port = number<br/> description = string<br/> }))</pre> | <pre>[<br/> {<br/> "cidr_blocks": [<br/> "0.0.0.0/0"<br/> ],<br/> "description": null,<br/> "from_port": 0,<br/> "ipv6_cidr_blocks": [<br/> "::/0"<br/> ],<br/> "prefix_list_ids": null,<br/> "protocol": "-1",<br/> "security_groups": null,<br/> "self": null,<br/> "to_port": 0<br/> }<br/>]</pre> | no |
| <a name="input_runner_extra_labels"></a> [runner\_extra\_labels](#input\_runner\_extra\_labels) | Extra (custom) labels for the runners (GitHub). Separate each label by a comma. Labels checks on the webhook can be enforced by setting `enable_workflow_job_labels_check`. GitHub read-only labels should not be provided. | `list(string)` | `[]` | no |
| <a name="input_runner_extra_labels"></a> [runner\_extra\_labels](#input\_runner\_extra\_labels) | Extra (custom) labels for the runners (GitHub). Separate each label by a comma. Labels checks on the webhook can be enforced by setting `enable_workflow_job_labels_check`. GitHub read-only labels should not be provided. Note: labels starting with `ghr-` are ignored during webhook label matching when `enable_dynamic_labels` is enabled. | `list(string)` | `[]` | no |
| <a name="input_runner_group_name"></a> [runner\_group\_name](#input\_runner\_group\_name) | Name of the runner group. | `string` | `"Default"` | no |
| <a name="input_runner_hook_job_completed"></a> [runner\_hook\_job\_completed](#input\_runner\_hook\_job\_completed) | Script to be ran in the runner environment at the end of every job | `string` | `""` | no |
| <a name="input_runner_hook_job_started"></a> [runner\_hook\_job\_started](#input\_runner\_hook\_job\_started) | Script to be ran in the runner environment at the beginning of every job | `string` | `""` | no |
Expand Down
Loading
Loading