[Operator] Improve check whether SSH is enabled
Change-Id: I6ebced1ea54f10df857f08e9c08b50d49dc19ab7
diff --git a/operator/src/main/java/com/google/gerrit/k8s/operator/cluster/GerritIstioGateway.java b/operator/src/main/java/com/google/gerrit/k8s/operator/cluster/GerritIstioGateway.java
index 830e1d2..5566c59 100644
--- a/operator/src/main/java/com/google/gerrit/k8s/operator/cluster/GerritIstioGateway.java
+++ b/operator/src/main/java/com/google/gerrit/k8s/operator/cluster/GerritIstioGateway.java
@@ -83,7 +83,7 @@
boolean sshEnabled =
client.resources(Gerrit.class).list().getItems().stream()
- .anyMatch(g -> g.getSpec().getService().getSshPort() != null);
+ .anyMatch(g -> g.getSpec().getService().isSshEnabled());
if (sshEnabled) {
servers.add(
diff --git a/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/GerritConfigMapDependentResource.java b/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/GerritConfigMapDependentResource.java
index 7ebdb46..bc9f013 100644
--- a/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/GerritConfigMapDependentResource.java
+++ b/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/GerritConfigMapDependentResource.java
@@ -61,14 +61,14 @@
if (gerritCluster.getSpec().getIngress().getType() == IngressType.ISTIO) {
gerritConfigBuilder.withSsh(
- gerrit.getSpec().getService().getSshPort() != null,
+ gerrit.getSpec().getService().isSshEnabled(),
gerritCluster
.getSpec()
.getIngress()
.getFullHostnameForService(ServiceDependentResource.getName(gerrit))
+ ":29418");
} else {
- gerritConfigBuilder.withSsh(gerrit.getSpec().getService().getSshPort() != null);
+ gerritConfigBuilder.withSsh(gerrit.getSpec().getService().isSshEnabled());
}
configFiles.put("gerrit.config", gerritConfigBuilder.build().toText());
diff --git a/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/GerritIstioVirtualService.java b/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/GerritIstioVirtualService.java
index f30f866..625e294 100644
--- a/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/GerritIstioVirtualService.java
+++ b/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/GerritIstioVirtualService.java
@@ -65,7 +65,7 @@
private List<TCPRoute> getTCPRoutes(Gerrit gerrit) {
List<TCPRoute> routes = new ArrayList<>();
- if (gerrit.getSpec().getService().getSshPort() != null) {
+ if (gerrit.getSpec().getService().isSshEnabled()) {
routes.add(
new TCPRouteBuilder()
.withMatch(List.of(new L4MatchAttributesBuilder().withPort(29418).build()))
diff --git a/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/GerritServiceConfig.java b/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/GerritServiceConfig.java
index 841e02d..1237585 100644
--- a/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/GerritServiceConfig.java
+++ b/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/GerritServiceConfig.java
@@ -14,6 +14,7 @@
package com.google.gerrit.k8s.operator.gerrit;
+import com.fasterxml.jackson.annotation.JsonIgnore;
import java.io.Serializable;
public class GerritServiceConfig implements Serializable {
@@ -46,4 +47,9 @@
public void setSshPort(int sshPort) {
this.sshPort = sshPort;
}
+
+ @JsonIgnore
+ public boolean isSshEnabled() {
+ return this.sshPort != null;
+ }
}
diff --git a/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/ServiceDependentResource.java b/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/ServiceDependentResource.java
index 34c15c0..5bc8549 100644
--- a/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/ServiceDependentResource.java
+++ b/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/ServiceDependentResource.java
@@ -83,7 +83,7 @@
.withPort(gerrit.getSpec().getService().getHttpPort())
.withNewTargetPort(HTTP_PORT)
.build());
- if (gerrit.getSpec().getService().getSshPort() != null) {
+ if (gerrit.getSpec().getService().isSshEnabled()) {
ports.add(
new ServicePortBuilder()
.withName("ssh")
diff --git a/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/StatefulSetDependentResource.java b/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/StatefulSetDependentResource.java
index a02280c..dad0796 100644
--- a/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/StatefulSetDependentResource.java
+++ b/operator/src/main/java/com/google/gerrit/k8s/operator/gerrit/StatefulSetDependentResource.java
@@ -257,7 +257,7 @@
List<ContainerPort> containerPorts = new ArrayList<>();
containerPorts.add(new ContainerPort(HTTP_PORT, null, null, "http", null));
- if (gerrit.getSpec().getService().getSshPort() != null) {
+ if (gerrit.getSpec().getService().isSshEnabled()) {
containerPorts.add(new ContainerPort(SSH_PORT, null, null, "ssh", null));
}