diff --git a/config/config.msft.yaml b/config/config.msft.yaml index 22d5ffe29..fbcfc2dc8 100644 --- a/config/config.msft.yaml +++ b/config/config.msft.yaml @@ -33,7 +33,7 @@ defaults: istioctlVersion: "1.24.1" tag: "prod-stable" targetVersion: "asm-1-23" - versions: "\"asm-1-22\", \"asm-1-23\"" + versions: "asm-1-22,asm-1-23" # MGMT cluster specifics mgmt: diff --git a/config/config.schema.json b/config/config.schema.json index 35e04e249..1c103e05d 100644 --- a/config/config.schema.json +++ b/config/config.schema.json @@ -674,12 +674,14 @@ "type": "string" }, "versions": { - "description": "The current istio version in the AKS cluster, will need to change to array once tooling is ready", - "type": "array" + "description": "The current istio version in the AKS cluster as CSV, will need to change to array once tooling is ready", + "type": "string", + "pattern": "^[a-zA-Z0-9-]+(,[a-zA-Z0-9-]+)*$" }, "targetVersion": { "description": "The target istio version that will be updated to", - "type": "string" + "type": "string", + "pattern": "^[a-zA-Z0-9-]+$" } } } diff --git a/config/config.yaml b/config/config.yaml index 3353bb4f5..fe848b3cb 100644 --- a/config/config.yaml +++ b/config/config.yaml @@ -30,8 +30,8 @@ defaults: istio: istioctlVersion: "1.23.1" tag: "prod-stable" - targetVersion: "" - versions: ["asm-1-22"] + targetVersion: "asm-1-22" + versions: "asm-1-22" # MGMT cluster specifics mgmt: @@ -264,12 +264,6 @@ clouds: vmSize: 'Standard_D2s_v3' osDiskSizeGB: 32 azCount: 3 - istio: - url: "https://github.com/istio/istio/releases/download" - istioctlVersion: "1.23.1" - tag: "prod-stable" - version: "asm-1-22" - targetVersion: "" mgmt: # MGMTM AKS nodepools - big enough for 2 HCPs systemAgentPool: diff --git a/config/public-cloud-cs-pr.json b/config/public-cloud-cs-pr.json index 05dffa2cc..7d9179597 100644 --- a/config/public-cloud-cs-pr.json +++ b/config/public-cloud-cs-pr.json @@ -160,12 +160,8 @@ "istio": { "istioctlVersion": "1.23.1", "tag": "prod-stable", - "targetVersion": "", - "url": "https://github.com/istio/istio/releases/download", - "version": "asm-1-22", - "versions": [ - "asm-1-22" - ] + "targetVersion": "asm-1-22", + "versions": "asm-1-22" }, "rg": "hcp-underlay-cspr-svc", "subscription": "ARO Hosted Control Planes (EA Subscription 1)", diff --git a/config/public-cloud-dev.json b/config/public-cloud-dev.json index bc6b6776e..891dcc6c3 100644 --- a/config/public-cloud-dev.json +++ b/config/public-cloud-dev.json @@ -160,12 +160,8 @@ "istio": { "istioctlVersion": "1.23.1", "tag": "prod-stable", - "targetVersion": "", - "url": "https://github.com/istio/istio/releases/download", - "version": "asm-1-22", - "versions": [ - "asm-1-22" - ] + "targetVersion": "asm-1-22", + "versions": "asm-1-22" }, "rg": "hcp-underlay-dev-svc", "subscription": "ARO Hosted Control Planes (EA Subscription 1)", diff --git a/config/public-cloud-msft-int.json b/config/public-cloud-msft-int.json index a7060f2d6..631a5809b 100644 --- a/config/public-cloud-msft-int.json +++ b/config/public-cloud-msft-int.json @@ -160,10 +160,7 @@ "istioctlVersion": "1.24.1", "tag": "prod-stable", "targetVersion": "asm-1-23", - "versions": [ - "asm-1-22", - "asm-1-23" - ] + "versions": "asm-1-22,asm-1-23" }, "rg": "hcp-underlay-westus3-svc", "subscription": "hcp-westus3", diff --git a/config/public-cloud-personal-dev.json b/config/public-cloud-personal-dev.json index 620795f90..a6819053a 100644 --- a/config/public-cloud-personal-dev.json +++ b/config/public-cloud-personal-dev.json @@ -160,12 +160,8 @@ "istio": { "istioctlVersion": "1.23.1", "tag": "prod-stable", - "targetVersion": "", - "url": "https://github.com/istio/istio/releases/download", - "version": "asm-1-22", - "versions": [ - "asm-1-22" - ] + "targetVersion": "asm-1-22", + "versions": "asm-1-22" }, "rg": "hcp-underlay-usw3tst-svc", "subscription": "ARO Hosted Control Planes (EA Subscription 1)", diff --git a/dev-infrastructure/configurations/svc-cluster.tmpl.bicepparam b/dev-infrastructure/configurations/svc-cluster.tmpl.bicepparam index 20f37500b..e0bece4f8 100644 --- a/dev-infrastructure/configurations/svc-cluster.tmpl.bicepparam +++ b/dev-infrastructure/configurations/svc-cluster.tmpl.bicepparam @@ -1,7 +1,7 @@ using '../templates/svc-cluster.bicep' param kubernetesVersion = '{{ .kubernetesVersion }}' -param istioVersion = {{ .svc.istio.versions }} +param istioVersions = '{{ .svc.istio.versions }}' param vnetAddressPrefix = '{{ .vnetAddressPrefix }}' param subnetPrefix = '{{ .subnetPrefix }}' param podSubnetPrefix = '{{ .podSubnetPrefix }}' diff --git a/dev-infrastructure/modules/aks-cluster-base.bicep b/dev-infrastructure/modules/aks-cluster-base.bicep index 431251e59..c778cae73 100644 --- a/dev-infrastructure/modules/aks-cluster-base.bicep +++ b/dev-infrastructure/modules/aks-cluster-base.bicep @@ -25,7 +25,7 @@ param persist bool = false param kubernetesVersion string param deployIstio bool -param istioVersion array = ['asm-1-22'] +param istioVersions array = [] param vnetAddressPrefix string param subnetPrefix string param podSubnetPrefix string @@ -358,7 +358,7 @@ resource aksCluster 'Microsoft.ContainerService/managedClusters@2024-04-02-previ } ] } - revisions: istioVersion + revisions: istioVersions } } : null diff --git a/dev-infrastructure/templates/svc-cluster.bicep b/dev-infrastructure/templates/svc-cluster.bicep index c723c0125..02578991d 100644 --- a/dev-infrastructure/templates/svc-cluster.bicep +++ b/dev-infrastructure/templates/svc-cluster.bicep @@ -43,8 +43,8 @@ param podSubnetPrefix string @description('Kuberentes version to use with AKS') param kubernetesVersion string -@description('Istio control plane version to use with AKS') -param istioVersion array +@description('Istio control plane versions to use with AKS. CSV format') +param istioVersions string @description('The name of the keyvault for AKS.') @maxLength(24) @@ -166,7 +166,7 @@ module svcCluster '../modules/aks-cluster-base.bicep' = { aksEtcdKVEnableSoftDelete: aksEtcdKVEnableSoftDelete kubernetesVersion: kubernetesVersion deployIstio: true - istioVersion: istioVersion + istioVersions: split(istioVersions, ',') vnetAddressPrefix: vnetAddressPrefix subnetPrefix: subnetPrefix podSubnetPrefix: podSubnetPrefix