diff --git a/pom.xml b/pom.xml index fe2554143..bc0097491 100644 --- a/pom.xml +++ b/pom.xml @@ -950,6 +950,15 @@ META-INF/** + + org.jetbrains.kotlin:kotlin-stdlib:jar:* + + ** + + + META-INF/** + + diff --git a/src/main/java/io/swagger/client/model/BuildArtifact.java b/src/main/java/io/swagger/client/model/BuildArtifact.java index fef286282..514ddc547 100644 --- a/src/main/java/io/swagger/client/model/BuildArtifact.java +++ b/src/main/java/io/swagger/client/model/BuildArtifact.java @@ -51,6 +51,9 @@ public class BuildArtifact { @SerializedName("commitDetails") private String commitDetails = null; + @SerializedName("poisoned") + private Boolean poisoned = null; + public BuildArtifact artifact(String artifact) { this.artifact = artifact; return this; @@ -195,6 +198,24 @@ public void setCommitDetails(String commitDetails) { this.commitDetails = commitDetails; } + public BuildArtifact poisoned(Boolean poisoned) { + this.poisoned = poisoned; + return this; + } + + /** + * A poisoned build shouldn't be recommended. This is a build that is known to have had problems, but was already published, and will not be taken down. + * @return poisoned + **/ + @Schema(required = true, description = "A poisoned build shouldn't be recommended. This is a build that is known to have had problems, but was already published, and will not be taken down.") + public Boolean isPoisoned() { + return poisoned; + } + + public void setPoisoned(Boolean poisoned) { + this.poisoned = poisoned; + } + @Override public boolean equals(java.lang.Object o) { @@ -212,12 +233,13 @@ public boolean equals(java.lang.Object o) { Objects.equals(this.link, buildArtifact.link) && Objects.equals(this.fullLink, buildArtifact.fullLink) && Objects.equals(this.sha, buildArtifact.sha) && - Objects.equals(this.commitDetails, buildArtifact.commitDetails); + Objects.equals(this.commitDetails, buildArtifact.commitDetails) && + Objects.equals(this.poisoned, buildArtifact.poisoned); } @Override public int hashCode() { - return Objects.hash(artifact, buildId, name, date, link, fullLink, sha, commitDetails); + return Objects.hash(artifact, buildId, name, date, link, fullLink, sha, commitDetails, poisoned); } @@ -234,6 +256,7 @@ public String toString() { sb.append(" fullLink: ").append(toIndentedString(fullLink)).append("\n"); sb.append(" sha: ").append(toIndentedString(sha)).append("\n"); sb.append(" commitDetails: ").append(toIndentedString(commitDetails)).append("\n"); + sb.append(" poisoned: ").append(toIndentedString(poisoned)).append("\n"); sb.append("}"); return sb.toString(); } diff --git a/src/main/resources/apps.methodscript.com/main.tsp b/src/main/resources/apps.methodscript.com/main.tsp index 31f23243e..e370170af 100644 --- a/src/main/resources/apps.methodscript.com/main.tsp +++ b/src/main/resources/apps.methodscript.com/main.tsp @@ -190,6 +190,11 @@ model BuildArtifact { * May be an empty string, if the commit isn't known, never null. */ commitDetails: string, + /** + * A poisoned build shouldn't be recommended. This is a build that is known to have had problems, but + * was already published, and will not be taken down. + */ + poisoned: boolean, }; /** diff --git a/src/main/resources/siteDeploy/resources/js/download.js b/src/main/resources/siteDeploy/resources/js/download.js index 53bcfa1f9..5c944bed7 100644 --- a/src/main/resources/siteDeploy/resources/js/download.js +++ b/src/main/resources/siteDeploy/resources/js/download.js @@ -50,10 +50,13 @@ } } } - if(showRecommended && first) { + if(showRecommended && first && !version.poisoned) { html += " (Recommended)"; first = false; } + if(version.poisoned) { + html += " (Bad build)"; + } html += ""; } html += "";