Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
Original file line number Diff line number Diff line change
Expand Up @@ -63,12 +63,6 @@ locals {
ec2_runner_specs = {
for size, spec in local.config.ec2_runner_specs :
size => {
ami_filter = {
name = [spec.ami_name],
state = ["available"],
}
ami_owners = [spec.ami_owner]
ami_kms_key_arn = spec.ami_kms_key_arn
runner_os = spec.runner_os
runner_architecture = spec.runner_architecture
runner_labels = [
Expand All @@ -83,36 +77,69 @@ locals {
"vpc:${local.vpc_alias}",
"tnt:${local.tenant_name}",
]
enable_userdata = true
enable_dynamic_labels = try(spec.enable_dynamic_labels, false)
aws_dynamic_labels_policy = try(spec.aws_dynamic_labels_policy, null)
lambda_event_source_mapping_batch_size = try(spec.lambda_event_source_mapping_batch_size, 10)
lambda_event_source_mapping_maximum_batching_window_in_seconds = try(spec.lambda_event_source_mapping_maximum_batching_window_in_seconds, 0)
redrive_build_queue = try(spec.redrive_build_queue, {})
runner_user = spec.runner_user
instance_target_capacity_type = "on-demand"
min_run_time = 30
max_instances = spec.max_instances
instance_types = spec.instance_types
placement = try(spec.placement, null)
license_specifications = try(spec.license_specifications, null)
use_dedicated_host = try(spec.use_dedicated_host, false)
vpc_id = try(spec.vpc_id, null)
subnet_ids = try(spec.subnet_ids, null)
block_device_mappings = [{
delete_on_termination = true
device_name = spec.volume.device_name
encrypted = true
iops = spec.volume.iops
kms_key_id = null
snapshot_id = null
throughput = spec.volume.throughput
volume_size = spec.volume.size
volume_type = spec.volume.type
}]
pool_config = spec.pool_config
pool_config = spec.pool_config
compute_provider = {
ec2 = {
metadata_options = {
http_endpoint = "enabled"
http_put_response_hop_limit = 2
http_tokens = "optional"
instance_metadata_tags = "enabled"
}
ami = {
filter = {
name = [spec.ami_name]
state = ["available"]
}
owners = [spec.ami_owner]
kms_key = trimspace(spec.ami_kms_key_arn) == "" ? null : {
arn = spec.ami_kms_key_arn
}
}
create_service_linked_role_spot = true
cloudwatch_agent = {
enabled = true
}
binaries_syncer = {
enabled = false
}
detailed_monitoring_enabled = true
ssm_enabled = true
user_data = {
enabled = true
}
instance_target_capacity_type = "on-demand"
instance_types = spec.instance_types
placement = try(spec.placement, null)
license_specifications = try(spec.license_specifications, null)
use_dedicated_host = try(spec.use_dedicated_host, false)
vpc_id = try(spec.vpc_id, null)
subnet_ids = try(spec.subnet_ids, null)
scale_errors = try(spec.scale_errors, null)
block_device_mappings = [{
delete_on_termination = true
device_name = spec.volume.device_name
encrypted = true
iops = spec.volume.iops
kms_key_id = null
snapshot_id = null
throughput = spec.volume.throughput
volume_size = spec.volume.size
volume_type = spec.volume.type
}]
}
}
}
}

arc_cluster_name = local.config.arc_cluster_name
migrate_arc_cluster = local.config.migrate_arc_cluster

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
locals {
github_runner_module_source = get_env("GITHUB_RUNNER_MODULE_SOURCE", "git::https://github.com/github-aws-runners/terraform-aws-github-runner.git//modules/multi-runner?ref=v7.8.0")
github_runner_module_source = get_env("GITHUB_RUNNER_MODULE_SOURCE", "git::https://github.com/github-aws-runners/terraform-aws-github-runner.git//modules/multi-runner?ref=v7.10.1")
}

generate "github_runner_source_override" {
Expand Down
79 changes: 53 additions & 26 deletions examples/templates/platform/tenant/runner_settings.hcl
Original file line number Diff line number Diff line change
Expand Up @@ -63,12 +63,6 @@ locals {
ec2_runner_specs = {
for size, spec in local.config.ec2_runner_specs :
size => {
ami_filter = {
name = [spec.ami_name],
state = ["available"],
}
ami_owners = [spec.ami_owner]
ami_kms_key_arn = spec.ami_kms_key_arn
runner_os = spec.runner_os
runner_architecture = spec.runner_architecture
runner_labels = [
Expand All @@ -83,36 +77,69 @@ locals {
"vpc:${local.vpc_alias}",
"tnt:${local.tenant_name}",
]
enable_userdata = true
enable_dynamic_labels = try(spec.enable_dynamic_labels, false)
aws_dynamic_labels_policy = try(spec.aws_dynamic_labels_policy, null)
lambda_event_source_mapping_batch_size = try(spec.lambda_event_source_mapping_batch_size, 10)
lambda_event_source_mapping_maximum_batching_window_in_seconds = try(spec.lambda_event_source_mapping_maximum_batching_window_in_seconds, 0)
redrive_build_queue = try(spec.redrive_build_queue, {})
runner_user = spec.runner_user
instance_target_capacity_type = "on-demand"
min_run_time = 30
max_instances = spec.max_instances
instance_types = spec.instance_types
placement = try(spec.placement, null)
license_specifications = try(spec.license_specifications, null)
use_dedicated_host = try(spec.use_dedicated_host, false)
vpc_id = try(spec.vpc_id, null)
subnet_ids = try(spec.subnet_ids, null)
block_device_mappings = [{
delete_on_termination = true
device_name = spec.volume.device_name
encrypted = true
iops = spec.volume.iops
kms_key_id = null
snapshot_id = null
throughput = spec.volume.throughput
volume_size = spec.volume.size
volume_type = spec.volume.type
}]
pool_config = spec.pool_config
pool_config = spec.pool_config
compute_provider = {
ec2 = {
metadata_options = {
http_endpoint = "enabled"
http_put_response_hop_limit = 2
http_tokens = "optional"
instance_metadata_tags = "enabled"
}
ami = {
filter = {
name = [spec.ami_name]
state = ["available"]
}
owners = [spec.ami_owner]
kms_key = trimspace(spec.ami_kms_key_arn) == "" ? null : {
arn = spec.ami_kms_key_arn
}
}
create_service_linked_role_spot = true
cloudwatch_agent = {
enabled = true
}
binaries_syncer = {
enabled = false
}
detailed_monitoring_enabled = true
ssm_enabled = true
user_data = {
enabled = true
}
instance_target_capacity_type = "on-demand"
instance_types = spec.instance_types
placement = try(spec.placement, null)
license_specifications = try(spec.license_specifications, null)
use_dedicated_host = try(spec.use_dedicated_host, false)
vpc_id = try(spec.vpc_id, null)
subnet_ids = try(spec.subnet_ids, null)
scale_errors = try(spec.scale_errors, null)
block_device_mappings = [{
delete_on_termination = true
device_name = spec.volume.device_name
encrypted = true
iops = spec.volume.iops
kms_key_id = null
snapshot_id = null
throughput = spec.volume.throughput
volume_size = spec.volume.size
volume_type = spec.volume.type
}]
}
}
}
}

arc_cluster_name = local.config.arc_cluster_name
migrate_arc_cluster = local.config.migrate_arc_cluster

Expand Down
Loading
Loading