diff --git a/CHANGELOG.unreleased.md b/CHANGELOG.unreleased.md index dd36a1526..a7dd1ef7b 100644 --- a/CHANGELOG.unreleased.md +++ b/CHANGELOG.unreleased.md @@ -9,6 +9,7 @@ - [VM/Disks] Display task information when importing VDIs (PR [#7197](https://github.com/vatesfr/xen-orchestra/pull/7197)) - [REST API] Support VM import using the XVA format +- [Task] Show the related SR on the Garbage Collector Task ( vdi coalescing) (PR [#7189](https://github.com/vatesfr/xen-orchestra/pull/7189)) ### Bug fixes diff --git a/packages/xo-server/src/xapi-object-to-xo.mjs b/packages/xo-server/src/xapi-object-to-xo.mjs index 43b2ee01d..e1b76f075 100644 --- a/packages/xo-server/src/xapi-object-to-xo.mjs +++ b/packages/xo-server/src/xapi-object-to-xo.mjs @@ -697,6 +697,10 @@ const TRANSFORMS = { // ----------------------------------------------------------------- task(obj) { + let applies_to + if (obj.other_config.applies_to) { + applies_to = obj.$xapi.getObject(obj.other_config.applies_to, undefined).uuid + } return { allowedOperations: obj.allowed_operations, created: toTimestamp(obj.created), @@ -708,7 +712,7 @@ const TRANSFORMS = { result: obj.result, status: obj.status, xapiRef: obj.$ref, - + applies_to, $host: link(obj, 'resident_on'), } }, diff --git a/packages/xo-web/src/xo-app/tasks/index.js b/packages/xo-web/src/xo-app/tasks/index.js index 30b1e538e..07906e2e0 100644 --- a/packages/xo-web/src/xo-app/tasks/index.js +++ b/packages/xo-web/src/xo-app/tasks/index.js @@ -66,15 +66,22 @@ const FILTERS = { @connectStore(() => ({ host: createGetObject((_, props) => props.item.$host), + appliesTo: createGetObject((_, props) => props.item.applies_to), })) export class TaskItem extends Component { render() { - const { host, item: task } = this.props - + const { appliesTo, host, item: task } = this.props + // garbage collection task has an uuid in the desc + const showDesc = task.name_description && task.name_label !== 'Garbage Collection' return (
- {task.name_label} ({task.name_description && `${task.name_description} `} + {task.name_label} ({showDesc && `${task.name_description} `} on {host ? {host.name_label} : `unknown host − ${task.$host}`}) + {appliesTo !== undefined && ( + + , applies to {appliesTo.name_label} + + )} {task.disappeared === undefined && ` ${Math.round(task.progress * 100)}%`}
)