From d796b827f6e585d4eaffece4460d31bf6a733c6e Mon Sep 17 00:00:00 2001 From: Bryce Date: Tue, 27 Jan 2026 09:32:19 -0800 Subject: [PATCH] add volumes.add and volumes.remove tasks to the spec --- .../containers/summaries/VolumeSummary.yml | 5 +++++ .../vms/task/VirtualMachineAddVolumesAction.yml | 15 +++++++++++++++ .../task/VirtualMachineRemoveVolumesAction.yml | 15 +++++++++++++++ .../schemas/vms/task/VirtualMachineTask.yml | 4 ++++ 4 files changed, 39 insertions(+) create mode 100644 components/schemas/vms/task/VirtualMachineAddVolumesAction.yml create mode 100644 components/schemas/vms/task/VirtualMachineRemoveVolumesAction.yml diff --git a/components/schemas/containers/summaries/VolumeSummary.yml b/components/schemas/containers/summaries/VolumeSummary.yml index ed46f3b2..e8c7c941 100644 --- a/components/schemas/containers/summaries/VolumeSummary.yml +++ b/components/schemas/containers/summaries/VolumeSummary.yml @@ -21,3 +21,8 @@ properties: id: $ref: ../../ID.yml - type: "null" + removed: + description: The time stamp of the volume's removal, if applicable. + oneOf: + - $ref: ../../DateTime.yml + - type: "null" diff --git a/components/schemas/vms/task/VirtualMachineAddVolumesAction.yml b/components/schemas/vms/task/VirtualMachineAddVolumesAction.yml new file mode 100644 index 00000000..99b7c3ce --- /dev/null +++ b/components/schemas/vms/task/VirtualMachineAddVolumesAction.yml @@ -0,0 +1,15 @@ +title: VirtualMachineAddVolumesAction +type: object +required: + - action + - contents +properties: + action: + type: string + enum: + - volumes.add + contents: + type: array + description: Array of volume configs to add. + items: + $ref: ../config/volumes/VirtualMachineVolumeConfig.yml diff --git a/components/schemas/vms/task/VirtualMachineRemoveVolumesAction.yml b/components/schemas/vms/task/VirtualMachineRemoveVolumesAction.yml new file mode 100644 index 00000000..e546e527 --- /dev/null +++ b/components/schemas/vms/task/VirtualMachineRemoveVolumesAction.yml @@ -0,0 +1,15 @@ +title: VirtualMachineRemoveVolumesAction +type: object +required: + - action + - contents +properties: + action: + type: string + enum: + - volumes.remove + contents: + type: array + description: Array of volume IDs to remove. + items: + $ref: ../../ID.yml diff --git a/components/schemas/vms/task/VirtualMachineTask.yml b/components/schemas/vms/task/VirtualMachineTask.yml index f98e1c62..ffcd2462 100644 --- a/components/schemas/vms/task/VirtualMachineTask.yml +++ b/components/schemas/vms/task/VirtualMachineTask.yml @@ -10,6 +10,8 @@ discriminator: ip.allocate: VirtualMachineIpAllocateAction.yml ip.unallocate: VirtualMachineIpUnallocateAction.yml volumes.reconfigure: VirtualMachineReconfigureVolumesAction.yml + volumes.add: VirtualMachineAddVolumesAction.yml + volumes.remove: VirtualMachineRemoveVolumesAction.yml oneOf: - $ref: VirtualMachineStartAction.yml - $ref: VirtualMachineStopAction.yml @@ -19,3 +21,5 @@ oneOf: - $ref: VirtualMachineIpAllocateAction.yml - $ref: VirtualMachineIpUnallocateAction.yml - $ref: VirtualMachineReconfigureVolumesAction.yml + - $ref: VirtualMachineAddVolumesAction.yml + - $ref: VirtualMachineRemoveVolumesAction.yml