[ui] Remove simulacral allocation stat in favor of live-updating one (#23306)

* Remove simulacral allocation stat in favor of live-updating one

* Tests remove dependency on job-summary as well
This commit is contained in:
Phil Renaud
2024-06-14 09:23:31 -04:00
committed by GitHub
parent 85430be6dd
commit eacf47a484
4 changed files with 11 additions and 26 deletions

3
.changelog/23306.txt Normal file
View File

@@ -0,0 +1,3 @@
```release-note:bug
ui: unbind job detail running allocations count from job-summary endpoint
```

View File

@@ -32,7 +32,7 @@
All allocations have completed successfully
{{else}}
<strong>
{{@job.runningAllocs ~}}
{{this.runningAllocs.length ~}}
{{#unless this.atMostOneAllocPerNode ~}}
{{#if (eq @job.type "batch") ~}}
/{{this.totalNonCompletedAllocs}}
@@ -42,7 +42,7 @@
{{/unless}}
</strong>
{{#if (eq @job.type "batch") ~}}Remaining{{/if}}
{{pluralize "Allocation" @job.runningAllocs}} Running
{{pluralize "Allocation" this.runningAllocs.length}} Running
{{/if}}
</h3>
<JobStatus::AllocationStatusRow @allocBlocks={{this.allocBlocks}} @steady={{true}} />

View File

@@ -185,6 +185,10 @@ export default class JobStatusPanelSteadyComponent extends Component {
return this.job.allocations.filter((a) => !a.isOld && a.hasBeenRestarted);
}
get runningAllocs() {
return this.job.allocations.filter((a) => a.clientStatus === 'running');
}
get completedAllocs() {
return this.job.allocations.filter(
(a) => !a.isOld && a.clientStatus === 'complete'

View File

@@ -979,19 +979,6 @@ module('Acceptance | job status panel', function (hooks) {
'job',
JSON.stringify([job.id, 'default'])
);
// Weird Mirage thing: job summary factory is disconnected from its job and therefore allocations.
// So we manually create the number here.
let summary = await storedJob.get('summary');
summary
.get('taskGroupSummaries')
.objectAt(0)
.set(
'runningAllocs',
server.schema.allocations.where({
jobId: job.id,
clientStatus: 'running',
}).length
);
await settled();
@@ -1020,17 +1007,8 @@ module('Acceptance | job status panel', function (hooks) {
nodeId: newNode.id,
});
summary
.get('taskGroupSummaries')
.objectAt(0)
.set(
'runningAllocs',
server.schema.allocations.where({
jobId: job.id,
clientStatus: 'running',
}).length
);
// simulate a blocking query update from /allocations
storedJob.allocations.reload();
await settled();
assert.dom('.running-allocs-title').hasText('4 Allocations Running');