From 6c6eb053a6ea443867ae9f9bc1badbb2108323c7 Mon Sep 17 00:00:00 2001 From: Michael Lange Date: Tue, 28 Jul 2020 18:24:24 -0700 Subject: [PATCH] Fix scale and summary adapters to correct live reloading --- ui/app/adapters/job-scale.js | 6 +++++- ui/app/adapters/job-summary.js | 6 +++++- ui/app/adapters/watchable-namespace-ids.js | 3 ++- ui/app/routes/jobs/job/task-group.js | 8 ++++---- 4 files changed, 16 insertions(+), 7 deletions(-) diff --git a/ui/app/adapters/job-scale.js b/ui/app/adapters/job-scale.js index 8cca86df718f..f068e69a848e 100644 --- a/ui/app/adapters/job-scale.js +++ b/ui/app/adapters/job-scale.js @@ -1,3 +1,7 @@ import WatchableNamespaceIDs from './watchable-namespace-ids'; -export default class JobScaleAdapter extends WatchableNamespaceIDs {} +export default class JobScaleAdapter extends WatchableNamespaceIDs { + urlForFindRecord(id, type, hash) { + return super.urlForFindRecord(id, 'job', hash, 'scale'); + } +} diff --git a/ui/app/adapters/job-summary.js b/ui/app/adapters/job-summary.js index 7151b2100954..62ce05a5b2da 100644 --- a/ui/app/adapters/job-summary.js +++ b/ui/app/adapters/job-summary.js @@ -1,3 +1,7 @@ import WatchableNamespaceIDs from './watchable-namespace-ids'; -export default class JobSummaryAdapter extends WatchableNamespaceIDs {} +export default class JobSummaryAdapter extends WatchableNamespaceIDs { + urlForFindRecord(id, type, hash) { + return super.urlForFindRecord(id, 'job', hash, 'summary'); + } +} diff --git a/ui/app/adapters/watchable-namespace-ids.js b/ui/app/adapters/watchable-namespace-ids.js index 65471283ebe1..5ca12a368812 100644 --- a/ui/app/adapters/watchable-namespace-ids.js +++ b/ui/app/adapters/watchable-namespace-ids.js @@ -35,9 +35,10 @@ export default class WatchableNamespaceIDs extends Watchable { return associateNamespace(url, namespace); } - urlForFindRecord(id, type, hash) { + urlForFindRecord(id, type, hash, pathSuffix) { const [name, namespace] = JSON.parse(id); let url = super.urlForFindRecord(name, type, hash); + if (pathSuffix) url += `/${pathSuffix}`; return associateNamespace(url, namespace); } diff --git a/ui/app/routes/jobs/job/task-group.js b/ui/app/routes/jobs/job/task-group.js index 4921f57ca10b..e4f1ad9edd50 100644 --- a/ui/app/routes/jobs/job/task-group.js +++ b/ui/app/routes/jobs/job/task-group.js @@ -55,8 +55,8 @@ export default class TaskGroupRoute extends Route.extend(WithWatchers) { const job = model.get('job'); controller.set('watchers', { job: this.watchJob.perform(job), - summary: this.watchSummary.perform(job), - scale: this.watchScale.perform(job), + summary: this.watchSummary.perform(job.get('summary')), + scale: this.watchScale.perform(job.get('scaleState')), allocations: this.watchAllocations.perform(job), latestDeployment: job.get('supportsDeployments') && this.watchLatestDeployment.perform(job), }); @@ -64,8 +64,8 @@ export default class TaskGroupRoute extends Route.extend(WithWatchers) { } @watchRecord('job') watchJob; - @watchRelationship('job-summary') watchSummary; - @watchRelationship('job-scale') watchScale; + @watchRecord('job-summary') watchSummary; + @watchRecord('job-scale') watchScale; @watchRelationship('allocations') watchAllocations; @watchRelationship('latestDeployment') watchLatestDeployment;