Skip to content

Commit 0cd8dcf

Browse files
committed
enabling aks
1 parent faccc33 commit 0cd8dcf

File tree

5 files changed

+98
-49
lines changed

5 files changed

+98
-49
lines changed

terraform/acr_aks.tf

Lines changed: 41 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -12,31 +12,45 @@ resource "azurerm_container_registry" "this_container_registry" {
1212
depends_on = [azurerm_resource_group.this_resource_group]
1313
}
1414

15-
# resource "azurerm_kubernetes_cluster" "this_aks_cluster" {
16-
# name = var.aks_name
17-
# location = var.location
18-
# resource_group_name = azurerm_resource_group.this_resource_group.name
19-
# dns_prefix = "DSB"
20-
21-
22-
# default_node_pool {
23-
# name = "default"
24-
# node_count = 1
25-
# vm_size = "Standard_A2_v2"
26-
# }
27-
28-
# identity {
29-
# type = "UserAssigned"
30-
# identity_ids = [azurerm_user_assigned_identity.this_uaid.id]
31-
# }
32-
33-
# tags = {
34-
# Environment = "Production"
35-
# }
36-
# depends_on = [
37-
# azurerm_role_assignment.uaid_contributor,
38-
# azurerm_role_assignment.acr_pull,
39-
# azurerm_role_assignment.acr_push
40-
# ]
41-
# }
15+
resource "azuredevops_serviceendpoint_azurerm" "arm_sc" {
16+
project_id = azuredevops_project.this.id
17+
service_endpoint_name = "Azure ARM Endpoint"
18+
19+
environment = "AzureCloud"
20+
azurerm_spn_tenantid = var.TFC_AZ_TENANT_ID
21+
azurerm_subscription_id = var.TFC_AZ_SUBSCRIPTION_ID
22+
azurerm_subscription_name = "DSB"
23+
24+
credentials {
25+
serviceprincipalid = azurerm_user_assigned_identity.this_uaid.client_id
26+
}
27+
}
28+
29+
resource "azurerm_kubernetes_cluster" "this_aks_cluster" {
30+
name = var.aks_name
31+
location = var.location
32+
resource_group_name = azurerm_resource_group.this_resource_group.name
33+
dns_prefix = "DSB"
34+
35+
36+
default_node_pool {
37+
name = "default"
38+
node_count = 1
39+
vm_size = "Standard_A2_v2"
40+
}
41+
42+
identity {
43+
type = "UserAssigned"
44+
identity_ids = [azurerm_user_assigned_identity.this_uaid.id]
45+
}
46+
47+
tags = {
48+
Environment = "Production"
49+
}
50+
depends_on = [
51+
azurerm_role_assignment.uaid_contributor,
52+
azurerm_role_assignment.acr_pull,
53+
azurerm_role_assignment.acr_push
54+
]
55+
}
4256

terraform/data.tf

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# Get the AKS and RG
2+
data "azurerm_resource_group" "rg" {
3+
name = var.resource_group_name
4+
}
5+
6+
data "azurerm_kubernetes_cluster" "aks" {
7+
name = var.aks_name
8+
resource_group_name = data.azurerm_resource_group.rg.name
9+
}
10+
11+
data "azuread_client_config" "current" {}

terraform/main.tf

Lines changed: 33 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,3 @@
1-
data "azuread_client_config" "current" {}
2-
3-
41
### Create a new Azure DevOps project
52
resource "azuredevops_project" "this" {
63
name = "python-fastapi"
@@ -110,4 +107,36 @@ resource "azuredevops_serviceendpoint_azurecr" "acr_registry_endpoint" {
110107
credentials {
111108
serviceprincipalid = azurerm_user_assigned_identity.this_uaid.client_id
112109
}
113-
}
110+
}
111+
112+
resource "azuredevops_variable_group" "infra_variable_group" {
113+
project_id = azuredevops_project.this.id
114+
name = "Infrastructure Pipeline Variables"
115+
description = "Managed by Terraform"
116+
allow_access = true
117+
118+
variable {
119+
name = "ACR_URL"
120+
value = azurerm_container_registry.this_container_registry.login_server
121+
}
122+
123+
variable {
124+
name = "ACR_SERVICE_CONNECTION"
125+
value = azuredevops_serviceendpoint_azurecr.acr_registry_endpoint.id
126+
}
127+
128+
variable {
129+
name = "AKS_CLUSTER_NAME"
130+
value = azurerm_kubernetes_cluster.this_aks_cluster.name
131+
}
132+
133+
variable {
134+
name = "AZURE_SERVICE_CONNECTION"
135+
value = azuredevops_serviceendpoint_azurerm.arm_sc.id
136+
}
137+
138+
variable {
139+
name = "RESOURCE_GROUP_NAME"
140+
value = azurerm_resource_group.this_resource_group.name
141+
}
142+
}

terraform/outputs.tf

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,16 @@ output "acr_name" {
44

55
output "acr_url" {
66
value = azurerm_container_registry.this_container_registry.login_server
7-
}
7+
}
8+
9+
output "aks_name" {
10+
value = azurerm_kubernetes_cluster.this_aks_cluster.name
11+
}
12+
13+
output "azure_service_connection_name" {
14+
value = azuredevops_serviceendpoint_azurerm.arm_sc.service_endpoint_name
15+
}
16+
17+
output "azure_service_connection_id" {
18+
value = azuredevops_serviceendpoint_azurerm.arm_sc.id
19+
}

terraform/variable-group.tf

Lines changed: 0 additions & 17 deletions
This file was deleted.

0 commit comments

Comments
 (0)