aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorValerij Fredriksen <freva@users.noreply.github.com>2023-05-15 15:44:37 +0200
committerGitHub <noreply@github.com>2023-05-15 15:44:37 +0200
commita98b18cd45e8fae74a9e71c331698b7ed149ae98 (patch)
treec8a6059acb484396f8c383f50bc07981df248884
parentd59d4fc023756cf72cff11cfe97e5815af8af8f1 (diff)
parentfe7876516c97365c22d975fb25b6f2cd4a54e0f8 (diff)
Merge pull request #27121 from vespa-engine/freva/ignore-in-gcp
Always write cloudAccount for GCP LBs
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/lb/LoadBalancerInstance.java4
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/LoadBalancerProvisioner.java8
2 files changed, 11 insertions, 1 deletions
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/lb/LoadBalancerInstance.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/lb/LoadBalancerInstance.java
index e228d31384c..5284511af47 100644
--- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/lb/LoadBalancerInstance.java
+++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/lb/LoadBalancerInstance.java
@@ -119,6 +119,10 @@ public class LoadBalancerInstance {
cloudAccount);
}
+ public LoadBalancerInstance with(CloudAccount cloudAccount) {
+ return new LoadBalancerInstance(hostname, ipAddress, dnsZone, ports, networks, reals, settings, serviceIds, cloudAccount);
+ }
+
/** Prepends the given service IDs, possibly changing the order of those we have in this. */
public LoadBalancerInstance withServiceIds(List<PrivateServiceId> serviceIds) {
List<PrivateServiceId> ids = new ArrayList<>(serviceIds);
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/LoadBalancerProvisioner.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/LoadBalancerProvisioner.java
index ae1edab7fad..fe40b2c5001 100644
--- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/LoadBalancerProvisioner.java
+++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/provisioning/LoadBalancerProvisioner.java
@@ -70,10 +70,16 @@ public class LoadBalancerProvisioner {
this.deactivateRouting = PermanentFlags.DEACTIVATE_ROUTING.bindTo(nodeRepository.flagSource());
// Read and write all load balancers to make sure they are stored in the latest version of the serialization format
+ CloudAccount zoneAccount = nodeRepository.zone().cloud().account();
for (var id : db.readLoadBalancerIds()) {
try (var lock = db.lock(id.application())) {
var loadBalancer = db.readLoadBalancer(id);
- loadBalancer.ifPresent(lb -> db.writeLoadBalancer(lb, lb.state()));
+ loadBalancer.ifPresent(lb -> {
+ // TODO (freva): Remove after 8.166
+ if (!zoneAccount.isUnspecified() && lb.instance().isPresent() && lb.instance().get().cloudAccount().isUnspecified())
+ lb = lb.with(Optional.of(lb.instance().get().with(zoneAccount)));
+ db.writeLoadBalancer(lb, lb.state());
+ });
}
}
}