245f816af5f6a8545b0317553c417116aca3af32
java/com.sap.sailing.landscape/src/com/sap/sailing/landscape/SailingReleaseRepository.java
| ... | ... | @@ -7,7 +7,7 @@ public interface SailingReleaseRepository extends ReleaseRepository { |
| 7 | 7 | // TODO bug6203: avoid rate limits by temporarily using the old folder-based releases repo again: |
| 8 | 8 | ReleaseRepository INSTANCE = new FolderBasedReleaseRepositoryImpl("https://releases.sapsailing.com", /* master release name prefix */ "main"); |
| 9 | 9 | |
| 10 | - default void m() { int TODO; } |
|
| 10 | + default void m() { int TODO_UseGithubReleasesRepositoryAgain; } |
|
| 11 | 11 | // ReleaseRepository INSTANCE = new GithubReleasesRepository( |
| 12 | 12 | // "SAP", // owner |
| 13 | 13 | // "sailing-analytics", // repo name |
java/com.sap.sailing.landscape/src/com/sap/sailing/landscape/impl/LandscapeServiceImpl.java
| ... | ... | @@ -285,9 +285,11 @@ public class LandscapeServiceImpl implements LandscapeService { |
| 285 | 285 | masterHostStartProcedure.run(); |
| 286 | 286 | final SailingAnalyticsProcess<String> master = masterHostStartProcedure.getSailingAnalyticsProcess(); |
| 287 | 287 | master.getHost().setTerminationProtection(true); |
| 288 | - final AwsApplicationReplicaSet<String, SailingAnalyticsMetrics, SailingAnalyticsProcess<String>> replicaSet = |
|
| 289 | - landscape.getApplicationReplicaSet(region, replicaSetName, master, /* replicas */ Collections.emptySet(), |
|
| 290 | - Landscape.WAIT_FOR_PROCESS_TIMEOUT, Optional.ofNullable(optionalKeyName), privateKeyEncryptionPassphrase); |
|
| 288 | + master.waitUntilAlive(Optional.of(Landscape.WAIT_FOR_HOST_TIMEOUT.get().plus(Landscape.WAIT_FOR_PROCESS_TIMEOUT.get()))); |
|
| 289 | + final AwsApplicationReplicaSet<String, SailingAnalyticsMetrics, SailingAnalyticsProcess<String>> replicaSet = landscape |
|
| 290 | + .getApplicationReplicaSet(region, replicaSetName, master, /* replicas */ Collections.emptySet(), |
|
| 291 | + Optional.of(Landscape.WAIT_FOR_HOST_TIMEOUT.get().plus(Landscape.WAIT_FOR_PROCESS_TIMEOUT.get())), |
|
| 292 | + Optional.ofNullable(optionalKeyName), privateKeyEncryptionPassphrase); |
|
| 291 | 293 | final String privateIpAdress = master.getHost().getPrivateAddress().getHostAddress(); |
| 292 | 294 | logger.info("Adding reverse proxy rule for archive candidate with hostname "+ candidateHostname + " and private ip address " + privateIpAdress); |
| 293 | 295 | reverseProxyCluster.setPlainRedirect(candidateHostname, master, Optional.ofNullable(optionalKeyName), privateKeyEncryptionPassphrase); |
java/com.sap.sse.landscape/src/com/sap/sse/landscape/application/ApplicationProcess.java
| ... | ... | @@ -165,6 +165,11 @@ extends Process<RotatingFileBasedLog, MetricsT> { |
| 165 | 165 | return Wait.wait(()->isReady(optionalTimeout), optionalTimeout, Duration.ONE_SECOND.times(5), Level.INFO, ""+this+" not yet ready"); |
| 166 | 166 | } |
| 167 | 167 | |
| 168 | + default boolean waitUntilAlive(Optional<Duration> optionalTimeout) throws TimeoutException, Exception { |
|
| 169 | + return Wait.wait(()->isAlive(optionalTimeout), success->success, /* retryOnException */ true, |
|
| 170 | + optionalTimeout, Duration.ONE_SECOND.times(5), Level.INFO, ""+this+" not yet alive"); |
|
| 171 | + } |
|
| 172 | + |
|
| 168 | 173 | Release getVersion(Optional<Duration> optionalTimeout, Optional<String> optionalKeyName, byte[] privateKeyEncryptionPassphrase) throws Exception; |
| 169 | 174 | |
| 170 | 175 | TimePoint getStartTimePoint(Optional<Duration> optionalTimeout) throws Exception; |