Skip to content

Commit 2eec72e

Browse files
authored
fix: added 1 additional rule to allow control plane to be accessed by specified list of cidr blocks (#431)
Signed-off-by: Ali Mukadam <[email protected]>
1 parent 562ed3a commit 2eec72e

File tree

6 files changed

+36
-7
lines changed

6 files changed

+36
-7
lines changed

modules/extensions/calico.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ resource "null_resource" "install_calico" {
1414
bastion_private_key = local.ssh_private_key
1515
}
1616

17-
depends_on = [null_resource.install_kubectl_operator, null_resource.write_kubeconfig_on_operator]
17+
depends_on = [null_resource.install_kubectl_on_operator, null_resource.write_kubeconfig_on_operator]
1818

1919
provisioner "file" {
2020
content = local.install_calico_template

modules/extensions/k8stools.tf

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# Copyright 2017, 2021 Oracle Corporation and/or affiliates.
22
# Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl
33

4-
resource "null_resource" "install_kubectl_operator" {
4+
resource "null_resource" "install_kubectl_on_operator" {
55
connection {
66
host = var.operator_private_ip
77
private_key = local.ssh_private_key
@@ -31,7 +31,7 @@ resource "null_resource" "install_kubectl_operator" {
3131
}
3232

3333
# helm
34-
resource "null_resource" "install_helm_operator" {
34+
resource "null_resource" "install_helm_on_operator" {
3535
connection {
3636
host = var.operator_private_ip
3737
private_key = local.ssh_private_key
@@ -44,7 +44,7 @@ resource "null_resource" "install_helm_operator" {
4444
bastion_private_key = local.ssh_private_key
4545
}
4646

47-
depends_on = [null_resource.install_kubectl_operator, null_resource.write_kubeconfig_on_operator]
47+
depends_on = [null_resource.install_kubectl_on_operator, null_resource.write_kubeconfig_on_operator]
4848

4949
provisioner "file" {
5050
content = local.install_helm_template

modules/extensions/kubeconfig.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ resource "null_resource" "write_kubeconfig_on_operator" {
3939
bastion_private_key = local.ssh_private_key
4040
}
4141

42-
depends_on = [null_resource.install_kubectl_operator]
42+
depends_on = [null_resource.install_kubectl_on_operator]
4343

4444
provisioner "file" {
4545
content = local.generate_kubeconfig_template

modules/extensions/metricserver.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ resource "null_resource" "enable_metric_server" {
1414
bastion_private_key = local.ssh_private_key
1515
}
1616

17-
depends_on = [null_resource.install_kubectl_operator, null_resource.write_kubeconfig_on_operator]
17+
depends_on = [null_resource.install_kubectl_on_operator, null_resource.write_kubeconfig_on_operator]
1818

1919
provisioner "file" {
2020
content = local.metric_server_template

modules/extensions/serviceaccount.tf

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ resource "null_resource" "create_service_account" {
1414
bastion_private_key = local.ssh_private_key
1515
}
1616

17-
depends_on = [null_resource.install_kubectl_operator, null_resource.write_kubeconfig_on_operator]
17+
depends_on = [null_resource.install_kubectl_on_operator, null_resource.write_kubeconfig_on_operator]
1818

1919
provisioner "file" {
2020
content = local.create_service_account_template

modules/network/nsgs.tf

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,35 @@ resource "oci_core_network_security_group_security_rule" "cp_ingress" {
7878
}
7979
}
8080

81+
resource "oci_core_network_security_group_security_rule" "cp_ingress_additional_cidrs" {
82+
network_security_group_id = oci_core_network_security_group.cp.id
83+
description = "Allow additional CIDR block access to control plane. Required for kubectl/helm."
84+
direction = "INGRESS"
85+
protocol = local.tcp_protocol
86+
source = element(var.control_plane_allowed_cidrs, count.index)
87+
source_type = "CIDR_BLOCK"
88+
89+
stateless = false
90+
91+
tcp_options {
92+
destination_port_range {
93+
min = 6443
94+
max = 6443
95+
}
96+
}
97+
98+
icmp_options {
99+
type = 3
100+
code = 4
101+
}
102+
103+
count = length(var.control_plane_allowed_cidrs)
104+
105+
lifecycle {
106+
ignore_changes = [source, source_type, direction, protocol, tcp_options]
107+
}
108+
}
109+
81110
# workers nsg and rules
82111
resource "oci_core_network_security_group" "workers" {
83112
compartment_id = var.compartment_id

0 commit comments

Comments
 (0)