Skip to content

Commit fa53e61

Browse files
authored
Merge pull request #1175 from polyseam/k8s-version
[Enhancement] top-level k8s version override
2 parents c3dc903 + 4a2858d commit fa53e61

File tree

10 files changed

+26
-14
lines changed

10 files changed

+26
-14
lines changed

src/cndi_config/types.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ export interface CNDIConfigSpec {
1919
region?: string;
2020
provider: CNDIProvider;
2121
distribution: CNDIDistribution;
22+
kubernetes_version?: string;
2223
infrastructure: CNDIInfrastructureSpec; // Required in schema
2324
applications?: {
2425
[key: string]: CNDIApplicationSpec;

src/outputs/terraform/aws/eks/classic/network-mode-create/module/cndi_aws_eks_module.tf.json.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,9 @@ import { NormalizedCNDIConfig } from "src/cndi_config/types.ts";
44
const MODULE_SOURCE =
55
"git::https://github.com/terraform-aws-modules/terraform-aws-eks.git?ref=a713f6f464eb579a39918f60f130a5fbb77a6b30";
66

7-
export default function (_cndi_config: NormalizedCNDIConfig) {
7+
export default function (cndi_config: NormalizedCNDIConfig) {
8+
const cluster_version = cndi_config?.kubernetes_version ||
9+
DEFAULT_K8S_VERSION;
810
return getPrettyJSONString({
911
module: {
1012
cndi_aws_eks_module: {
@@ -21,7 +23,7 @@ export default function (_cndi_config: NormalizedCNDIConfig) {
2123
},
2224
},
2325
cluster_name: "${local.cndi_project_name}",
24-
cluster_version: DEFAULT_K8S_VERSION,
26+
cluster_version,
2527
cluster_endpoint_public_access: true, // TODO: probably bad
2628
enable_cluster_creator_admin_permissions: true,
2729
vpc_id: "${module.cndi_aws_vpc_module.vpc_id}",

src/outputs/terraform/aws/eks/classic/network-mode-insert/module/cndi_aws_eks_module.tf.json.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,9 @@ import { NormalizedCNDIConfig } from "src/cndi_config/types.ts";
44
const MODULE_SOURCE =
55
"git::https://github.com/terraform-aws-modules/terraform-aws-eks.git?ref=a713f6f464eb579a39918f60f130a5fbb77a6b30";
66

7-
export default function (_cndi_config: NormalizedCNDIConfig) {
7+
export default function (cndi_config: NormalizedCNDIConfig) {
8+
const cluster_version = cndi_config?.kubernetes_version ||
9+
DEFAULT_K8S_VERSION;
810
return getPrettyJSONString({
911
module: {
1012
cndi_aws_eks_module: {
@@ -21,7 +23,7 @@ export default function (_cndi_config: NormalizedCNDIConfig) {
2123
},
2224
},
2325
cluster_name: "${local.cndi_project_name}",
24-
cluster_version: DEFAULT_K8S_VERSION,
26+
cluster_version,
2527
cluster_endpoint_public_access: true, // TODO: probably bad
2628
enable_cluster_creator_admin_permissions: true,
2729
vpc_id: "${local.network_identifier}",

src/outputs/terraform/azure/aks/classic/network-mode-create/module/cndi_azurerm_aks_module.tf.json.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,15 @@ import { NETWORK_PROFILE } from "consts";
77
const MODULE_SOURCE = "Azure/aks/azurerm//v4";
88

99
export default function (cndi_config: NormalizedCNDIConfig): string | null {
10+
const kubernetes_version = cndi_config?.kubernetes_version ||
11+
DEFAULT_K8S_VERSION;
1012
const node_resource_group = getNodeResourceGroupName(cndi_config);
1113
return getPrettyJSONString({
1214
module: {
1315
cndi_azurerm_aks_module: {
1416
version: "10.0.1",
1517
source: MODULE_SOURCE,
16-
kubernetes_version: DEFAULT_K8S_VERSION,
18+
kubernetes_version,
1719
node_resource_group,
1820
automatic_channel_upgrade: "patch",
1921
prefix: "cndi-aks-${local.cndi_project_name}",

src/outputs/terraform/azure/aks/classic/network-mode-insert/module/cndi_azurerm_aks_module.tf.json.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,12 +17,14 @@ export default function (cndi_config: NormalizedCNDIConfig): string | null {
1717
const additionalNodePoolSubnetIds =
1818
"${length(local.private_subnet_ids) > 1 ? jsonencode([for i in range(1, length(local.private_subnet_ids)) : local.private_subnet_ids[i]]) : '[]'}";
1919

20+
const kubernetes_version = cndi_config?.kubernetes_version ||
21+
DEFAULT_K8S_VERSION;
2022
return getPrettyJSONString({
2123
module: {
2224
cndi_azurerm_aks_module: {
2325
version: "10.0.1",
2426
source: MODULE_SOURCE,
25-
kubernetes_version: DEFAULT_K8S_VERSION,
27+
kubernetes_version,
2628
node_resource_group,
2729
automatic_channel_upgrade: "patch",
2830
prefix: "cndi-aks-${local.cndi_project_name}",

src/outputs/terraform/cloud-init/microk8s/follower.yml.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ const getFollowerCloudInitYaml = (
3535
);
3636

3737
const microk8sVersion = config.infrastructure.cndi?.microk8s?.version ||
38-
DEFAULT_K8S_VERSION;
38+
config?.kubernetes_version || DEFAULT_K8S_VERSION;
3939
const microk8sChannel = config.infrastructure.cndi?.microk8s?.channel ||
4040
"stable";
4141

src/outputs/terraform/cloud-init/microk8s/leader.yml.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@ const getLeaderCloudInitYaml = (
8080
) => {
8181
const addons = getMicrok8sAddons(config);
8282
const microk8sVersion = config.infrastructure.cndi?.microk8s?.version ||
83-
DEFAULT_K8S_VERSION;
83+
config?.kubernetes_version || DEFAULT_K8S_VERSION;
8484
const microk8sChannel = config.infrastructure.cndi?.microk8s?.channel ||
8585
"stable";
8686

src/outputs/terraform/dev/microk8s/templatefiles/cndi_local_sensitive_file_microk8s_leader_cloud_init.template.yml.tftpl.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,7 @@ const getLeaderCloudInitYaml = (
8181
) => {
8282
const addons = getMicrok8sAddons(config);
8383
const microk8sVersion = config.infrastructure.cndi?.microk8s?.version ||
84-
DEFAULT_K8S_VERSION;
84+
config?.kubernetes_version || DEFAULT_K8S_VERSION;
8585
const microk8sChannel = config.infrastructure.cndi?.microk8s?.channel ||
8686
"stable";
8787

src/outputs/terraform/gcp/gke/classic/network-mode-create/module/cndi_gcp_gke_module.tf.json.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,11 @@ const MODULE_SOURCE =
88
"git::https://github.com/terraform-google-modules/terraform-google-kubernetes-engine.git?ref=" +
99
SHA_36_3_0;
1010

11-
export default function (_cndi_config: NormalizedCNDIConfig) {
11+
export default function (cndi_config: NormalizedCNDIConfig) {
1212
const ip_range_pods = "cluster-pods";
1313
const ip_range_services = "cluster-services";
14-
14+
const kubernetes_version = cndi_config?.kubernetes_version ||
15+
DEFAULT_K8S_VERSION;
1516
return getPrettyJSONString({
1617
module: {
1718
cndi_gcp_gke_module: {
@@ -43,7 +44,7 @@ export default function (_cndi_config: NormalizedCNDIConfig) {
4344
ip_range_pods,
4445
ip_range_services,
4546

46-
kubernetes_version: DEFAULT_K8S_VERSION,
47+
kubernetes_version,
4748
},
4849
},
4950
});

src/outputs/terraform/gcp/gke/classic/network-mode-insert/module/cndi_gcp_gke_module.tf.json.ts

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,12 +8,14 @@ const MODULE_SOURCE =
88
"git::https://github.com/terraform-google-modules/terraform-google-kubernetes-engine.git?ref=" +
99
SHA_36_3_0;
1010

11-
export default function (_cndi_config: NormalizedCNDIConfig) {
11+
export default function (cndi_config: NormalizedCNDIConfig) {
1212
const ip_range_pods = "cluster-pods";
1313
const ip_range_services = "cluster-services";
1414
const cluster_network = "${local.network_identifier}";
1515
const cluster_subnet =
1616
"${concat(local.private_subnet_ids, local.public_subnet_ids)[0]}";
17+
const kubernetes_version = cndi_config?.kubernetes_version ||
18+
DEFAULT_K8S_VERSION;
1719
return getPrettyJSONString({
1820
module: {
1921
cndi_gcp_gke_module: {
@@ -44,7 +46,7 @@ export default function (_cndi_config: NormalizedCNDIConfig) {
4446
ip_range_pods,
4547
ip_range_services,
4648

47-
kubernetes_version: DEFAULT_K8S_VERSION,
49+
kubernetes_version,
4850
},
4951
},
5052
});

0 commit comments

Comments
 (0)