Commit Graph

6019 Commits

Author SHA1 Message Date
Fabian Ebner
bccfb43f9f ui: node: storage removal: add checkbox for cleaning up disks
and factor out a SafeDestroyStorage sub-class to avoid duplication.

Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2021-11-10 14:03:27 +01:00
Fabian Ebner
14066c09ce ui: node: add destroy menu for directory, lvm, lvmthin, zfs
Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2021-11-10 14:03:27 +01:00
Fabian Ebner
03c4aed888 ui: utils: add task descriptions for disk removal
For 'dirremove', it already exists.

Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2021-11-10 14:03:27 +01:00
Fabian Ebner
92a1b603f7 ui: node: lvmthin: add volume group to columns
to be able to identify thin pools even if they have the same name.

Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2021-11-10 14:03:27 +01:00
Fabian Ebner
978e2aeb93 ui: node: directory: use gettext for 'Directory'
It's also localised when adding a storage for example.

Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2021-11-10 14:03:27 +01:00
Lorenz Stechauner
e1c245a52b ui/UploadToStorage: check file extension
Signed-off-by: Lorenz Stechauner <l.stechauner@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-by: Dominik Csapak <d.csapak@proxmox.com>
2021-11-10 10:08:11 +01:00
Lorenz Stechauner
f6bd4ab688 ui/UploadToStorage: add TaskViewer
Signed-off-by: Lorenz Stechauner <l.stechauner@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-by: Dominik Csapak <d.csapak@proxmox.com>
2021-11-10 09:21:44 +01:00
Lorenz Stechauner
2025820383 fix #3505: ui/UploadToStorage: add checksum and algorithm
Signed-off-by: Lorenz Stechauner <l.stechauner@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-by: Dominik Csapak <d.csapak@proxmox.com>
2021-11-10 09:21:44 +01:00
Lorenz Stechauner
f9f45aaca7 ui: refactor UploadToStorage.js
this also removes the "content" selector from the window.
as far as it seems, this selector was never able to select
more than one entry, so it was useless.

the check for FormData() is also removed, because this is
supported by all major browsers for a long time. therefore
doStandardSubmit() is also not necessary.

Signed-off-by: Lorenz Stechauner <l.stechauner@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-by: Dominik Csapak <d.csapak@proxmox.com>
2021-11-10 09:21:44 +01:00
Lorenz Stechauner
26bfeca185 ui: move upload window into UploadToStorage.js
Signed-off-by: Lorenz Stechauner <l.stechauner@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-by: Dominik Csapak <d.csapak@proxmox.com>
2021-11-10 09:21:44 +01:00
Thomas Lamprecht
503866f966 d/control: bump versioned dependency for pve-cluster
ensure we got the notes property for the datacenter config and also
the newly registered/watched jobs.cfg for future pveschedule patches.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-11-09 18:35:14 +01:00
Dominic Jäger
bd800443db ui: close #3504: Add datacenter notes
Like notes for nodes.

Signed-off-by: Dominic Jäger <d.jaeger@proxmox.com>
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2021-11-09 18:33:47 +01:00
Fabian Grünbichler
823ae6e976 d/control: bump b-d/depends
for replication and protection changes

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2021-11-09 17:47:26 +01:00
Fabian Ebner
7fec535451 ui: prune: also handle new 'renamed' keep reason
The back-end no longer returns 'protected' for renamed backups, and
'protected' backups are now their own kind.

Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2021-11-09 11:33:16 +01:00
Fabian Ebner
b4818ea7b1 ui: backup views: add button to change protection status
Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2021-11-09 11:33:16 +01:00
Fabian Ebner
61cf265897 ui: backup views: add protected column
Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2021-11-09 11:33:16 +01:00
Fabian Ebner
c0eadd5543 ui: storage content: avoid redundant options hasNotesColumn and hideColumns
Replace both by a showColumns option instead. As the current use of
hasNotesColumn already indicates, when new content-specific columns
are added, it is more natural for each derived class to specify the
columns it wants, rather than those it doesn't.

For hideColumns, there was no user. For hasNotesColumn, the only user
was the backup view.

