Skip to content

Commit 6d2ee7b

Browse files
committed
Implmeneted #25
1 parent 4b41f10 commit 6d2ee7b

File tree

11 files changed

+85
-19
lines changed

11 files changed

+85
-19
lines changed

src/main/java/io/jenkins/plugins/sdelements/SDElements.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -100,11 +100,11 @@ public void perform(@Nonnull Run<?, ?> run, @Nonnull FilePath filePath, @Nonnull
100100
}
101101
}
102102
} else {
103-
run.addAction(new SDElementsRiskIndicatorBuildAction(riskIndicator, url));
103+
run.addAction(new SDElementsRiskIndicatorBuildAction(riskIndicator, url, null));
104104
throw new IllegalStateException("Improper connection selected. This is a required setting");
105105
}
106106
taskListener.getLogger().println("SD Elements compliance status: "+(riskIndicator == null ? "Undetermined" : riskIndicator));
107-
run.addAction(new SDElementsRiskIndicatorBuildAction(riskIndicator, url));
107+
run.addAction(new SDElementsRiskIndicatorBuildAction(riskIndicator, url, conn.getConnectionString()));
108108
setBuildResult(markUnstable, riskIndicator, run);
109109
}
110110

src/main/java/io/jenkins/plugins/sdelements/SDElementsActionFactory.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ public Class<Job> type() {
2525
public Collection<? extends Action> createFor(@Nonnull Job job) {
2626
Run<?,?> r = job.getLastCompletedBuild();
2727
SDElementsRiskIndicatorBuildAction sdba = r.getAction(SDElementsRiskIndicatorBuildAction.class);
28-
SDElementsRiskIndicatorProjectAction sdpa = new SDElementsRiskIndicatorProjectAction(sdba.getRiskIndicator(), sdba.getProjectUrl());
28+
SDElementsRiskIndicatorProjectAction sdpa = new SDElementsRiskIndicatorProjectAction(sdba.getRiskIndicator(), sdba.getProjectUrl(), sdba.getBaseUrl());
2929
return Collections.singleton(sdpa);
3030
}
3131
}

src/main/java/io/jenkins/plugins/sdelements/SDElementsRiskIndicatorBuildAction.java

