Skip to content

Commit d57cc04

Browse files
committed
feat(github): add container cron task vars
1 parent 219d6ec commit d57cc04

2 files changed

Lines changed: 62 additions & 34 deletions

File tree

alz/github/main.tf

Lines changed: 36 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -18,56 +18,58 @@ module "files" {
1818

1919
module "azure" {
2020
source = "../../modules/azure"
21-
user_assigned_managed_identities = local.managed_identities
22-
federated_credentials = local.federated_credentials
23-
resource_group_identity_name = local.resource_names.resource_group_identity
24-
resource_group_state_name = local.resource_names.resource_group_state
25-
resource_group_agents_name = local.resource_names.resource_group_agents
26-
resource_group_network_name = local.resource_names.resource_group_network
27-
create_storage_account = var.iac_type == local.iac_terraform
28-
storage_account_name = local.resource_names.storage_account
29-
storage_container_name = local.resource_names.storage_container
30-
azure_location = var.bootstrap_location
31-
target_subscriptions = local.target_subscriptions
32-
root_parent_management_group_id = local.root_parent_management_group_id
33-
agent_container_instances = local.runner_container_instances
3421
agent_container_instance_managed_identity_name = local.resource_names.container_instance_managed_identity
35-
agent_organization_url = local.runner_organization_repository_url
36-
agent_token = var.github_runners_personal_access_token
22+
agent_container_instances = local.runner_container_instances
23+
agent_name_environment_variable = var.runner_name_environment_variable
3724
agent_organization_environment_variable = var.runner_organization_environment_variable
38-
agent_pool_name = local.resource_names.version_control_system_runner_group
25+
agent_organization_url = local.runner_organization_repository_url
3926
agent_pool_environment_variable = var.runner_group_environment_variable
40-
agent_name_environment_variable = var.runner_name_environment_variable
41-
use_agent_pool_environment_variable = local.use_runner_group
27+
agent_pool_name = local.resource_names.version_control_system_runner_group
28+
agent_token = var.github_runners_personal_access_token
4229
agent_token_environment_variable = var.runner_token_environment_variable
43-
virtual_network_name = local.resource_names.virtual_network
44-
virtual_network_subnet_name_container_instances = local.resource_names.subnet_container_instances
45-
virtual_network_subnet_name_private_endpoints = local.resource_names.subnet_private_endpoints
46-
storage_account_private_endpoint_name = local.resource_names.storage_account_private_endpoint
47-
use_private_networking = local.use_private_networking
4830
allow_storage_access_from_my_ip = local.allow_storage_access_from_my_ip
49-
virtual_network_address_space = var.virtual_network_address_space
50-
virtual_network_subnet_address_prefix_container_instances = var.virtual_network_subnet_address_prefix_container_instances
51-
virtual_network_subnet_address_prefix_private_endpoints = var.virtual_network_subnet_address_prefix_private_endpoints
52-
storage_account_replication_type = var.storage_account_replication_type
53-
public_ip_name = local.resource_names.public_ip
54-
nat_gateway_name = local.resource_names.nat_gateway
55-
use_self_hosted_agents = var.use_self_hosted_runners
56-
container_registry_name = local.resource_names.container_registry
57-
container_registry_private_endpoint_name = local.resource_names.container_registry_private_endpoint
58-
container_registry_image_name = local.resource_names.container_image_name
59-
container_registry_image_tag = var.runner_container_image_tag
31+
azure_location = var.bootstrap_location
6032
container_registry_dockerfile_name = var.runner_container_image_dockerfile
6133
container_registry_dockerfile_repository_folder_url = local.runner_container_instance_dockerfile_url
34+
container_registry_image_name = local.resource_names.container_image_name
35+
container_registry_image_tag = var.runner_container_image_tag
36+
container_registry_name = local.resource_names.container_registry
37+
container_registry_private_endpoint_name = local.resource_names.container_registry_private_endpoint
38+
container_registry_task_timer_trigger_enabled = var.container_registry_task_timer_trigger_enabled
39+
container_registry_task_timer_trigger_schedule = var.container_registry_task_timer_trigger_schedule
40+
create_storage_account = var.iac_type == local.iac_terraform
6241
custom_role_definitions = var.iac_type == "terraform" ? local.custom_role_definitions_terraform : (var.iac_type == "bicep" ? local.custom_role_definitions_bicep : local.custom_role_definitions_bicep_classic)
42+
federated_credentials = local.federated_credentials
43+
nat_gateway_name = local.resource_names.nat_gateway
44+
public_ip_name = local.resource_names.public_ip
45+
resource_group_agents_name = local.resource_names.resource_group_agents
46+
resource_group_identity_name = local.resource_names.resource_group_identity
47+
resource_group_network_name = local.resource_names.resource_group_network
48+
resource_group_state_name = local.resource_names.resource_group_state
6349
role_assignments = var.iac_type == "terraform" ? var.role_assignments_terraform : var.role_assignments_bicep
50+
root_parent_management_group_id = local.root_parent_management_group_id
6451
storage_account_blob_soft_delete_enabled = var.storage_account_blob_soft_delete_enabled
6552
storage_account_blob_soft_delete_retention_days = var.storage_account_blob_soft_delete_retention_days
6653
storage_account_blob_versioning_enabled = var.storage_account_blob_versioning_enabled
6754
storage_account_container_soft_delete_enabled = var.storage_account_container_soft_delete_enabled
6855
storage_account_container_soft_delete_retention_days = var.storage_account_container_soft_delete_retention_days
56+
storage_account_name = local.resource_names.storage_account
57+
storage_account_private_endpoint_name = local.resource_names.storage_account_private_endpoint
58+
storage_account_replication_type = var.storage_account_replication_type
59+
storage_container_name = local.resource_names.storage_container
60+
target_subscriptions = local.target_subscriptions
6961
tenant_role_assignment_enabled = var.iac_type == "bicep" && var.bicep_tenant_role_assignment_enabled
7062
tenant_role_assignment_role_definition_name = var.bicep_tenant_role_assignment_role_definition_name
63+
use_agent_pool_environment_variable = local.use_runner_group
64+
use_private_networking = local.use_private_networking
65+
use_self_hosted_agents = var.use_self_hosted_runners
66+
user_assigned_managed_identities = local.managed_identities
67+
virtual_network_address_space = var.virtual_network_address_space
68+
virtual_network_name = local.resource_names.virtual_network
69+
virtual_network_subnet_address_prefix_container_instances = var.virtual_network_subnet_address_prefix_container_instances
70+
virtual_network_subnet_address_prefix_private_endpoints = var.virtual_network_subnet_address_prefix_private_endpoints
71+
virtual_network_subnet_name_container_instances = local.resource_names.subnet_container_instances
72+
virtual_network_subnet_name_private_endpoints = local.resource_names.subnet_private_endpoints
7173
}
7274

7375
module "github" {

alz/github/variables.tf

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1168,3 +1168,29 @@ variable "bicep_tenant_role_assignment_role_definition_name" {
11681168
type = string
11691169
default = "Landing Zone Management Owner"
11701170
}
1171+
1172+
variable "container_registry_task_timer_trigger_enabled" {
1173+
description = <<-EOT
1174+
**(Optional, default: `true`)** Enable timer trigger for container registry image builds
1175+
1176+
When enabled, the ACR task runs to rebuild the agent image,
1177+
ensuring it stays up-to-date with latest patches and dependencies.
1178+
1179+
See container_registry_task_timer_trigger_schedule for customizing the schedule.
1180+
EOT
1181+
nullable = false
1182+
type = bool
1183+
default = true
1184+
}
1185+
1186+
variable "container_registry_task_timer_trigger_schedule" {
1187+
description = <<-EOT
1188+
**(Optional, default: `"0 0 * * 0"`)** CRON schedule for the container registry task timer trigger.
1189+
1190+
Default schedule runs at midnight on Sundays.
1191+
Modify as needed to fit maintenance windows or update frequency.
1192+
EOT
1193+
type = string
1194+
nullable = false
1195+
default = "0 0 * * 0"
1196+
}

0 commit comments

Comments
 (0)