2022-01-03 16:13:18 +00:00
|
|
|
{{#if this.job.hasClientStatus}}
|
2022-01-03 15:53:52 +00:00
|
|
|
<ListAccordion
|
2022-01-26 16:30:06 +00:00
|
|
|
data-test-job-client-summary
|
2022-01-03 15:53:52 +00:00
|
|
|
@source={{array this.job}}
|
|
|
|
@key="id"
|
|
|
|
@startExpanded={{this.isExpanded}}
|
|
|
|
@onToggle={{action this.persist}} as |a|
|
|
|
|
>
|
2022-01-05 17:48:06 +00:00
|
|
|
{{#if (can "read client")}}
|
|
|
|
<a.head @buttonLabel={{if a.isOpen "collapse" "expand"}}>
|
|
|
|
<div class="columns">
|
|
|
|
<div class="column is-minimum nowrap">
|
|
|
|
Job Status in Client
|
|
|
|
<span class="badge {{if a.isOpen "is-white" "is-light"}}">
|
|
|
|
{{this.jobClientStatus.totalNodes}}
|
|
|
|
</span>
|
|
|
|
<span
|
|
|
|
class="tooltip multiline"
|
|
|
|
aria-label="Aggreate status of job's allocations in each client."
|
|
|
|
>
|
|
|
|
{{x-icon "info-circle-outline" class="is-faded"}}
|
|
|
|
</span>
|
2022-01-03 15:53:52 +00:00
|
|
|
</div>
|
2022-01-05 17:48:06 +00:00
|
|
|
{{#unless a.isOpen}}
|
|
|
|
<div class="column">
|
|
|
|
<div class="inline-chart bumper-left">
|
|
|
|
<JobClientStatusBar
|
|
|
|
@onSliceClick={{action this.onSliceClick}}
|
|
|
|
@job={{this.job}}
|
|
|
|
@jobClientStatus={{this.jobClientStatus}}
|
|
|
|
@isNarrow={{true}}
|
|
|
|
/>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
{{/unless}}
|
|
|
|
</div>
|
|
|
|
</a.head>
|
|
|
|
<a.body>
|
|
|
|
<JobClientStatusBar
|
|
|
|
@onSliceClick={{action this.onSliceClick}}
|
|
|
|
@job={{this.job}}
|
|
|
|
@jobClientStatus={{this.jobClientStatus}}
|
|
|
|
class="split-view" as |chart|
|
|
|
|
>
|
|
|
|
<ol data-test-legend class="legend">
|
|
|
|
{{#each chart.data as |datum index|}}
|
|
|
|
<li
|
|
|
|
data-test-legent-label="{{datum.className}}"
|
|
|
|
class="{{datum.className}}
|
2022-01-12 16:18:01 +00:00
|
|
|
|
2022-01-05 17:48:06 +00:00
|
|
|
{{if (eq datum.label chart.activeDatum.label) "is-active"}}
|
2022-01-12 16:18:01 +00:00
|
|
|
|
2022-01-05 17:48:06 +00:00
|
|
|
{{if (eq datum.value 0) "is-empty" "is-clickable"}}"
|
|
|
|
>
|
|
|
|
{{#if (gt datum.value 0)}}
|
|
|
|
<LinkTo
|
|
|
|
@route="jobs.job.clients"
|
|
|
|
@model={{this.job}}
|
|
|
|
@query={{datum.legendLink.queryParams}}
|
|
|
|
>
|
|
|
|
<JobPage::Parts::SummaryLegendItem
|
|
|
|
@datum={{datum}}
|
|
|
|
@index={{index}}
|
|
|
|
/>
|
|
|
|
</LinkTo>
|
|
|
|
{{else}}
|
2022-01-03 15:53:52 +00:00
|
|
|
<JobPage::Parts::SummaryLegendItem
|
|
|
|
@datum={{datum}}
|
|
|
|
@index={{index}}
|
|
|
|
/>
|
2022-01-05 17:48:06 +00:00
|
|
|
{{/if}}
|
|
|
|
</li>
|
|
|
|
{{/each}}
|
|
|
|
</ol>
|
|
|
|
</JobClientStatusBar>
|
|
|
|
</a.body>
|
|
|
|
{{else}}
|
|
|
|
<a.head @buttonLabel={{if a.isOpen "collapse" "expand"}}>
|
|
|
|
<div class="columns">
|
|
|
|
<div class="column is-minimum nowrap">
|
|
|
|
Job Status in Client
|
|
|
|
<span
|
|
|
|
class="tooltip multiline"
|
|
|
|
aria-label="Aggreate status of job's allocations in each client."
|
|
|
|
>
|
|
|
|
{{x-icon "info-circle-outline" class="is-faded"}}
|
|
|
|
</span>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</a.head>
|
|
|
|
<a.body>
|
|
|
|
<div class="empty-message">
|
|
|
|
<h3 data-test-nodes-not-authorized class="empty-message-headline">
|
|
|
|
Not Authorized
|
|
|
|
</h3>
|
|
|
|
<p class="empty-message-body">
|
|
|
|
Your
|
|
|
|
<LinkTo @route="settings.tokens">
|
|
|
|
ACL token
|
|
|
|
</LinkTo>
|
|
|
|
does not provide
|
|
|
|
<code>
|
|
|
|
node:read
|
|
|
|
</code>
|
|
|
|
permission.
|
|
|
|
</p>
|
|
|
|
</div>
|
|
|
|
</a.body>
|
|
|
|
{{/if}}
|
2022-01-03 15:53:52 +00:00
|
|
|
</ListAccordion>
|
|
|
|
{{/if}}
|