[pve-devel] [PATCH manager] ui: file-restore: start the file-restore on the selected node

Dominik Csapak d.csapak at proxmox.com
Thu Jun 10 10:40:35 CEST 2021


On 6/10/21 10:23, Stefan Reiter wrote:
> On 6/10/21 9:37 AM, Dominik Csapak wrote:
>> and not the node where the browser connects.
>> there are at least two good reasons for this:
>> * it is confusing, since the user would expect it to start where
>>    the ui is pointint to
>> * the storage may not be available on the node the browser connects
>>    to, but it must be available on the node selected in the ui
>>
>> Signed-off-by: Dominik Csapak <d.csapak at proxmox.com>
>> ---
> 
> Does this work with the proxying code for downloading files? I believe 
> my original reasoning behind this was because my implementation for 
> quickly forwarding data between the unprivileged and privileged daemons 
> uses a local Unix socket. Thus forwarding between nodes (as I understand 
> this will do?) would be subject to caching the data at the node being 
> contacted, before sending it to the browser.

well it does work, since i sucessfully downloaded some files from a backup

what exactly do you mean with
 > would be subject to caching the data at the node being
 > contacted, before sending it to the browser.

yes the download api call goes afaiu

proxy at node1(the one the browser connects to) ->
proxy at node2 (node selected from tree) ->
daemon at node2 ->
vm at node2

> 
>>   www/manager6/grid/BackupView.js    | 4 ++--
>>   www/manager6/storage/BackupView.js | 4 ++--
>>   2 files changed, 4 insertions(+), 4 deletions(-)
>>
>> diff --git a/www/manager6/grid/BackupView.js 
>> b/www/manager6/grid/BackupView.js
>> index 8825ed96..fbed4118 100644
>> --- a/www/manager6/grid/BackupView.js
>> +++ b/www/manager6/grid/BackupView.js
>> @@ -247,8 +247,8 @@ Ext.define('PVE.grid.BackupView', {
>>           let isVMArchive = 
>> PVE.Utils.volume_is_qemu_backup(rec.data.volid, rec.data.format);
>>           Ext.create('Proxmox.window.FileBrowser', {
>>               title: gettext('File Restore') + " - " + rec.data.text,
>> -            listURL: 
>> `/api2/json/nodes/localhost/storage/${storage}/file-restore/list`,
>> -            downloadURL: 
>> `/api2/json/nodes/localhost/storage/${storage}/file-restore/download`,
>> +            listURL: 
>> `/api2/json/nodes/${nodename}/storage/${storage}/file-restore/list`,
>> +            downloadURL: 
>> `/api2/json/nodes/${nodename}/storage/${storage}/file-restore/download`,
>>               extraParams: {
>>               volume: rec.data.volid,
>>               },
>> diff --git a/www/manager6/storage/BackupView.js 
>> b/www/manager6/storage/BackupView.js
>> index 0613c94d..c287ec63 100644
>> --- a/www/manager6/storage/BackupView.js
>> +++ b/www/manager6/storage/BackupView.js
>> @@ -114,8 +114,8 @@ Ext.define('PVE.storage.BackupView', {
>>               let isVMArchive = 
>> PVE.Utils.volume_is_qemu_backup(rec.data.volid, rec.data.format);
>>               Ext.create('Proxmox.window.FileBrowser', {
>>               title: gettext('File Restore') + " - " + rec.data.text,
>> -            listURL: 
>> `/api2/json/nodes/localhost/storage/${me.storage}/file-restore/list`,
>> -            downloadURL: 
>> `/api2/json/nodes/localhost/storage/${me.storage}/file-restore/download`,
>> +            listURL: 
>> `/api2/json/nodes/${nodename}/storage/${me.storage}/file-restore/list`,
>> +            downloadURL: 
>> `/api2/json/nodes/${nodename}/storage/${me.storage}/file-restore/download`, 
>>
>>               extraParams: {
>>                   volume: rec.data.volid,
>>               },
>>






More information about the pve-devel mailing list