summaryrefslogtreecommitdiffstats
path: root/node-repository
diff options
context:
space:
mode:
authorHåkon Hallingstad <hakon@yahooinc.com>2022-09-08 13:04:24 +0200
committerHåkon Hallingstad <hakon@yahooinc.com>2022-09-08 13:04:24 +0200
commit7c2b10cb4bbf9c2622e255b0fcb72674c7d90122 (patch)
treef79b95a25bfaf294719bf0a12dc48598ef3abbb0 /node-repository
parent13a1c96df7ea794ceca6d1ff4d154d898cae798b (diff)
Ignore infra deployment failures when bootstrapping zone
Diffstat (limited to 'node-repository')
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/InfrastructureProvisioner.java4
-rw-r--r--node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/NodeRepositoryMaintenance.java8
2 files changed, 7 insertions, 5 deletions
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/InfrastructureProvisioner.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/InfrastructureProvisioner.java
index 5392df3d5b3..ba0f33cf6bd 100644
--- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/InfrastructureProvisioner.java
+++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/InfrastructureProvisioner.java
@@ -26,9 +26,9 @@ public class InfrastructureProvisioner extends NodeRepositoryMaintainer {
this.infraDeployer = infraDeployer;
}
- public void maintainButThrowOnException() {
+ public void maintain(boolean bootstrappingZone) {
try {
- infraDeployer.activateAllSupportedInfraApplications(true);
+ infraDeployer.activateAllSupportedInfraApplications(!bootstrappingZone);
} catch (RuntimeException e) {
logger.log(Level.INFO, "Failed to deploy supported infrastructure applications, " +
"will sleep 30s before propagating failure, to allow inspection of zk",
diff --git a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/NodeRepositoryMaintenance.java b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/NodeRepositoryMaintenance.java
index aa1abb18d8c..a3b43ced8d2 100644
--- a/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/NodeRepositoryMaintenance.java
+++ b/node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/NodeRepositoryMaintenance.java
@@ -1,6 +1,7 @@
// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.vespa.hosted.provision.maintenance;
+import com.yahoo.cloud.config.ConfigserverConfig;
import com.yahoo.component.annotation.Inject;
import com.yahoo.component.AbstractComponent;
import com.yahoo.concurrent.maintenance.Maintainer;
@@ -36,7 +37,7 @@ public class NodeRepositoryMaintenance extends AbstractComponent {
HostLivenessTracker hostLivenessTracker, ServiceMonitor serviceMonitor,
Zone zone, Metric metric,
ProvisionServiceProvider provisionServiceProvider, FlagSource flagSource,
- MetricsFetcher metricsFetcher) {
+ MetricsFetcher metricsFetcher, ConfigserverConfig configserverConfig) {
DefaultTimes defaults = new DefaultTimes(zone, deployer);
PeriodicApplicationMaintainer periodicApplicationMaintainer = new PeriodicApplicationMaintainer(deployer, metric, nodeRepository, defaults.redeployMaintainerInterval,
@@ -75,8 +76,9 @@ public class NodeRepositoryMaintenance extends AbstractComponent {
provisionServiceProvider.getHostProvisioner()
.map(hostProvisioner -> new HostRetirer(nodeRepository, defaults.hostRetirerInterval, metric, hostProvisioner))
.ifPresent(maintainers::add);
- // The DuperModel is filled with infrastructure applications by the infrastructure provisioner, so explicitly run that now
- infrastructureProvisioner.maintainButThrowOnException();
+ // The DuperModel is filled with infrastructure applications by the infrastructure provisioner, so explicitly
+ // run that now to ensure the release rollout halts on error.
+ infrastructureProvisioner.maintain(configserverConfig.bootstrapping());
}
@Override