java/com.sap.sailing.landscape.ui/src/com/sap/sailing/landscape/ui/client/LandscapeManagementPanel.java
... ...
@@ -948,9 +948,9 @@ public class LandscapeManagementPanel extends SimplePanel {
948 948
applicationReplicaSetToDefineLandingPageFor.getMaster(),
949 949
applicationReplicaSetToDefineLandingPageFor.getReplicas(),
950 950
applicationReplicaSetToDefineLandingPageFor.getVersion(),
951
+ applicationReplicaSetToDefineLandingPageFor.getReleaseNotesLink(),
951 952
applicationReplicaSetToDefineLandingPageFor.getHostname(),
952
- newDefaultRedirect,
953
- applicationReplicaSetToDefineLandingPageFor.getAutoScalingGroupAmiId()));
953
+ newDefaultRedirect, applicationReplicaSetToDefineLandingPageFor.getAutoScalingGroupAmiId()));
954 954
Notification.notify(stringMessages.successfullyUpdatedLandingPage(), NotificationType.SUCCESS);
955 955
}
956 956
});
java/com.sap.sailing.landscape.ui/src/com/sap/sailing/landscape/ui/client/LinkBuilder.java
... ...
@@ -2,7 +2,6 @@ package com.sap.sailing.landscape.ui.client;
2 2
3 3
import com.google.gwt.safehtml.shared.SafeHtml;
4 4
import com.google.gwt.safehtml.shared.SafeHtmlBuilder;
5
-import com.sap.sailing.landscape.SailingReleaseRepository;
6 5
import com.sap.sailing.landscape.ui.shared.SailingAnalyticsProcessDTO;
7 6
import com.sap.sailing.landscape.ui.shared.SailingApplicationReplicaSetDTO;
8 7
import com.sap.sse.common.Builder;
... ...
@@ -128,10 +127,6 @@ public class LinkBuilder implements Builder<LinkBuilder, SafeHtml> {
128 127
return (port == 443 ? "https" : "http") + "://" + host + ":" + port + "/gwt/status";
129 128
}
130 129
131
- private String getReleaseNotesLink(final String version) {
132
- return SailingReleaseRepository.INSTANCE.getRelease(version).getReleaseNotesURL().toString();
133
- }
134
-
135 130
/**
136 131
* Checks if an attribute is null and throws an exception if so.
137 132
*
... ...
@@ -194,7 +189,7 @@ public class LinkBuilder implements Builder<LinkBuilder, SafeHtml> {
194 189
case Version:
195 190
checkAttribute(replicaSet, "Replicaset");
196 191
final String version = replicaSet.getVersion();
197
- final String releaseNotesLink = getReleaseNotesLink(version);
192
+ final String releaseNotesLink = replicaSet.getReleaseNotesLink();
198 193
appendEc2Link(builder, releaseNotesLink, version);
199 194
break;
200 195
case MasterHost:
java/com.sap.sailing.landscape.ui/src/com/sap/sailing/landscape/ui/server/LandscapeManagementWriteServiceImpl.java
... ...
@@ -411,6 +411,7 @@ public class LandscapeManagementWriteServiceImpl extends ResultCachingProxiedRem
411 411
private SailingApplicationReplicaSetDTO<String> convertToSailingApplicationReplicaSetDTO(
412 412
AwsApplicationReplicaSet<String, SailingAnalyticsMetrics, SailingAnalyticsProcess<String>> applicationServerReplicaSet,
413 413
Optional<String> optionalKeyName, byte[] privateKeyEncryptionPassphrase) throws Exception {
414
+ final Release release = applicationServerReplicaSet.getVersion(Landscape.WAIT_FOR_PROCESS_TIMEOUT, optionalKeyName, privateKeyEncryptionPassphrase);
414 415
return new SailingApplicationReplicaSetDTO<>(applicationServerReplicaSet.getName(),
415 416
convertToSailingAnalyticsProcessDTO(applicationServerReplicaSet.getMaster(), optionalKeyName, privateKeyEncryptionPassphrase),
416 417
Util.map(applicationServerReplicaSet.getReplicas(), r->{
... ...
@@ -420,9 +421,8 @@ public class LandscapeManagementWriteServiceImpl extends ResultCachingProxiedRem
420 421
throw new RuntimeException(e);
421 422
}
422 423
}),
423
- applicationServerReplicaSet.getVersion(Landscape.WAIT_FOR_PROCESS_TIMEOUT, optionalKeyName, privateKeyEncryptionPassphrase).getName(),
424
- applicationServerReplicaSet.getHostname(), getLandscapeService().getDefaultRedirectPath(applicationServerReplicaSet.getDefaultRedirectRule()),
425
- applicationServerReplicaSet.getAutoScalingGroup() == null ? null :
424
+ release.getName(), release.getReleaseNotesURL().toString(), applicationServerReplicaSet.getHostname(),
425
+ getLandscapeService().getDefaultRedirectPath(applicationServerReplicaSet.getDefaultRedirectRule()), applicationServerReplicaSet.getAutoScalingGroup() == null ? null :
426 426
applicationServerReplicaSet.getAutoScalingGroup().getLaunchTemplateDefaultVersion() == null ? null :
427 427
applicationServerReplicaSet.getAutoScalingGroup().getLaunchTemplateDefaultVersion().launchTemplateData().imageId());
428 428
}
... ...
@@ -655,9 +655,9 @@ public class LandscapeManagementWriteServiceImpl extends ResultCachingProxiedRem
655 655
}
656 656
}),
657 657
release.getName(),
658
+ release.getReleaseNotesURL().toString(),
658 659
getLandscapeService().getFullyQualifiedHostname(name, Optional.ofNullable(optionalDomainName)),
659
- getLandscapeService().getDefaultRedirectPath(result.getDefaultRedirectRule()),
660
- result.getAutoScalingGroup()==null?null:result.getAutoScalingGroup().getLaunchTemplateDefaultVersion().launchTemplateData().imageId());
660
+ getLandscapeService().getDefaultRedirectPath(result.getDefaultRedirectRule()), result.getAutoScalingGroup()==null?null:result.getAutoScalingGroup().getLaunchTemplateDefaultVersion().launchTemplateData().imageId());
661 661
}
662 662
663 663
@Override
... ...
@@ -732,10 +732,9 @@ public class LandscapeManagementWriteServiceImpl extends ResultCachingProxiedRem
732 732
} catch (Exception e) {
733 733
throw new RuntimeException(e);
734 734
}
735
- }), release.getName(),
735
+ }), release.getName(), release.getReleaseNotesURL().toString(),
736 736
getLandscapeService().getFullyQualifiedHostname(replicaSetName, Optional.ofNullable(optionalDomainName)),
737
- getLandscapeService().getDefaultRedirectPath(result.getDefaultRedirectRule()),
738
- result.getAutoScalingGroup()==null?null:result.getAutoScalingGroup().getLaunchTemplateDefaultVersion().launchTemplateData().imageId());
737
+ getLandscapeService().getDefaultRedirectPath(result.getDefaultRedirectRule()), result.getAutoScalingGroup()==null?null:result.getAutoScalingGroup().getLaunchTemplateDefaultVersion().launchTemplateData().imageId());
739 738
}
740 739
741 740
@Override
... ...
@@ -859,9 +858,9 @@ public class LandscapeManagementWriteServiceImpl extends ResultCachingProxiedRem
859 858
applicationReplicaSetToCreateLoadBalancerMappingFor.getMaster(),
860 859
applicationReplicaSetToCreateLoadBalancerMappingFor.getReplicas(),
861 860
applicationReplicaSetToCreateLoadBalancerMappingFor.getVersion(),
861
+ applicationReplicaSetToCreateLoadBalancerMappingFor.getReleaseNotesLink(),
862 862
applicationReplicaSetToCreateLoadBalancerMappingFor.getHostname(),
863
- RedirectDTO.toString(defaultRedirect.getPath(), defaultRedirect.getQuery()),
864
- applicationReplicaSetToCreateLoadBalancerMappingFor.getAutoScalingGroupAmiId());
863
+ RedirectDTO.toString(defaultRedirect.getPath(), defaultRedirect.getQuery()), applicationReplicaSetToCreateLoadBalancerMappingFor.getAutoScalingGroupAmiId());
865 864
}
866 865
867 866
@Override
... ...
@@ -908,8 +907,8 @@ public class LandscapeManagementWriteServiceImpl extends ResultCachingProxiedRem
908 907
throw new RuntimeException(e);
909 908
}
910 909
}),
911
- release.getName(), applicationReplicaSetToUpgrade.getHostname(),
912
- applicationReplicaSetToUpgrade.getDefaultRedirectPath(), applicationReplicaSetToUpgrade.getAutoScalingGroupAmiId());
910
+ release.getName(), release.getReleaseNotesURL().toString(),
911
+ applicationReplicaSetToUpgrade.getHostname(), applicationReplicaSetToUpgrade.getDefaultRedirectPath(), applicationReplicaSetToUpgrade.getAutoScalingGroupAmiId());
913 912
}
914 913
915 914
@Override
java/com.sap.sailing.landscape.ui/src/com/sap/sailing/landscape/ui/shared/SailingApplicationReplicaSetDTO.java
... ...
@@ -16,6 +16,7 @@ public class SailingApplicationReplicaSetDTO<ShardingKey> implements Named, IsSe
16 16
private SailingAnalyticsProcessDTO master;
17 17
private ArrayList<SailingAnalyticsProcessDTO> replicas;
18 18
private String version;
19
+ private String releaseNotesLink;
19 20
private String hostname;
20 21
private String defaultRedirectPath;
21 22
private String autoScalingGroupAmiId;
... ...
@@ -24,7 +25,8 @@ public class SailingApplicationReplicaSetDTO<ShardingKey> implements Named, IsSe
24 25
SailingApplicationReplicaSetDTO() {} // for GWT RPC serialization only
25 26
26 27
public SailingApplicationReplicaSetDTO(String replicaSetName, SailingAnalyticsProcessDTO master,
27
- Iterable<SailingAnalyticsProcessDTO> replicas, String version, String hostname, String defaultRedirectPath, String autoScalingGroupAmiId) {
28
+ Iterable<SailingAnalyticsProcessDTO> replicas, String version, String releaseNotesLink, String hostname,
29
+ String defaultRedirectPath, String autoScalingGroupAmiId) {
28 30
super();
29 31
this.master = master;
30 32
this.replicaSetName = replicaSetName;
... ...
@@ -59,6 +61,10 @@ public class SailingApplicationReplicaSetDTO<ShardingKey> implements Named, IsSe
59 61
return version;
60 62
}
61 63
64
+ public String getReleaseNotesLink() {
65
+ return releaseNotesLink;
66
+ }
67
+
62 68
/**
63 69
* @return a fully-qualified hostname which can, e.g., be used to look up the load balancer taking the requests for
64 70
* this application replica set.