Skip to content

Commit 9a1f4ea

Browse files
authored
feat(TPG>=6.8.0)!: add KCP log params (#2166)
Signed-off-by: drfaust92 <ilia.lazebnik@gmail.com>
1 parent 82edcfc commit 9a1f4ea

File tree

22 files changed

+56
-36
lines changed

22 files changed

+56
-36
lines changed

Diff for: README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -199,7 +199,7 @@ Then perform the following commands on the root folder:
199199
| ip\_range\_services | The _name_ of the secondary subnet range to use for services | `string` | n/a | yes |
200200
| issue\_client\_certificate | Issues a client certificate to authenticate to the cluster endpoint. To maximize the security of your cluster, leave this option disabled. Client certificates don't automatically rotate and aren't easily revocable. WARNING: changing this after cluster creation is destructive! | `bool` | `false` | no |
201201
| kubernetes\_version | The Kubernetes version of the masters. If set to 'latest' it will pull latest available version in the selected region. | `string` | `"latest"` | no |
202-
| logging\_enabled\_components | List of services to monitor: SYSTEM\_COMPONENTS, APISERVER, CONTROLLER\_MANAGER, SCHEDULER, and WORKLOADS. Empty list is default GKE configuration. | `list(string)` | `[]` | no |
202+
| logging\_enabled\_components | List of services to monitor: SYSTEM\_COMPONENTS, APISERVER, CONTROLLER\_MANAGER, KCP\_CONNECTION, KCP\_SSHD, SCHEDULER, and WORKLOADS. Empty list is default GKE configuration. | `list(string)` | `[]` | no |
203203
| logging\_service | The logging service that the cluster should write logs to. Available options include logging.googleapis.com, logging.googleapis.com/kubernetes (beta), and none | `string` | `"logging.googleapis.com/kubernetes"` | no |
204204
| maintenance\_end\_time | Time window specified for recurring maintenance operations in RFC3339 format | `string` | `""` | no |
205205
| maintenance\_exclusions | List of maintenance exclusions. A cluster can have up to three | `list(object({ name = string, start_time = string, end_time = string, exclusion_scope = string }))` | `[]` | no |

Diff for: autogen/main/variables.tf.tmpl

+4-2
Original file line numberDiff line numberDiff line change
@@ -893,7 +893,7 @@ variable "monitoring_enabled_components" {
893893

894894
variable "logging_enabled_components" {
895895
type = list(string)
896-
description = "List of services to monitor: SYSTEM_COMPONENTS, APISERVER, CONTROLLER_MANAGER, SCHEDULER, and WORKLOADS. Empty list is default GKE configuration."
896+
description = "List of services to monitor: SYSTEM_COMPONENTS, APISERVER, CONTROLLER_MANAGER, KCP_CONNECTION, KCP_SSHD, SCHEDULER, and WORKLOADS. Empty list is default GKE configuration."
897897
default = []
898898
validation {
899899
condition = alltrue([
@@ -903,10 +903,12 @@ variable "logging_enabled_components" {
903903
"APISERVER",
904904
"CONTROLLER_MANAGER",
905905
"SCHEDULER",
906+
"KCP_CONNECTION",
907+
"KCP_SSHD",
906908
"WORKLOADS"
907909
], c)
908910
])
909-
error_message = "Valid values are SYSTEM_COMPONENTS, APISERVER, CONTROLLER_MANAGER, SCHEDULER, and WORKLOADS."
911+
error_message = "Valid values are SYSTEM_COMPONENTS, APISERVER, CONTROLLER_MANAGER, SCHEDULER, KCP_CONNECTION, KCP_SSHD and WORKLOADS."
910912
}
911913
}
912914

Diff for: autogen/main/versions.tf.tmpl

+3-3
Original file line numberDiff line numberDiff line change
@@ -34,17 +34,17 @@ terraform {
3434
required_providers {
3535
google = {
3636
source = "hashicorp/google"
37-
version = ">= 6.5.0, < 6.11.0"
37+
version = ">= 6.8.0, < 6.11.0"
3838
}
3939
google-beta = {
4040
source = "hashicorp/google-beta"
41-
version = ">= 6.5.0, < 6.11.0"
41+
version = ">= 6.8.0, < 6.11.0"
4242
}
4343
{% elif autopilot_cluster %}
4444
required_providers {
4545
google = {
4646
source = "hashicorp/google"
47-
version = ">= 6.5.0, < 6.11.0"
47+
version = ">= 6.8.0, < 6.11.0"
4848
}
4949
{% else %}
5050
required_providers {

Diff for: modules/beta-autopilot-private-cluster/README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -121,7 +121,7 @@ Then perform the following commands on the root folder:
121121
| ip\_range\_services | The _name_ of the secondary subnet range to use for services | `string` | n/a | yes |
122122
| issue\_client\_certificate | Issues a client certificate to authenticate to the cluster endpoint. To maximize the security of your cluster, leave this option disabled. Client certificates don't automatically rotate and aren't easily revocable. WARNING: changing this after cluster creation is destructive! | `bool` | `false` | no |
123123
| kubernetes\_version | The Kubernetes version of the masters. If set to 'latest' it will pull latest available version in the selected region. | `string` | `"latest"` | no |
124-
| logging\_enabled\_components | List of services to monitor: SYSTEM\_COMPONENTS, APISERVER, CONTROLLER\_MANAGER, SCHEDULER, and WORKLOADS. Empty list is default GKE configuration. | `list(string)` | `[]` | no |
124+
| logging\_enabled\_components | List of services to monitor: SYSTEM\_COMPONENTS, APISERVER, CONTROLLER\_MANAGER, KCP\_CONNECTION, KCP\_SSHD, SCHEDULER, and WORKLOADS. Empty list is default GKE configuration. | `list(string)` | `[]` | no |
125125
| logging\_variant | (Optional) The type of logging agent that is deployed by default for newly created node pools in the cluster. Valid values include DEFAULT and MAX\_THROUGHPUT. | `string` | `null` | no |
126126
| maintenance\_end\_time | Time window specified for recurring maintenance operations in RFC3339 format | `string` | `""` | no |
127127
| maintenance\_exclusions | List of maintenance exclusions. A cluster can have up to three | `list(object({ name = string, start_time = string, end_time = string, exclusion_scope = string }))` | `[]` | no |

Diff for: modules/beta-autopilot-private-cluster/variables.tf

+4-2
Original file line numberDiff line numberDiff line change
@@ -555,7 +555,7 @@ variable "monitoring_enabled_components" {
555555

556556
variable "logging_enabled_components" {
557557
type = list(string)
558-
description = "List of services to monitor: SYSTEM_COMPONENTS, APISERVER, CONTROLLER_MANAGER, SCHEDULER, and WORKLOADS. Empty list is default GKE configuration."
558+
description = "List of services to monitor: SYSTEM_COMPONENTS, APISERVER, CONTROLLER_MANAGER, KCP_CONNECTION, KCP_SSHD, SCHEDULER, and WORKLOADS. Empty list is default GKE configuration."
559559
default = []
560560
validation {
561561
condition = alltrue([
@@ -565,10 +565,12 @@ variable "logging_enabled_components" {
565565
"APISERVER",
566566
"CONTROLLER_MANAGER",
567567
"SCHEDULER",
568+
"KCP_CONNECTION",
569+
"KCP_SSHD",
568570
"WORKLOADS"
569571
], c)
570572
])
571-
error_message = "Valid values are SYSTEM_COMPONENTS, APISERVER, CONTROLLER_MANAGER, SCHEDULER, and WORKLOADS."
573+
error_message = "Valid values are SYSTEM_COMPONENTS, APISERVER, CONTROLLER_MANAGER, SCHEDULER, KCP_CONNECTION, KCP_SSHD and WORKLOADS."
572574
}
573575
}
574576

Diff for: modules/beta-autopilot-private-cluster/versions.tf

+2-2
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,11 @@ terraform {
2121
required_providers {
2222
google = {
2323
source = "hashicorp/google"
24-
version = ">= 6.5.0, < 6.11.0"
24+
version = ">= 6.8.0, < 6.11.0"
2525
}
2626
google-beta = {
2727
source = "hashicorp/google-beta"
28-
version = ">= 6.5.0, < 6.11.0"
28+
version = ">= 6.8.0, < 6.11.0"
2929
}
3030
kubernetes = {
3131
source = "hashicorp/kubernetes"

Diff for: modules/beta-autopilot-public-cluster/README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ Then perform the following commands on the root folder:
112112
| ip\_range\_services | The _name_ of the secondary subnet range to use for services | `string` | n/a | yes |
113113
| issue\_client\_certificate | Issues a client certificate to authenticate to the cluster endpoint. To maximize the security of your cluster, leave this option disabled. Client certificates don't automatically rotate and aren't easily revocable. WARNING: changing this after cluster creation is destructive! | `bool` | `false` | no |
114114
| kubernetes\_version | The Kubernetes version of the masters. If set to 'latest' it will pull latest available version in the selected region. | `string` | `"latest"` | no |
115-
| logging\_enabled\_components | List of services to monitor: SYSTEM\_COMPONENTS, APISERVER, CONTROLLER\_MANAGER, SCHEDULER, and WORKLOADS. Empty list is default GKE configuration. | `list(string)` | `[]` | no |
115+
| logging\_enabled\_components | List of services to monitor: SYSTEM\_COMPONENTS, APISERVER, CONTROLLER\_MANAGER, KCP\_CONNECTION, KCP\_SSHD, SCHEDULER, and WORKLOADS. Empty list is default GKE configuration. | `list(string)` | `[]` | no |
116116
| logging\_variant | (Optional) The type of logging agent that is deployed by default for newly created node pools in the cluster. Valid values include DEFAULT and MAX\_THROUGHPUT. | `string` | `null` | no |
117117
| maintenance\_end\_time | Time window specified for recurring maintenance operations in RFC3339 format | `string` | `""` | no |
118118
| maintenance\_exclusions | List of maintenance exclusions. A cluster can have up to three | `list(object({ name = string, start_time = string, end_time = string, exclusion_scope = string }))` | `[]` | no |

Diff for: modules/beta-autopilot-public-cluster/variables.tf

+4-2
Original file line numberDiff line numberDiff line change
@@ -519,7 +519,7 @@ variable "monitoring_enabled_components" {
519519

520520
variable "logging_enabled_components" {
521521
type = list(string)
522-
description = "List of services to monitor: SYSTEM_COMPONENTS, APISERVER, CONTROLLER_MANAGER, SCHEDULER, and WORKLOADS. Empty list is default GKE configuration."
522+
description = "List of services to monitor: SYSTEM_COMPONENTS, APISERVER, CONTROLLER_MANAGER, KCP_CONNECTION, KCP_SSHD, SCHEDULER, and WORKLOADS. Empty list is default GKE configuration."
523523
default = []
524524
validation {
525525
condition = alltrue([
@@ -529,10 +529,12 @@ variable "logging_enabled_components" {
529529
"APISERVER",
530530
"CONTROLLER_MANAGER",
531531
"SCHEDULER",
532+
"KCP_CONNECTION",
533+
"KCP_SSHD",
532534
"WORKLOADS"
533535
], c)
534536
])
535-
error_message = "Valid values are SYSTEM_COMPONENTS, APISERVER, CONTROLLER_MANAGER, SCHEDULER, and WORKLOADS."
537+
error_message = "Valid values are SYSTEM_COMPONENTS, APISERVER, CONTROLLER_MANAGER, SCHEDULER, KCP_CONNECTION, KCP_SSHD and WORKLOADS."
536538
}
537539
}
538540

Diff for: modules/beta-autopilot-public-cluster/versions.tf

+2-2
Original file line numberDiff line numberDiff line change
@@ -21,11 +21,11 @@ terraform {
2121
required_providers {
2222
google = {
2323
source = "hashicorp/google"
24-
version = ">= 6.5.0, < 6.11.0"
24+
version = ">= 6.8.0, < 6.11.0"
2525
}
2626
google-beta = {
2727
source = "hashicorp/google-beta"
28-
version = ">= 6.5.0, < 6.11.0"
28+
version = ">= 6.8.0, < 6.11.0"
2929
}
3030
kubernetes = {
3131
source = "hashicorp/kubernetes"

Diff for: modules/beta-private-cluster-update-variant/README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -243,7 +243,7 @@ Then perform the following commands on the root folder:
243243
| istio\_auth | (Beta) The authentication type between services in Istio. | `string` | `"AUTH_MUTUAL_TLS"` | no |
244244
| kalm\_config | (Beta) Whether KALM is enabled for this cluster. | `bool` | `false` | no |
245245
| kubernetes\_version | The Kubernetes version of the masters. If set to 'latest' it will pull latest available version in the selected region. | `string` | `"latest"` | no |
246-
| logging\_enabled\_components | List of services to monitor: SYSTEM\_COMPONENTS, APISERVER, CONTROLLER\_MANAGER, SCHEDULER, and WORKLOADS. Empty list is default GKE configuration. | `list(string)` | `[]` | no |
246+
| logging\_enabled\_components | List of services to monitor: SYSTEM\_COMPONENTS, APISERVER, CONTROLLER\_MANAGER, KCP\_CONNECTION, KCP\_SSHD, SCHEDULER, and WORKLOADS. Empty list is default GKE configuration. | `list(string)` | `[]` | no |
247247
| logging\_service | The logging service that the cluster should write logs to. Available options include logging.googleapis.com, logging.googleapis.com/kubernetes (beta), and none | `string` | `"logging.googleapis.com/kubernetes"` | no |
248248
| maintenance\_end\_time | Time window specified for recurring maintenance operations in RFC3339 format | `string` | `""` | no |
249249
| maintenance\_exclusions | List of maintenance exclusions. A cluster can have up to three | `list(object({ name = string, start_time = string, end_time = string, exclusion_scope = string }))` | `[]` | no |

Diff for: modules/beta-private-cluster-update-variant/variables.tf

+4-2
Original file line numberDiff line numberDiff line change
@@ -848,7 +848,7 @@ variable "monitoring_enabled_components" {
848848

849849
variable "logging_enabled_components" {
850850
type = list(string)
851-
description = "List of services to monitor: SYSTEM_COMPONENTS, APISERVER, CONTROLLER_MANAGER, SCHEDULER, and WORKLOADS. Empty list is default GKE configuration."
851+
description = "List of services to monitor: SYSTEM_COMPONENTS, APISERVER, CONTROLLER_MANAGER, KCP_CONNECTION, KCP_SSHD, SCHEDULER, and WORKLOADS. Empty list is default GKE configuration."
852852
default = []
853853
validation {
854854
condition = alltrue([
@@ -858,10 +858,12 @@ variable "logging_enabled_components" {
858858
"APISERVER",
859859
"CONTROLLER_MANAGER",
860860
"SCHEDULER",
861+
"KCP_CONNECTION",
862+
"KCP_SSHD",
861863
"WORKLOADS"
862864
], c)
863865
])
864-
error_message = "Valid values are SYSTEM_COMPONENTS, APISERVER, CONTROLLER_MANAGER, SCHEDULER, and WORKLOADS."
866+
error_message = "Valid values are SYSTEM_COMPONENTS, APISERVER, CONTROLLER_MANAGER, SCHEDULER, KCP_CONNECTION, KCP_SSHD and WORKLOADS."
865867
}
866868
}
867869

Diff for: modules/beta-private-cluster/README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -221,7 +221,7 @@ Then perform the following commands on the root folder:
221221
| istio\_auth | (Beta) The authentication type between services in Istio. | `string` | `"AUTH_MUTUAL_TLS"` | no |
222222
| kalm\_config | (Beta) Whether KALM is enabled for this cluster. | `bool` | `false` | no |
223223
| kubernetes\_version | The Kubernetes version of the masters. If set to 'latest' it will pull latest available version in the selected region. | `string` | `"latest"` | no |
224-
| logging\_enabled\_components | List of services to monitor: SYSTEM\_COMPONENTS, APISERVER, CONTROLLER\_MANAGER, SCHEDULER, and WORKLOADS. Empty list is default GKE configuration. | `list(string)` | `[]` | no |
224+
| logging\_enabled\_components | List of services to monitor: SYSTEM\_COMPONENTS, APISERVER, CONTROLLER\_MANAGER, KCP\_CONNECTION, KCP\_SSHD, SCHEDULER, and WORKLOADS. Empty list is default GKE configuration. | `list(string)` | `[]` | no |
225225
| logging\_service | The logging service that the cluster should write logs to. Available options include logging.googleapis.com, logging.googleapis.com/kubernetes (beta), and none | `string` | `"logging.googleapis.com/kubernetes"` | no |
226226
| maintenance\_end\_time | Time window specified for recurring maintenance operations in RFC3339 format | `string` | `""` | no |
227227
| maintenance\_exclusions | List of maintenance exclusions. A cluster can have up to three | `list(object({ name = string, start_time = string, end_time = string, exclusion_scope = string }))` | `[]` | no |

Diff for: modules/beta-private-cluster/variables.tf

+4-2
Original file line numberDiff line numberDiff line change
@@ -848,7 +848,7 @@ variable "monitoring_enabled_components" {
848848

849849
variable "logging_enabled_components" {
850850
type = list(string)
851-
description = "List of services to monitor: SYSTEM_COMPONENTS, APISERVER, CONTROLLER_MANAGER, SCHEDULER, and WORKLOADS. Empty list is default GKE configuration."
851+
description = "List of services to monitor: SYSTEM_COMPONENTS, APISERVER, CONTROLLER_MANAGER, KCP_CONNECTION, KCP_SSHD, SCHEDULER, and WORKLOADS. Empty list is default GKE configuration."
852852
default = []
853853
validation {
854854
condition = alltrue([
@@ -858,10 +858,12 @@ variable "logging_enabled_components" {
858858
"APISERVER",
859859
"CONTROLLER_MANAGER",
860860
"SCHEDULER",
861+
"KCP_CONNECTION",
862+
"KCP_SSHD",
861863
"WORKLOADS"
862864
], c)
863865
])
864-
error_message = "Valid values are SYSTEM_COMPONENTS, APISERVER, CONTROLLER_MANAGER, SCHEDULER, and WORKLOADS."
866+
error_message = "Valid values are SYSTEM_COMPONENTS, APISERVER, CONTROLLER_MANAGER, SCHEDULER, KCP_CONNECTION, KCP_SSHD and WORKLOADS."
865867
}
866868
}
867869

Diff for: modules/beta-public-cluster-update-variant/README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -234,7 +234,7 @@ Then perform the following commands on the root folder:
234234
| istio\_auth | (Beta) The authentication type between services in Istio. | `string` | `"AUTH_MUTUAL_TLS"` | no |
235235
| kalm\_config | (Beta) Whether KALM is enabled for this cluster. | `bool` | `false` | no |
236236
| kubernetes\_version | The Kubernetes version of the masters. If set to 'latest' it will pull latest available version in the selected region. | `string` | `"latest"` | no |
237-
| logging\_enabled\_components | List of services to monitor: SYSTEM\_COMPONENTS, APISERVER, CONTROLLER\_MANAGER, SCHEDULER, and WORKLOADS. Empty list is default GKE configuration. | `list(string)` | `[]` | no |
237+
| logging\_enabled\_components | List of services to monitor: SYSTEM\_COMPONENTS, APISERVER, CONTROLLER\_MANAGER, KCP\_CONNECTION, KCP\_SSHD, SCHEDULER, and WORKLOADS. Empty list is default GKE configuration. | `list(string)` | `[]` | no |
238238
| logging\_service | The logging service that the cluster should write logs to. Available options include logging.googleapis.com, logging.googleapis.com/kubernetes (beta), and none | `string` | `"logging.googleapis.com/kubernetes"` | no |
239239
| maintenance\_end\_time | Time window specified for recurring maintenance operations in RFC3339 format | `string` | `""` | no |
240240
| maintenance\_exclusions | List of maintenance exclusions. A cluster can have up to three | `list(object({ name = string, start_time = string, end_time = string, exclusion_scope = string }))` | `[]` | no |

Diff for: modules/beta-public-cluster-update-variant/variables.tf

+4-2
Original file line numberDiff line numberDiff line change
@@ -812,7 +812,7 @@ variable "monitoring_enabled_components" {
812812

813813
variable "logging_enabled_components" {
814814
type = list(string)
815-
description = "List of services to monitor: SYSTEM_COMPONENTS, APISERVER, CONTROLLER_MANAGER, SCHEDULER, and WORKLOADS. Empty list is default GKE configuration."
815+
description = "List of services to monitor: SYSTEM_COMPONENTS, APISERVER, CONTROLLER_MANAGER, KCP_CONNECTION, KCP_SSHD, SCHEDULER, and WORKLOADS. Empty list is default GKE configuration."
816816
default = []
817817
validation {
818818
condition = alltrue([
@@ -822,10 +822,12 @@ variable "logging_enabled_components" {
822822
"APISERVER",
823823
"CONTROLLER_MANAGER",
824824
"SCHEDULER",
825+
"KCP_CONNECTION",
826+
"KCP_SSHD",
825827
"WORKLOADS"
826828
], c)
827829
])
828-
error_message = "Valid values are SYSTEM_COMPONENTS, APISERVER, CONTROLLER_MANAGER, SCHEDULER, and WORKLOADS."
830+
error_message = "Valid values are SYSTEM_COMPONENTS, APISERVER, CONTROLLER_MANAGER, SCHEDULER, KCP_CONNECTION, KCP_SSHD and WORKLOADS."
829831
}
830832
}
831833

Diff for: modules/beta-public-cluster/README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -212,7 +212,7 @@ Then perform the following commands on the root folder:
212212
| istio\_auth | (Beta) The authentication type between services in Istio. | `string` | `"AUTH_MUTUAL_TLS"` | no |
213213
| kalm\_config | (Beta) Whether KALM is enabled for this cluster. | `bool` | `false` | no |
214214
| kubernetes\_version | The Kubernetes version of the masters. If set to 'latest' it will pull latest available version in the selected region. | `string` | `"latest"` | no |
215-
| logging\_enabled\_components | List of services to monitor: SYSTEM\_COMPONENTS, APISERVER, CONTROLLER\_MANAGER, SCHEDULER, and WORKLOADS. Empty list is default GKE configuration. | `list(string)` | `[]` | no |
215+
| logging\_enabled\_components | List of services to monitor: SYSTEM\_COMPONENTS, APISERVER, CONTROLLER\_MANAGER, KCP\_CONNECTION, KCP\_SSHD, SCHEDULER, and WORKLOADS. Empty list is default GKE configuration. | `list(string)` | `[]` | no |
216216
| logging\_service | The logging service that the cluster should write logs to. Available options include logging.googleapis.com, logging.googleapis.com/kubernetes (beta), and none | `string` | `"logging.googleapis.com/kubernetes"` | no |
217217
| maintenance\_end\_time | Time window specified for recurring maintenance operations in RFC3339 format | `string` | `""` | no |
218218
| maintenance\_exclusions | List of maintenance exclusions. A cluster can have up to three | `list(object({ name = string, start_time = string, end_time = string, exclusion_scope = string }))` | `[]` | no |

Diff for: modules/beta-public-cluster/variables.tf

+4-2
Original file line numberDiff line numberDiff line change
@@ -812,7 +812,7 @@ variable "monitoring_enabled_components" {
812812

813813
variable "logging_enabled_components" {
814814
type = list(string)
815-
description = "List of services to monitor: SYSTEM_COMPONENTS, APISERVER, CONTROLLER_MANAGER, SCHEDULER, and WORKLOADS. Empty list is default GKE configuration."
815+
description = "List of services to monitor: SYSTEM_COMPONENTS, APISERVER, CONTROLLER_MANAGER, KCP_CONNECTION, KCP_SSHD, SCHEDULER, and WORKLOADS. Empty list is default GKE configuration."
816816
default = []
817817
validation {
818818
condition = alltrue([
@@ -822,10 +822,12 @@ variable "logging_enabled_components" {
822822
"APISERVER",
823823
"CONTROLLER_MANAGER",
824824
"SCHEDULER",
825+
"KCP_CONNECTION",
826+
"KCP_SSHD",
825827
"WORKLOADS"
826828
], c)
827829
])
828-
error_message = "Valid values are SYSTEM_COMPONENTS, APISERVER, CONTROLLER_MANAGER, SCHEDULER, and WORKLOADS."
830+
error_message = "Valid values are SYSTEM_COMPONENTS, APISERVER, CONTROLLER_MANAGER, SCHEDULER, KCP_CONNECTION, KCP_SSHD and WORKLOADS."
829831
}
830832
}
831833

0 commit comments

Comments
 (0)