in commit-status-publisher-server/src/main/java/jetbrains/buildServer/commitPublisher/reports/NoFQDNServerUrlReport.java [74:99]
public void report(@NotNull HealthStatusScope scope, @NotNull HealthStatusItemConsumer consumer) {
for (SBuildType bt : scope.getBuildTypes()) {
Collection<SBuildFeatureDescriptor> features = bt.getBuildFeaturesOfType(CommitStatusPublisherFeature.TYPE);
for (SBuildFeatureDescriptor feature: features) {
if (bt.isEnabled(feature.getId())) {
Map<String, String> params = feature.getParameters();
String publisherId = params.get(Constants.PUBLISHER_ID_PARAM);
if (publisherId == null)
continue;
CommitStatusPublisherSettings settings = myPublisherManager.findSettings(publisherId);
if (null != settings && settings.isFQDNTeamCityUrlRequired()) {
String rootUrl = myLinks.getRootUrlByProjectInternalId(bt.getProjectId());
if(!URL_WITH_FQDN_PATTERN.matcher(rootUrl).matches()) {
String identity = REPORT_TYPE + "_BT_" + bt.getInternalId() + "_FEATURE_" + feature.getId();
Map<String, Object> additionalData = new HashMap<>();
additionalData.put("rootUrl", rootUrl);
additionalData.put("buildType", bt);
additionalData.put("publisherType", settings.getName());
consumer.consumeForBuildType(bt, new HealthStatusItem(identity, CATEGORY, additionalData));
}
}
}
}
}
}