github.com/manicqin/nomad@v0.9.5/ui/app/templates/jobs/job/task-group.hbs (about) 1 {{title "Task group " model.name " - Job " model.job.name}} 2 <div class="tabs is-subnav"> 3 <ul> 4 <li>{{#link-to "jobs.job.task-group" model.job model activeClass="is-active"}}Overview{{/link-to}}</li> 5 </ul> 6 </div> 7 <section class="section"> 8 <h1 class="title"> 9 {{model.name}} 10 </h1> 11 12 <div class="boxed-section is-small"> 13 <div class="boxed-section-body inline-definitions"> 14 <span class="label">Task Group Details</span> 15 16 <span class="pair" data-test-task-group-tasks><span class="term"># Tasks</span> {{model.tasks.length}}</span> 17 <span class="pair" data-test-task-group-cpu><span class="term">Reserved CPU</span> {{model.reservedCPU}} MHz</span> 18 <span class="pair" data-test-task-group-mem><span class="term">Reserved Memory</span> {{model.reservedMemory}} MiB</span> 19 <span class="pair" data-test-task-group-disk><span class="term">Reserved Disk</span> {{model.reservedEphemeralDisk}} MiB</span> 20 </div> 21 </div> 22 23 <div class="boxed-section"> 24 <div class="boxed-section-head"> 25 <div>Allocation Status <span class="badge is-white">{{allocations.length}}</span></div> 26 </div> 27 <div class="boxed-section-body"> 28 {{#allocation-status-bar allocationContainer=model.summary class="split-view" as |chart|}} 29 <ol class="legend"> 30 {{#each chart.data as |datum index|}} 31 <li class="{{datum.className}} {{if (eq datum.label chart.activeDatum.label) "is-active"}} {{if (eq datum.value 0) "is-empty"}}"> 32 <span class="color-swatch {{if datum.className datum.className (concat "swatch-" index)}}" /> 33 <span class="value">{{datum.value}}</span> 34 <span class="label"> 35 {{datum.label}} 36 </span> 37 </li> 38 {{/each}} 39 </ol> 40 {{/allocation-status-bar}} 41 </div> 42 </div> 43 44 <div class="boxed-section"> 45 <div class="boxed-section-head"> 46 Allocations 47 {{search-box 48 searchTerm=(mut searchTerm) 49 placeholder="Search allocations..." 50 onChange=(action resetPagination) 51 class="is-inline pull-right" 52 inputClass="is-compact"}} 53 </div> 54 <div class="boxed-section-body is-full-bleed"> 55 {{#if sortedAllocations}} 56 {{#list-pagination 57 source=sortedAllocations 58 size=pageSize 59 page=currentPage 60 class="allocations" as |p|}} 61 {{#list-table 62 source=p.list 63 sortProperty=sortProperty 64 sortDescending=sortDescending 65 class="with-foot" as |t|}} 66 {{#t.head}} 67 <th class="is-narrow"></th> 68 {{#t.sort-by prop="shortId"}}ID{{/t.sort-by}} 69 {{#t.sort-by prop="createIndex" title="Create Index"}}Created{{/t.sort-by}} 70 {{#t.sort-by prop="modifyIndex" title="Modify Index"}}Modified{{/t.sort-by}} 71 {{#t.sort-by prop="statusIndex"}}Status{{/t.sort-by}} 72 {{#t.sort-by prop="jobVersion"}}Version{{/t.sort-by}} 73 {{#t.sort-by prop="node.shortId"}}Client{{/t.sort-by}} 74 <th>CPU</th> 75 <th>Memory</th> 76 {{/t.head}} 77 {{#t.body as |row|}} 78 {{allocation-row data-test-allocation=row.model.id allocation=row.model context="taskGroup" onClick=(action "gotoAllocation" row.model)}} 79 {{/t.body}} 80 {{/list-table}} 81 <div class="table-foot"> 82 <nav class="pagination"> 83 <div class="pagination-numbers"> 84 {{p.startsAt}}–{{p.endsAt}} of {{sortedAllocations.length}} 85 </div> 86 {{#p.prev class="pagination-previous"}} < {{/p.prev}} 87 {{#p.next class="pagination-next"}} > {{/p.next}} 88 <ul class="pagination-list"></ul> 89 </nav> 90 </div> 91 {{/list-pagination}} 92 {{else}} 93 {{#if allocations.length}} 94 <div class="boxed-section-body"> 95 <div class="empty-message" data-test-empty-allocations-list> 96 <h3 class="empty-message-headline" data-test-empty-allocations-list-headline>No Matches</h3> 97 <p class="empty-message-body">No allocations match the term <strong>{{searchTerm}}</strong></p> 98 </div> 99 </div> 100 {{else}} 101 <div class="boxed-section-body"> 102 <div class="empty-message" data-test-empty-allocations-list> 103 <h3 class="empty-message-headline" data-test-empty-allocations-list-headline>No Allocations</h3> 104 <p class="empty-message-body">No allocations have been placed.</p> 105 </div> 106 </div> 107 {{/if}} 108 {{/if}} 109 </div> 110 </div> 111 </section>