diff options
author | Håkon Hallingstad <hakon@yahooinc.com> | 2022-09-08 13:04:24 +0200 |
---|---|---|
committer | Håkon Hallingstad <hakon@yahooinc.com> | 2022-09-08 13:04:24 +0200 |
commit | 7c2b10cb4bbf9c2622e255b0fcb72674c7d90122 (patch) | |
tree | f79b95a25bfaf294719bf0a12dc48598ef3abbb0 /node-repository | |
parent | 13a1c96df7ea794ceca6d1ff4d154d898cae798b (diff) |
Ignore infra deployment failures when bootstrapping zone
Diffstat (limited to 'node-repository')
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 |