Set the column information in the storage.BackupView class itself
rather than the instance (like hasNotesColumn was).

Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2021-11-09 11:33:16 +01:00
Fabian Ebner
2fc939a94d vzdump: skip protected backups for dumpdir pruning
Keeps the behavior consistent with what happens for storages. It also
is required to not get into conflict with the check in archive_remove,
i.e. pruning here marks a backup as 'remove' and then archive_remove
complains that it's protected.

Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2021-11-09 11:33:16 +01:00
Fabian Ebner
4af70154fd test: replication: remove mocking for obsolete volume_snapshot_list
Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2021-11-09 11:33:16 +01:00
Fabian Ebner
3847fb5ec0 test: replication: mock volume_snapshot_info
Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2021-11-09 11:33:16 +01:00
Fabian Ebner
0a7bd2d204 test: replication: avoid implicit return for volume_snapshot
Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2021-11-09 11:33:16 +01:00
Thomas Lamprecht
cc80f76528 ui: guest remove: modernize code and cleanup
drop only partially used intermediate value, use template strings,
reduce line bloat while trying to keep it readable.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-11-09 11:00:51 +01:00
Aaron Lauterer
986ccfe4de ui: lxc: resources: add Detach text for mountpoints
Instead of showing 'Remove' for a mountpoint, change the text to
'Detach' and only show 'Remove' for unused volumes.

This aligns the behaviour with VMs and will make it clear, that a
mountpoint first needs to be detached before it can be fully removed.

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
2021-11-09 10:50:35 +01:00
Thomas Lamprecht
539442a3c9 bump version to 7.0-14
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-11-07 21:23:14 +01:00
Dominik Csapak
d66b726c0e ceph: fix version check shortcut
with 'get_node_kv', we get a hash which contains the value for
all nodes in the cluster (with the nodename as key), so we have to use
the value from the hash corresponding to our nodename.

also the 'str' property is inside the 'version' hash

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2021-11-07 21:03:13 +01:00
Thomas Lamprecht
1b72acbf2f ui: join info: rework error handling/checking for no-cluster
check if error is set before trying to access it and check for the
new HTTP code a newer pve-cluster may return, and do a more fuzzy
match for older ones.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-11-07 21:01:55 +01:00
Thomas Lamprecht
6152988ea6 ui: join info: code cleanup and future proof
we may want to return null or an empty object for the join info on a
node without a cluster in the future (i.e., PVE 8.0+), so get
compatible for that now already as it costs not much and as we can
now use es2020 we even can write the object access nicer..

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-11-07 20:57:39 +01:00
Dominik Csapak
9ab0c06954 ui: dc/Cluster: show errors on 'join' info in the view
so instead of getting the 'standalone node' message, the grid
is masked with the actual api error

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2021-11-05 14:34:15 +01:00
Fabian Ebner
98301c0877 ui: guest backup grid: monitor store errors
so that users see when something went wrong.

Don't mask the grid directly, but rather only its view so that the
title bar can be used for selecting another storage during load.

Reported in the community forum:
https://forum.proxmox.com/threads/get-backups-from-proxmox-randomly-fails.98383/

Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2021-11-05 13:55:44 +01:00
Dominik Csapak
d738b11e37 ui: window/Wizard: make it a little wider
for the multi disk panel, we want it to be just a little wider, so
that all form fields are still readable

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-by: Lorenz Stechauner <l.stechauner@proxmox.com>
Tested-by: Aaron Lauterer <a.lauterer@proxmox.com>
2021-11-05 09:50:36 +01:00
Dominik Csapak
9dbc4dfa88 ui: add qemu/MultiHDEdit and use it in the wizard
uses the MultiDiskPanel as base and implements the necessary
functions/variables

this allows now to create a vm also without any disk

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-by: Lorenz Stechauner <l.stechauner@proxmox.com>
Tested-by: Aaron Lauterer <a.lauterer@proxmox.com>
2021-11-05 09:50:36 +01:00
Dominik Csapak
af07d3d3d6 ui: add lxc/MultiMPEdit and use in lxc/CreateWizard
uses the MultiDiskPanel as a base and implements the necessary
functions/values

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-by: Lorenz Stechauner <l.stechauner@proxmox.com>
Tested-by: Aaron Lauterer <a.lauterer@proxmox.com>
2021-11-05 09:50:36 +01:00
Dominik Csapak
5f219fd3ba ui: add MultiDiskPanel
this adds a new panel where a user can add multiple disks, intended
for use in the wizard.

Has a simple grid for displaying the already added disks and displays
a warning triangle if the disk is not valid.

this is a base panel for adding multiple disks/mps for vms/ct
respectively.