Lines changed: 23 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,18 +10,17 @@ public class SDElementsRiskIndicatorBuildAction implements Action {
1010

1111
private RiskPolicyCompliance riskIndicator;
1212
private String projectUrl;
13+
private String baseUrl;
1314

14-
public SDElementsRiskIndicatorBuildAction(RiskPolicyCompliance riskIndicator, String projectUrl) {
15+
public SDElementsRiskIndicatorBuildAction(RiskPolicyCompliance riskIndicator, String projectUrl, String baseUrl) {
1516
this.riskIndicator = riskIndicator;
1617
this.projectUrl = projectUrl;
18+
this.baseUrl = baseUrl;
1719
}
1820

1921
@Override
2022
public String getIconFileName() {
21-
if(riskIndicator == null || riskIndicator == RiskPolicyCompliance.UNDETERMINED) {
22-
return "/plugin/sdelements/icons/none.png";
23-
}
24-
return riskIndicator == RiskPolicyCompliance.PASS ? "/plugin/sdelements/icons/pass.png" : "/plugin/sdelements/icons/fail.png";
23+
return "/plugin/sdelements/icons/sdelements_icon.png";
2524
}
2625

2726
@Override
@@ -31,7 +30,7 @@ public String getDisplayName() {
3130

3231
@Override
3332
public String getUrlName() {
34-
return projectUrl;
33+
return baseUrl;
3534
}
3635

3736
public RiskPolicyCompliance getRiskIndicator() {
@@ -49,4 +48,22 @@ public String getProjectUrl() {
4948
public void setProjectUrl(String projectUrl) {
5049
this.projectUrl = projectUrl;
5150
}
51+
52+
public String getStatusIcon(RiskPolicyCompliance risk) {
53+
if(risk == RiskPolicyCompliance.FAIL) {
54+
return "/plugin/sdelements/icons/fail.png";
55+
} else if(risk == RiskPolicyCompliance.PASS) {
56+
return "/plugin/sdelements/icons/pass.png";
57+
} else {
58+
return "/plugin/sdelements/icons/none.png";
59+
}
60+
}
61+
62+
public String getBaseUrl() {
63+
return baseUrl;
64+
}
65+
66+
public void setBaseUrl(String baseUrl) {
67+
this.baseUrl = baseUrl;
68+
}
5269
}

src/main/java/io/jenkins/plugins/sdelements/SDElementsRiskIndicatorProjectAction.java

Lines changed: 26 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,37 +1,36 @@
11
package io.jenkins.plugins.sdelements;
22

3-
import hudson.model.ProminentProjectAction;
3+
import hudson.model.Action;
44
import io.jenkins.plugins.sdelements.api.RiskPolicyCompliance;
55

66
/**
77
* Created by mads on 4/12/18.
88
*/
9-
public class SDElementsRiskIndicatorProjectAction implements ProminentProjectAction {
9+
public class SDElementsRiskIndicatorProjectAction implements Action {
1010

1111
private RiskPolicyCompliance riskIndicator;
1212
private String projectUrl;
13+
private String baseUrl;
1314

14-
public SDElementsRiskIndicatorProjectAction(RiskPolicyCompliance riskIndicator, String projectUrl) {
15+
public SDElementsRiskIndicatorProjectAction(RiskPolicyCompliance riskIndicator, String projectUrl, String baseUrl) {
1516
this.riskIndicator = riskIndicator;
1617
this.projectUrl = projectUrl;
18+
this.baseUrl = baseUrl;
1719
}
1820

1921
@Override
2022
public String getIconFileName() {
21-
if(riskIndicator == null || riskIndicator == RiskPolicyCompliance.UNDETERMINED) {
22-
return "/plugin/sdelements/icons/none.png";
23-
}
24-
return riskIndicator == RiskPolicyCompliance.PASS ? "/plugin/sdelements/icons/pass.png" : "/plugin/sdelements/icons/fail.png";
23+
return "/plugin/sdelements/icons/sdelements_icon.png";
2524
}
2625

2726
@Override
2827
public String getDisplayName() {
29-
return "SD Elements: "+(riskIndicator == null ? "Undetermined" : riskIndicator);
28+
return "SD Elements";
3029
}
3130

3231
@Override
3332
public String getUrlName() {
34-
return projectUrl;
33+
return baseUrl;
3534
}
3635

3736
public RiskPolicyCompliance getRiskIndicator() {
@@ -49,4 +48,22 @@ public String getProjectUrl() {
4948
public void setProjectUrl(String projectUrl) {
5049
this.projectUrl = projectUrl;
5150
}
51+
52+
public String getStatusIcon(RiskPolicyCompliance risk) {
53+
if(risk == RiskPolicyCompliance.FAIL) {
54+
return "/plugin/sdelements/icons/fail.png";
55+
} else if(risk == RiskPolicyCompliance.PASS) {
56+
return "/plugin/sdelements/icons/pass.png";
57+
} else {
58+
return "/plugin/sdelements/icons/none.png";
59+
}
60+
}
61+
62+
public String getBaseUrl() {
63+
return baseUrl;
64+
}
65+
66+
public void setBaseUrl(String baseUrl) {
67+
this.baseUrl = baseUrl;
68+
}
5269
}
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
<?jelly escape-by-default='true'?>
2+
<j:jelly xmlns:j="jelly:core" xmlns:t="/lib/hudson">
3+
<t:summary icon="/plugin/sdelements/icons/sdelements_icon.png">
4+
<p><a href="${it.projectUrl}">Elements Risk Status</a></p>
5+
<j:choose>
6+
<j:when test="${it.riskIndicator != null}">
7+
<p><img style="width:20px" src="${resURL}/${it.getStatusIcon(it.riskIndicator)}"/> Risk status: ${it.riskIndicator}</p>
8+
</j:when>
9+
<j:otherwise>
10+
<p><img style="width:20px" src="${resURL}/${it.getStatusIcon(it.riskIndicator)}"/> Unable to determine risk compliance</p>
11+
</j:otherwise>
12+
</j:choose>
13+
</t:summary>
14+
</j:jelly>
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
<?jelly escape-by-default='true'?>
2+
<j:jelly xmlns:j="jelly:core" xmlns:t="/lib/hudson">
3+
<table style="margin-top: 1em; margin-left:1em;">
4+
<t:summary icon="/plugin/sdelements/icons/sdelements_icon.png">
5+
<div style="margin-left:-1em;">
6+
<p><a href="${it.projectUrl}">Elements Risk Status</a></p>
7+
<j:choose>
8+
<j:when test="${it.riskIndicator != null}">
9+
<p><img style="width:20px" src="${resURL}/${it.getStatusIcon(it.riskIndicator)}"/> Risk status: ${it.riskIndicator}</p>
10+
</j:when>
11+
<j:otherwise>
12+
<p><img style="width:20px" src="${resURL}/${it.getStatusIcon(it.riskIndicator)}"/> Unable to determine risk compliance</p>
13+
</j:otherwise>
14+
</j:choose>
15+
</div>
16+
</t:summary>
17+
</table>
18+
</j:jelly>

src/main/webapp/icons/fail.png

-684 Bytes
Loading

src/main/webapp/icons/none.png

-1.32 KB
Loading

src/main/webapp/icons/pass.png

-368 Bytes
Loading
2.15 KB
Loading

0 commit comments

Comments
 (0)