Skip to content

Commit e761815

Browse files
UI fixes (#337)
- wrap the checkboxes in a flex container so the categories are properly rendered in the throttle step. - remove the blockwrapper, it's not needed anymore Co-authored-by: Mark Waite <mark.earl.waite@gmail.com>
1 parent 8436012 commit e761815

5 files changed

Lines changed: 29 additions & 52 deletions

File tree

src/main/resources/hudson/plugins/throttleconcurrents/ThrottleJobProperty/config.jelly

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,11 @@
1515

1616
<f:entry title="${%Maximum Total Concurrent Builds}"
1717
field="maxConcurrentTotal">
18-
<f:textbox />
18+
<f:number min="0"/>
1919
</f:entry>
2020
<f:entry title="${%Maximum Concurrent Builds Per Node}"
2121
field="maxConcurrentPerNode">
22-
<f:textbox />
22+
<f:number min="0"/>
2323
</f:entry>
2424

2525

@@ -34,11 +34,12 @@
3434

3535
<j:if test="${!empty(descriptor.categories)}">
3636
<f:entry title="${%Multi-Project Throttle Category}">
37-
<j:forEach var="cat" items="${descriptor.categories}">
38-
<f:checkbox name="categories" json="${cat.categoryName}" title="${cat.categoryName}"
39-
checked="${instance.categories.contains(cat.categoryName)}" />
40-
<st:nbsp/>
41-
</j:forEach>
37+
<div style="display: flex; gap: 1rem; flex-wrap: wrap;">
38+
<j:forEach var="cat" items="${descriptor.categories}">
39+
<f:checkbox name="categories" json="${cat.categoryName}" title="${cat.categoryName}"
40+
checked="${instance.categories.contains(cat.categoryName)}" />
41+
</j:forEach>
42+
</div>
4243
</f:entry>
4344
</j:if>
4445
<!--Specific options for Matrix projects-->

src/main/resources/hudson/plugins/throttleconcurrents/ThrottleJobProperty/global.jelly

Lines changed: 16 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,36 +1,28 @@
11
<?jelly escape-by-default='true'?>
22
<j:jelly xmlns:j="jelly:core" xmlns:st="jelly:stapler" xmlns:d="jelly:define" xmlns:l="/lib/layout"
3-
xmlns:t="/lib/hudson" xmlns:f="/lib/form" xmlns:tc="/lib/throttleconcurrents">
3+
xmlns:t="/lib/hudson" xmlns:f="/lib/form">
44
<f:section title="Throttle Concurrent Builds">
55
<f:entry title="Multi-Project Throttle Categories" field="categories">
66
<f:repeatable field="categories" add="${%Add Category}" minimum="0">
7-
<tc:blockWrapper>
8-
<f:entry title="Category Name" field="categoryName">
9-
<f:textbox />
10-
</f:entry>
11-
<f:entry title="${%Maximum Total Concurrent Builds}" field="maxConcurrentTotal">
7+
<f:entry title="Category Name" field="categoryName">
8+
<f:textbox clazz="required" checkMessage="${%Category Name is required}"/>
9+
</f:entry>
10+
<f:entry title="${%Maximum Total Concurrent Builds}" field="maxConcurrentTotal">
11+
<f:number min="0"/>
12+
</f:entry>
13+
<f:entry title="${%Maximum Concurrent Builds Per Node}" field="maxConcurrentPerNode">
14+
<f:number min="0"/>
15+
</f:entry>
16+
<f:repeatable field="nodeLabeledPairs" add="${%Add Maximum Per Labeled Node}" minimum="0" header="${%Maximum Per Labeled Node}">
17+
<f:entry title="${%Throttled Node Label}" field="throttledNodeLabel">
1218
<f:textbox />
1319
</f:entry>
14-
<f:entry title="${%Maximum Concurrent Builds Per Node}" field="maxConcurrentPerNode">
15-
<f:textbox />
20+
<f:entry title="${%Maximum Concurrent Builds Per Node Labeled As Above}" field="maxConcurrentPerNodeLabeled">
21+
<f:number min="0"/>
1622
</f:entry>
17-
</tc:blockWrapper>
18-
<f:repeatable field="nodeLabeledPairs" add="${%Add Maximum Per Labeled Node}" minimum="0" header="${%Maximum Per Labeled Node}">
19-
<tc:blockWrapper>
20-
<f:entry title="${%Throttled Node Label}" field="throttledNodeLabel">
21-
<f:textbox />
22-
</f:entry>
23-
<f:entry title="${%Maximum Concurrent Builds Per Node Labeled As Above}" field="maxConcurrentPerNodeLabeled">
24-
<f:textbox />
25-
</f:entry>
26-
</tc:blockWrapper>
27-
<div align="right">
28-
<f:repeatableDeleteButton/>
29-
</div>
30-
</f:repeatable>
31-
<div align="right">
3223
<f:repeatableDeleteButton/>
33-
</div>
24+
</f:repeatable>
25+
<f:repeatableDeleteButton/>
3426
</f:repeatable>
3527
</f:entry>
3628
</f:section>

src/main/resources/hudson/plugins/throttleconcurrents/pipeline/ThrottleStep/config.jelly

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,11 @@
44
<j:choose>
55
<j:when test="${!empty(descriptor.categories)}">
66
<f:entry title="${%Categories}">
7-
<j:forEach var="cat" items="${descriptor.categories}">
8-
<f:checkbox name="categories" json="${cat.categoryName}" checked="${instance.categories.contains(cat.categoryName)}" />
9-
<label class="attach-previous">${cat.categoryName}</label>
10-
<st:nbsp/>
11-
</j:forEach>
7+
<div style="display: flex; gap: 1rem; flex-wrap: wrap;">
8+
<j:forEach var="cat" items="${descriptor.categories}">
9+
<f:checkbox name="categories" json="${cat.categoryName}" checked="${instance.categories.contains(cat.categoryName)}" title="${cat.categoryName}" />
10+
</j:forEach>
11+
</div>
1212
</f:entry>
1313
</j:when>
1414
<j:otherwise>

src/main/resources/lib/throttleconcurrents/blockWrapper.jelly

Lines changed: 0 additions & 16 deletions
This file was deleted.

src/main/resources/lib/throttleconcurrents/taglib

Whitespace-only changes.

0 commit comments

Comments
 (0)