this combines the shared behavior and layout and defines the functions
that subclasses must define

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-by: Lorenz Stechauner <l.stechauner@proxmox.com>
Tested-by: Aaron Lauterer <a.lauterer@proxmox.com>
2021-11-05 09:50:36 +01:00
Dominik Csapak
87161abf38 ui: lxc/MPEdit: add selectFree toggle
that sets the given vmconfig at the start and selects the first
free mpid

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-by: Lorenz Stechauner <l.stechauner@proxmox.com>
Tested-by: Aaron Lauterer <a.lauterer@proxmox.com>
2021-11-05 09:50:36 +01:00
Dominik Csapak
143a507181 ui: lxc/MPEdit: fire diskidchange event
when the diskid changes

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-by: Lorenz Stechauner <l.stechauner@proxmox.com>
Tested-by: Aaron Lauterer <a.lauterer@proxmox.com>
2021-11-05 09:50:36 +01:00
Dominik Csapak
09e7ac8b63 ui: lxc/MPEdit: add updateVMConfig
helper for the upcoming MultiMPEdit

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-by: Lorenz Stechauner <l.stechauner@proxmox.com>
Tested-by: Aaron Lauterer <a.lauterer@proxmox.com>
2021-11-05 09:50:36 +01:00
Dominik Csapak
cef0b24cff ui: qemu/SystemEdit: add spacing and heading for 'firmware' options
So that they are more visually seperated from the rest of the options.
Use the same style as in the realm sync panel.

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2021-11-03 17:05:26 +01:00
Dominik Csapak
4b105ec574 ui: storage/PBSEdit: do not send server on edit
it's a fixed value for the storage config, so the api would reject it

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2021-10-28 15:55:42 +02:00
Lorenz Stechauner
ae595bc16c ui: storage/PBSEdit: add port to server field
this gives users the chance to supply the port nr in the gui,
without having to add a extra new field to the panel.

using the same implementation as in RemoteEdit.js in PBS.

Signed-off-by: Lorenz Stechauner <l.stechauner@proxmox.com>
2021-10-28 15:46:24 +02:00
Thomas Lamprecht
7d21fd936a ui: clarify labels for EFI/TPM storage
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-10-21 13:41:06 +02:00
Stefan Reiter
a9175b0ba1 ui: add 'win11' ostype and set defaults in wizard
Windows 11 requires a TPM and secure boot, so try to auto-enable both.

Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
Tested-By: Aaron Lauterer <a.lauterer@proxmox.com>
2021-10-21 12:41:30 +02:00
Stefan Reiter
b0a0b17dbc ui: SystemEdit: promote advanced settings to normal
and reorder the panel a bit, as otherwise I found it *very* cluttered.

Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
Tested-By: Aaron Lauterer <a.lauterer@proxmox.com>
2021-10-21 12:41:25 +02:00
Thomas Lamprecht
401a5c1f76 d/control: bump versioned dependency on libpve-storage-perl
to ensure the new selectable `preallocation` property is available.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-10-21 12:15:16 +02:00
Lorenz Stechauner
bb157f5d6d fix 3850: ui: storage: using PreallocationSelector for file based storage types
Signed-off-by: Lorenz Stechauner <l.stechauner@proxmox.com>
Reviewed-by: Fabian Ebner <f.ebner@proxmox.com>
Tested-by: Fabian Ebner <f.ebner@proxmox.com>
2021-10-21 12:14:38 +02:00
Lorenz Stechauner
418e9c13ae ui: add PreallocationSelector
Signed-off-by: Lorenz Stechauner <l.stechauner@proxmox.com>
Reviewed-by: Fabian Ebner <f.ebner@proxmox.com>
Tested-by: Fabian Ebner <f.ebner@proxmox.com>
2021-10-21 12:14:38 +02:00
Dominik Csapak
d8da55382a ui: resourcetree: move guest position on template creation
we sort templates at the end normally, but if we convert a guest to a
template, it was not moved in the tree

add it to the list of attributes that are checked for a move

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-By: Aaron Lauterer <a.lauterer@proxmox.com>
2021-10-21 11:48:38 +02:00
Thomas Lamprecht
e8c41dc561 statd: rebalance_lxc_containers: use grep instead of for+next-if
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-10-20 17:01:48 +02:00
Thomas Lamprecht
b707257a16 statd: rebalance_lxc_containers: code bload reduction
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-10-20 16:47:06 +02:00
Oguz Bektas
911a8e4f48 pvestatd: fix rebalancing cpusets for cgroupv2
currently we only check the entry for cgroup v1 to decide if cores
should be rebalanced. extend the check to include cgroup v2 entries.

reported in forum [0]

[0]: https://forum.proxmox.com/threads/hard-set-streams-for-lxc-container.97768/

Signed-off-by: Oguz Bektas <o.bektas@proxmox.com>
Tested-By: Aaron Lauterer <a.lauterer@proxmox.com>
2021-10-20 16:47:06 +02:00
Thomas Lamprecht
b1a3af5c65 ceph services: get_cluster_service: code cleanup
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-10-20 16:47:06 +02:00