github.com/hernad/nomad@v1.6.112/ui/app/components/evaluation-sidebar/detail.hbs (about) 1 {{! 2 Copyright (c) HashiCorp, Inc. 3 SPDX-License-Identifier: MPL-2.0 4 ~}} 5 6 {{#let this.currentEvalDetail as |evaluation|}} 7 {{#if this.isSideBarOpen}} 8 {{keyboard-commands this.keyCommands}} 9 {{/if}} 10 <Portal @target="eval-detail-portal"> 11 <div 12 data-test-eval-detail 13 data-test-eval-detail-is-open={{this.isSideBarOpen}} 14 class="sidebar {{if this.isSideBarOpen "open"}} evaluations-sidebar" 15 {{on-click-outside 16 this.closeSidebar 17 capture=true 18 exceptSelector="tr[data-eval-row]" 19 }} 20 > 21 {{#if this.isLoading}} 22 <div data-test-eval-loading> 23 <section class="section has-text-centered"> 24 <LoadingSpinner /> 25 </section> 26 </div> 27 {{/if}} 28 {{#if this.isError}} 29 <div data-test-eval-detail-header class="error-header"> 30 <button 31 data-test-eval-sidebar-x 32 class="button is-borderless" 33 type="button" 34 {{on "click" this.closeSidebar}} 35 > 36 {{x-icon "cancel"}} 37 </button> 38 </div> 39 <div class="error-container"> 40 <div data-test-eval-error class="error-message"> 41 <h1 data-test-error-title class="title is-spaced"> 42 Not Found 43 </h1> 44 <p data-test-error-message class="subtitle"> 45 The requested evaluation could not be found. You may not be authorized to view this evaluation, it may have been garbage collected, or the ID is invalid. 46 </p> 47 </div> 48 </div> 49 {{/if}} 50 {{#if this.isSuccess}} 51 {{! Evaluation Detail Header}} 52 <div data-test-eval-detail-header class="detail-header"> 53 <h1 data-test-title class="title"> 54 {{evaluation.shortId}} 55 <span class="bumper-left tag is-primary"> 56 {{evaluation.status}} 57 </span> 58 </h1> 59 <button 60 data-test-eval-sidebar-x 61 class="button is-borderless" 62 type="button" 63 {{on "click" this.closeSidebar}} 64 > 65 {{x-icon "cancel"}} 66 </button> 67 </div> 68 {{! Start Evaluation Stats}} 69 <div class="boxed-section is-small"> 70 <div 71 class="boxed-section-body inline-definitions" 72 style="display: flex;" 73 > 74 <span class="label" style="width: 6.125rem;"> 75 Evaluation Details 76 </span> 77 <div style="display: flex; flex-direction: column"> 78 <span class="pair"> 79 <span class="term"> 80 Job 81 </span> 82 <LinkTo 83 data-test-evaluation-job 84 @model={{concat evaluation.plainJobId "@" evaluation.namespace 85 }} 86 @route="jobs.job" 87 > 88 {{evaluation.plainJobId}} 89 </LinkTo> 90 </span> 91 <span class="pair"> 92 <span class="term"> 93 Triggered By 94 </span> 95 {{evaluation.triggeredBy}} 96 </span> 97 </div> 98 <div style="display: flex; flex-direction: column"> 99 <span class="pair"> 100 <span class="term"> 101 Priority 102 </span> 103 {{evaluation.priority}} 104 </span> 105 </div> 106 <div style="display: flex; flex-direction: column"> 107 <span class="pair"> 108 <span class="term"> 109 Created 110 </span> 111 {{format-month-ts evaluation.createTime}} 112 </span> 113 <span class="pair"> 114 <span class="term"> 115 Placement Failure 116 </span> 117 {{evaluation.hasPlacementFailures}} 118 </span> 119 </div> 120 </div> 121 </div> 122 {{! Placement Failures}} 123 {{#if evaluation.failedTGAllocs}} 124 <div class="boxed-section is-danger"> 125 <div class="boxed-section-head"> 126 Placement Failures 127 </div> 128 <div class="boxed-section-body"> 129 {{#each evaluation.failedTGAllocs as |placementFailure|}} 130 <PlacementFailure @failedTGAlloc={{placementFailure}} /> 131 {{/each}} 132 </div> 133 </div> 134 {{/if}} 135 {{! Related Evaluations}} 136 {{#if this.descendentsMap}} 137 <EvaluationSidebar::RelatedEvaluations 138 @fns={{hash 139 handleResize=this.handleResize 140 handleEvaluationClick=@fns.handleEvaluationClick 141 }} 142 @data={{hash 143 width=this.width 144 height=this.height 145 parentEvaluation=this.parentEvaluation 146 descendentsMap=this.descendentsMap 147 activeEvaluationID=this.currentEvalDetail.id 148 }} 149 /> 150 {{else}} 151 <div class="boxed-section"> 152 <div class="boxed-section-head"> 153 Related Evaluations 154 </div> 155 <div class="boxed-section-body"> 156 <div data-test-eval-error class="error-message title"> 157 <p data-test-error-message class="subtitle"> 158 The related evaluations cannot be visualized. 159 </p> 160 </div> 161 </div> 162 </div> 163 {{/if}} 164 {{! Evaluation JSON Response}} 165 <div class="boxed-section evaluation-response"> 166 <div class="boxed-section-head"> 167 Evaluation Response 168 </div> 169 <div class="boxed-section-body is-full-bleed"> 170 <JsonViewer @json={{evaluation}} /> 171 </div> 172 </div> 173 {{/if}} 174 </div> 175 </Portal> 176 {{/let}}