]> git.proxmox.com Git - pve-manager.git/log
pve-manager.git
2 years agoui: lxc/qemu: add disk reassign and action submenu
Aaron Lauterer [Tue, 5 Apr 2022 12:30:14 +0000 (14:30 +0200)]
ui: lxc/qemu: add disk reassign and action submenu

For the new HDReassign component, we follow the approach of HDMove to
have one componend for qemu and lxc.

To avoid button clutter, a new "Disk/Volume action" button is
introduced. It holds the Move, Reassign and Resize buttons in a
sub-menu.

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Reviewed-by: Fabian Ebner <f.ebner@proxmox.com>
2 years agoui: utils: add nextFreeMP
Aaron Lauterer [Tue, 5 Apr 2022 12:30:13 +0000 (14:30 +0200)]
ui: utils: add nextFreeMP

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
Reviewed-by: Fabian Ebner <f.ebner@proxmox.com>
2 years agoui: utils: refactor mps to mp
Aaron Lauterer [Tue, 5 Apr 2022 12:30:12 +0000 (14:30 +0200)]
ui: utils: refactor mps to mp

Using the actual config key instead of the pluralization, makes it
easier in the situations where we need to match against it.

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
Reviewed-by: Fabian Ebner <f.ebner@proxmox.com>
2 years agoui: lxc: resources: consider rootfs as a disk again
Fabian Ebner [Thu, 7 Apr 2022 12:15:44 +0000 (14:15 +0200)]
ui: lxc: resources: consider rootfs as a disk again

Commit 809f6b6e ("ui: lxc resources: switch to vector based font
awesome icons") seems like an innocent change, but it broke the
(very brittle) logic here by removing the tdCls for rootfs.

Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2 years agoui: storage edit: retention: add max-protected-backups setting
Fabian Ebner [Tue, 29 Mar 2022 12:53:16 +0000 (14:53 +0200)]
ui: storage edit: retention: add max-protected-backups setting

Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2 years agovzdump: always pass full list to prune marking
Fabian Grünbichler [Wed, 6 Apr 2022 12:05:53 +0000 (14:05 +0200)]
vzdump: always pass full list to prune marking

else this single call site is subtly different from all the rest, which
could cause problems further down the line if we ever change the prune
logic.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2 years agovzdump: backup limit: only count unprotected backups
Fabian Ebner [Tue, 29 Mar 2022 12:53:15 +0000 (14:53 +0200)]
vzdump: backup limit: only count unprotected backups

since they are the ones relevant for pruning and protected backups
have their own separate limit.

Since get_backup_file_list is only used in places where the
unprotected backups are needed, adapt the helper accordingly.

If there is a storage, use PVE::Storage::volume_list to count the
unprotected backups. This avoids a direct invocation of the
proxmox-backup-client for PBS and the limit check can also work for
external storage plugins which might not be dir-based or name the
backups differently.

Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2 years agovzdump: backup file list: drop unused parameter
Fabian Ebner [Tue, 29 Mar 2022 12:53:14 +0000 (14:53 +0200)]
vzdump: backup file list: drop unused parameter

It's not used anymore since 77c7945123724564ea909439ea51b537a5d0b6c2
aligned pruning in a dumpdir with pruning on a storage.

Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2 years agofix #3976: api/backup: make schedule/starttime truly optional on update
Dominik Csapak [Fri, 1 Apr 2022 06:14:13 +0000 (08:14 +0200)]
fix #3976: api/backup: make schedule/starttime truly optional on update

on create we require either starttime (+dow) or a schedule, but when
updating an existing job, this is not necessary

before we changed to schedules, the starttime was not optional either on
update, but i think there is no reason to require the user to send the
schedule/startime along every time.

the gui will send all values every time, so that was never a problem there

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2 years agoui: render storage type: improve fallback
Thomas Lamprecht [Fri, 1 Apr 2022 15:28:36 +0000 (17:28 +0200)]
ui: render storage type: improve fallback

We support external storage plugins, e.g., for proprietary
technology, so a "unknown" value here may not actually mean that we
missed anything, so just return the type value 1:1 as fallback, that
gives the user a better idea about such a storage entry.

Reported-by: Joshua Huber <jhuber@blockbridge.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoJobs: don't schedule jobs with no computable next event
Dominik Csapak [Fri, 1 Apr 2022 11:24:44 +0000 (13:24 +0200)]
Jobs: don't schedule jobs with no computable next event

if we have a schedule that has no 'next event' we should skip the scheduling
instead of schedule every round

this can happen if someone sets an schedule that has no next match.
some examples:
* 2-31 00:00 (there is not February 31st)
* mon 2022-04-02 (this would be a saturday, not monday)
* 1970-1-1 (or every other exact date in the past)

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2 years agoui: vm hardware: module wide refactoring/cleanups/style changes/fixes
Thomas Lamprecht [Fri, 1 Apr 2022 14:43:52 +0000 (16:43 +0200)]
ui: vm hardware: module wide refactoring/cleanups/style changes/fixes

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoui: vm hardware: fix add-menu itemId casing
Thomas Lamprecht [Fri, 1 Apr 2022 14:41:44 +0000 (16:41 +0200)]
ui: vm hardware: fix add-menu itemId casing

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoui: vm: factor out add-HW menu handler to higher order fn
Thomas Lamprecht [Fri, 1 Apr 2022 14:06:14 +0000 (16:06 +0200)]
ui: vm: factor out add-HW menu handler to higher order fn

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoui: lxc resources: refactor add menu handler
Thomas Lamprecht [Fri, 1 Apr 2022 11:35:10 +0000 (13:35 +0200)]
ui: lxc resources: refactor add menu handler

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoui: lxc resources: switch to vector based font awesome icons
Thomas Lamprecht [Fri, 1 Apr 2022 09:20:54 +0000 (11:20 +0200)]
ui: lxc resources: switch to vector based font awesome icons

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoui: lxc resources: support font awesome icons directly
Thomas Lamprecht [Fri, 1 Apr 2022 08:44:01 +0000 (10:44 +0200)]
ui: lxc resources: support font awesome icons directly

like we do for the VMs hardware view

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoui: icons: swap pci bitmap to svg
Thomas Lamprecht [Fri, 1 Apr 2022 08:38:08 +0000 (10:38 +0200)]
ui: icons: swap pci bitmap to svg

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoapi: vzdump: extract config: add content type check
Fabian Ebner [Wed, 30 Mar 2022 10:24:35 +0000 (12:24 +0200)]
api: vzdump: extract config: add content type check

Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2 years agopveam: remove: add content type check
Fabian Ebner [Wed, 30 Mar 2022 10:24:34 +0000 (12:24 +0200)]
pveam: remove: add content type check

Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2 years agoapi: vzdump: extract config: check for VM.Backup privilege
Fabian Ebner [Wed, 30 Mar 2022 10:24:27 +0000 (12:24 +0200)]
api: vzdump: extract config: check for VM.Backup privilege

In preparation to have check_volume_access() always allow access for
users with Datastore.Allocate privilege. As to not automatically give
all such users permission to extract the config too.

Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2 years agoui: css: set correct font awesome grid font-size
Thomas Lamprecht [Thu, 31 Mar 2022 14:53:07 +0000 (16:53 +0200)]
ui: css: set correct font awesome grid font-size

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoui: qemu: switch CD drive icon to SVG
Thomas Lamprecht [Thu, 31 Mar 2022 14:52:39 +0000 (16:52 +0200)]
ui: qemu: switch CD drive icon to SVG

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoui: qemu: switch memory icon to SVG
Thomas Lamprecht [Thu, 31 Mar 2022 14:52:14 +0000 (16:52 +0200)]
ui: qemu: switch memory icon to SVG

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoui: cpu icon: enable crispEdges and increase stroke width slightly
Thomas Lamprecht [Thu, 31 Mar 2022 14:02:47 +0000 (16:02 +0200)]
ui: cpu icon: enable crispEdges and increase stroke width slightly

crisp edges avoids antialiasing, which is rather counterproductive on
this icon with straight lines that are in 90° to each other.

The higher stroke width makes it more similar to the previously used
bitmap one.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoui: qemu: switch processor icon to SVG
Thomas Lamprecht [Thu, 31 Mar 2022 13:43:40 +0000 (15:43 +0200)]
ui: qemu: switch processor icon to SVG

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agocss: fix parenthesis opening style
Thomas Lamprecht [Thu, 31 Mar 2022 13:39:13 +0000 (15:39 +0200)]
css: fix parenthesis opening style

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoreport: lsblk: merge/group parents of sub-trees
Thomas Lamprecht [Wed, 30 Mar 2022 13:33:10 +0000 (15:33 +0200)]
report: lsblk: merge/group parents of sub-trees

can cut down lines outputted, especially on lvm-thin or other systems
that have volumes listed duplicated. E.g.,

Note, if nothing can be merged the output is 1:1 the same as before,
so seems like a win-win to me.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoreport: lsblk: output more columns
Thomas Lamprecht [Wed, 30 Mar 2022 13:30:29 +0000 (15:30 +0200)]
report: lsblk: output more columns

Output columns that can help on debugging (e.g., physical sector
size, hot-pluggable, rotational, transport) or make it easier to
cross-correlate (model, fs-type)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoreport: report FS type in df call
Thomas Lamprecht [Wed, 30 Mar 2022 13:24:23 +0000 (15:24 +0200)]
report: report FS type in df call

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoui: sdn: options: flex all and drop collapsible
Thomas Lamprecht [Tue, 29 Mar 2022 15:37:27 +0000 (17:37 +0200)]
ui: sdn: options: flex all and drop collapsible

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agobump version to 7.1-12
Thomas Lamprecht [Tue, 29 Mar 2022 15:30:16 +0000 (17:30 +0200)]
bump version to 7.1-12

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoui: sdn: fix options panel headings case
Thomas Lamprecht [Tue, 29 Mar 2022 15:32:24 +0000 (17:32 +0200)]
ui: sdn: fix options panel headings case

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoapl info: update index to current repository state
Thomas Lamprecht [Tue, 29 Mar 2022 08:37:40 +0000 (10:37 +0200)]
apl info: update index to current repository state

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoui: sdn : controllers: bgp : add bgp-multipath-as-path-relax
Alexandre Derumier [Fri, 11 Feb 2022 09:33:45 +0000 (10:33 +0100)]
ui: sdn : controllers: bgp : add bgp-multipath-as-path-relax

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2 years agoui: sdn: zones: evpn : add rt-import
Alexandre Derumier [Fri, 11 Feb 2022 09:33:44 +0000 (10:33 +0100)]
ui: sdn: zones: evpn : add rt-import

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2 years agoui: sdn: zones: evpn : move controller option on top of the form
Alexandre Derumier [Fri, 11 Feb 2022 09:33:43 +0000 (10:33 +0100)]
ui: sdn: zones: evpn : move controller option on top of the form

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2 years agoui: sdn: zones: evpn : add exitnodes-primary
Alexandre Derumier [Fri, 11 Feb 2022 09:33:42 +0000 (10:33 +0100)]
ui: sdn: zones: evpn : add exitnodes-primary

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2 years agoui: sdn: zones: evpn : add disable-arp-nd-suppression
Alexandre Derumier [Fri, 11 Feb 2022 09:33:41 +0000 (10:33 +0100)]
ui: sdn: zones: evpn : add disable-arp-nd-suppression

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2 years agoapl info: trailing whitespace cleanups
Thomas Lamprecht [Tue, 29 Mar 2022 04:53:28 +0000 (06:53 +0200)]
apl info: trailing whitespace cleanups

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoapi: cluster: refactor and cleanup
Thomas Lamprecht [Thu, 24 Mar 2022 13:11:01 +0000 (14:11 +0100)]
api: cluster: refactor and cleanup

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agod/control: add missing libproxmox-rs-perl dependency
Fabian Grünbichler [Mon, 28 Mar 2022 09:34:05 +0000 (11:34 +0200)]
d/control: add missing libproxmox-rs-perl dependency

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2 years agoapi: fill in nodeconfig schema
Wolfgang Bumiller [Thu, 17 Mar 2022 10:26:02 +0000 (11:26 +0100)]
api: fill in nodeconfig schema

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2 years agonodeconfig: use common config parser
Wolfgang Bumiller [Thu, 17 Mar 2022 10:26:01 +0000 (11:26 +0100)]
nodeconfig: use common config parser

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2 years agod/control: bump versioned dependency for pve-common
Thomas Lamprecht [Thu, 17 Mar 2022 13:23:03 +0000 (14:23 +0100)]
d/control: bump versioned dependency for pve-common

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agobump version to 7.1-11
Thomas Lamprecht [Thu, 17 Mar 2022 13:09:16 +0000 (14:09 +0100)]
bump version to 7.1-11

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoswitch to Proxmox::RS::CalendarEvent
Wolfgang Bumiller [Tue, 1 Mar 2022 14:55:48 +0000 (15:55 +0100)]
switch to Proxmox::RS::CalendarEvent

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2 years agoapi: sdn: code/whitespace refactor/fixes
Thomas Lamprecht [Wed, 16 Mar 2022 16:00:50 +0000 (17:00 +0100)]
api: sdn: code/whitespace refactor/fixes

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoapi2 : network: anybridge: don't display bridges if user have access to vnets.
Alexandre Derumier [Mon, 4 Oct 2021 06:08:51 +0000 (08:08 +0200)]
api2 : network: anybridge: don't display bridges if user have access to vnets.

This remove vmbr* from bridgeselector if user have access to vnets.
if user need to have also access to vmbr, we can add a permission
in path "/sdn/vnets/vmbrX"

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2 years agopermpathstore: add sdn zones
Alexandre Derumier [Mon, 4 Oct 2021 06:08:50 +0000 (08:08 +0200)]
permpathstore: add sdn zones

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2 years agoui: sdn: zones: evpn : add exitnodes-local-routing && advertise-subnets
Alexandre Derumier [Sun, 5 Sep 2021 07:37:26 +0000 (09:37 +0200)]
ui: sdn: zones: evpn : add exitnodes-local-routing && advertise-subnets

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2 years agoui: lxc options: disable features edit as non-root when container is privileged
Fabian Ebner [Fri, 13 Aug 2021 09:10:12 +0000 (11:10 +0200)]
ui: lxc options: disable features edit as non-root when container is privileged

The backend won't allow any edits in this case, so better just disable
the edit button altogether.

Co-developed-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2 years agogui: add help button to qm guest agent window
Aaron Lauterer [Mon, 25 Jan 2021 14:54:10 +0000 (15:54 +0100)]
gui: add help button to qm guest agent window

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
2 years agoui: fw grid: eslint auto-fixes
Thomas Lamprecht [Wed, 16 Mar 2022 14:21:37 +0000 (15:21 +0100)]
ui: fw grid: eslint auto-fixes

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoui: firwall: change icmp type selector to a combogrid
Mira Limbeck [Fri, 29 May 2020 12:22:06 +0000 (14:22 +0200)]
ui: firwall: change icmp type selector to a combogrid

The combogrid contains all valid icmp types that iptables accepts. In
addition to the names, the Type[/Code] value is shown as well. But
specifying Type[/Code] is not supported.

As the simple solution with setStore() does not work to change the
store for the combogrid, we simply have 2 different
ICMPTypeSelectors, one for IPv4, the other for IPv6, which are
switched depending on the specified protocol.

As disabled fields don't submit their value, we can keep the values
for the dport and both icmp-type fields when switching protocols.

Signed-off-by: Mira Limbeck <m.limbeck@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agodaily update timer: start already on 01:00 to avoid dst change issue
Thomas Lamprecht [Mon, 14 Mar 2022 08:04:25 +0000 (09:04 +0100)]
daily update timer: start already on 01:00 to avoid dst change issue

see https://github.com/systemd/systemd/issues/5595

Has also the side effect of spreading out the updates for our most
used product over a longer time span, reducing load on the CDN.

Note, this is now the same timer setting as PBS used from the start.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoui: vm boot order: move init logic into controller
Thomas Lamprecht [Mon, 14 Mar 2022 07:40:46 +0000 (08:40 +0100)]
ui: vm boot order: move init logic into controller

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoui: osd: send in/out cmd to currently used node
Aaron Lauterer [Wed, 2 Mar 2022 10:12:49 +0000 (11:12 +0100)]
ui: osd: send in/out cmd to currently used node

The in & out commands for OSDs are not node specific and can be run on
any node in the Ceph cluster. By sending them to the node currently used
to access the UI they can still be sent even if the node on which the
OSDs are located is down.

This helps in a disaster scenario where a node is down. By default Ceph
will mark a downed OSD as out after 10 minutes. This could be too long
in some situations. Running the CLI command to mark the OSD as out
earlier on one of the remaining nodes does work, but if the admin is not
used doing it this way, this adds stress, in a potentially already
stressful situation.

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
2 years agoapi: apt: repos: fix interfacing with perlmod
Fabian Ebner [Fri, 16 Jul 2021 13:27:53 +0000 (15:27 +0200)]
api: apt: repos: fix interfacing with perlmod

Using
    pvesh create /nodes/pve701/apt/repositories --path
    "/etc/apt/sources.list" --index 0 --enabled 1
reliably leads to
    error: invalid type: string "0", expected usize

Coerce to int to avoid this. I was not able to trigger the issue with
the "enabled" option being a string here (in PMG I was), but be on the
safe side and coerce there too. Otherwise it might get triggered by a
future, completely unrelated change further up in the API call
handling.

Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2 years agopve6to7: update expected running kernel version to 5.13 or 5.15
Thomas Lamprecht [Mon, 14 Feb 2022 07:19:55 +0000 (08:19 +0100)]
pve6to7: update expected running kernel version to 5.13 or 5.15

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoui: vm: improve validator for CPU share range
Thomas Lamprecht [Thu, 10 Feb 2022 18:08:36 +0000 (19:08 +0100)]
ui: vm: improve validator for CPU share range

Allow the range for the old CGroup V1 one, as while deprecated,
that's still supported and a includes the range for v2 anyway.

With a next major release we may drop v1 support completely, probably
in PVE 8.0, then we can reduce this to the range of [1, 1000] that v2
supports.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoapi: query url metadata: change default user-agent to "Proxmox VE"
Oguz Bektas [Tue, 1 Feb 2022 14:02:38 +0000 (15:02 +0100)]
api: query url metadata: change default user-agent to "Proxmox VE"

To avoid being blacklisted because of the default, quite popular,
libwww-perl user-agent like reported in community forum [0].

[0]: https://forum.proxmox.com/threads/104081/

Signed-off-by: Oguz Bektas <o.bektas@proxmox.com>
Tested-by: Matthias Heiserer <m.heiserer@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoapi: apt: list_updates: fix dependency detection for virtual package
Fabian Ebner [Thu, 3 Feb 2022 11:32:19 +0000 (12:32 +0100)]
api: apt: list_updates: fix dependency detection for virtual package

A virtual package does not have SelectedState Install, but the
dependency will still be satisfied if a package providing it has.

Fixes a bug, wrongly showing that postfix will be installed, when a
different mail-transport-agent is installed and a pve-manager update
is available:
https://forum.proxmox.com/threads/103413/

Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2 years agoapi: add 'type' parameter to pool GET endpoint
Hannes Laimer [Mon, 31 Jan 2022 11:16:33 +0000 (12:16 +0100)]
api: add 'type' parameter to pool GET endpoint

Signed-off-by: Hannes Laimer <h.laimer@proxmox.com>
2 years agoui: ceph osd: just spread default + custom class values directly
Thomas Lamprecht [Fri, 28 Jan 2022 12:11:18 +0000 (13:11 +0100)]
ui: ceph osd: just spread default + custom class values directly

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agofix #3451 ui: ceph create osd: show custom device classes
Aaron Lauterer [Tue, 25 Jan 2022 08:51:53 +0000 (09:51 +0100)]
fix #3451 ui: ceph create osd: show custom device classes

Showing already configured custom device classes makes it easier to
create new OSDs with custom device classes.

The Crush map contains a list of all OSDs in the cluster, including
their device class.
This means we can create a list of used device classes from it, avoiding
adding another API endpoint.

Fetching the crushmap should also be quite a bit less data that needs to
be transferred, compared to the other possible nodes/<node>/ceph/osd
endpoint, especially in larger clusters.

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
2 years agoui: cephfs: use more descriptive field label and gettext
Fabian Ebner [Fri, 28 Jan 2022 10:22:32 +0000 (11:22 +0100)]
ui: cephfs: use more descriptive field label and gettext

Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2 years agoui: rbd: cephfs: add keyring/secret field for external clusters
Aaron Lauterer [Wed, 26 Jan 2022 10:18:42 +0000 (11:18 +0100)]
ui: rbd: cephfs: add keyring/secret field for external clusters

Manual switching of xtype because binding 'hidden' does not work with
pmxDisplayEditField.

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
2 years agoui: lvm: better convey space information
Fabian Ebner [Wed, 26 Jan 2022 08:42:02 +0000 (09:42 +0100)]
ui: lvm: better convey space information

Namely, that it's just assigned/reserved space, not necessarily
actively used. Selection of forum threads about this confusion (of
dozens more):

https://forum.proxmox.com/threads/93820/
https://forum.proxmox.com/threads/52899/
https://forum.proxmox.com/threads/52929/

Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2 years agometrics: influx: preprare value: rename $quote to $force_quote
Thomas Lamprecht [Fri, 28 Jan 2022 10:06:25 +0000 (11:06 +0100)]
metrics: influx: preprare value: rename $quote to $force_quote

to avoid implying that it's *only* quoted if that parameter is
truthy.

Also, check the boolean before looks_like_number call, as that is
more expensive to do.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agofix #3815: metrics: influxdb: coerce guest name always to string
Markus Frank [Fri, 28 Jan 2022 10:03:39 +0000 (11:03 +0100)]
fix #3815: metrics: influxdb: coerce guest name always to string

InfluxDB interprets the guest name '66601' as a number and the guest
name 'vm42' as a String. This leads to problematic metrics, that will
be dropped by influxdb. Whichever comes first decides how the
"schema" is defined.

To change that add a $to_quote hashmap to define which value
shouldn't get interpreted as number by always send it quoted.

For now only quote 'name'.

Note, that while the 'nodename' and 'host' properties would have the
same problem, they are tags in InfluxDB which are always interpreted
as strings:
https://docs.influxdata.com/influxdb/v2.1/reference/syntax/line-protocol/

Signed-off-by: Markus Frank <m.frank@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agopvescheduler service: order startup after pve-guests
Dominik Csapak [Fri, 28 Jan 2022 09:25:04 +0000 (10:25 +0100)]
pvescheduler service: order startup after pve-guests

This way, a running backup cannot prevent pve-guests from starting a
virtual guest which was marked with 'onboot'

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agofix tests in 'vzdump_new_test.pl'
Dominik Csapak [Fri, 28 Jan 2022 08:36:47 +0000 (09:36 +0100)]
fix tests in 'vzdump_new_test.pl'

commmit
b241deb7 ("close #3476: vzdump: add job-init hook")

introduces a 'cfs_update' in VZDump->new(), which overwrites our
carefully prepared storage/vm config which can break the tests

to prevent this, mock 'cfs_update' to do nothing, since we never
want to load the 'real' configs during tests anyway

fixes commit b241deb731369ff96b26bfa670c5c8d273aea02c

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2 years agoui: pci passthrough: fix labels of new id/vendor overrides
Thomas Lamprecht [Thu, 27 Jan 2022 14:12:26 +0000 (15:12 +0100)]
ui: pci passthrough: fix labels of new id/vendor overrides

We do not use 'Set XYZ' anywhere else and it should be clear enough
from the PCI selector in the non-advanced section that the actual
device to get passed-through is chosen else where, but we still can
use the emptyText to avoid confusion where the (sub) vendor/id will
come from if a field is left empty.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoui: pci passthrough: editor for pci-id overrides
Nicholas Sherlock [Tue, 18 Jan 2022 21:38:40 +0000 (21:38 +0000)]
ui: pci passthrough: editor for pci-id overrides

Signed-off-by: Nicholas Sherlock <n.sherlock@gmail.com>
2 years agoclose #3476: vzdump: add job-init hook
Fabian Ebner [Tue, 18 Jan 2022 08:21:14 +0000 (09:21 +0100)]
close #3476: vzdump: add job-init hook

which allows users to prepare the backup storage for activation (e.g.
by waking up a remote node).

Suggested-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Reviewed-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Acked-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2 years agobump version to 7.1-10
Thomas Lamprecht [Tue, 18 Jan 2022 04:53:00 +0000 (05:53 +0100)]
bump version to 7.1-10

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoui: form/calendar event: add monthly and yearly examples
Thomas Lamprecht [Tue, 18 Jan 2022 04:51:57 +0000 (05:51 +0100)]
ui: form/calendar event: add monthly and yearly examples

like PBS

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoui: backup/run now: avoid passing "next-run" parameter to backend
Thomas Lamprecht [Tue, 18 Jan 2022 04:48:43 +0000 (05:48 +0100)]
ui: backup/run now: avoid passing "next-run" parameter to backend

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agovzdump: example hook script: avoid undef warnings
Fabian Ebner [Mon, 17 Jan 2022 11:35:58 +0000 (12:35 +0100)]
vzdump: example hook script: avoid undef warnings

Some environment variables are undef in certain scenarios.

Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2 years agoui: form/calendar event: enable first-day-of-month example again
Thomas Lamprecht [Thu, 13 Jan 2022 16:52:23 +0000 (17:52 +0100)]
ui: form/calendar event: enable first-day-of-month example again

the rust based implementation form PBS we recently switched too
supports that

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agobump version to 7.1-9
Thomas Lamprecht [Thu, 13 Jan 2022 12:48:38 +0000 (13:48 +0100)]
bump version to 7.1-9

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agowindow: safe destroy guest: add note that referenced disks are destroyed
Fabian Ebner [Mon, 13 Dec 2021 08:25:14 +0000 (09:25 +0100)]
window: safe destroy guest: add note that referenced disks are destroyed

It's not clear to all users otherwise[0].

[0]: https://forum.proxmox.com/threads/100996/post-436919

Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2 years agoui: backuo job detail: drop being stateful, increase default height
Thomas Lamprecht [Thu, 13 Jan 2022 15:54:46 +0000 (16:54 +0100)]
ui: backuo job detail: drop being stateful, increase default height

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoui: backuo job detail: show next-run info
Thomas Lamprecht [Thu, 13 Jan 2022 15:49:38 +0000 (16:49 +0100)]
ui: backuo job detail: show next-run info

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoui: backuo jobs: move next-run column beside schedule one
Thomas Lamprecht [Thu, 13 Jan 2022 15:49:18 +0000 (16:49 +0100)]
ui: backuo jobs: move next-run column beside schedule one

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agoui: utils: add render_next_event
Thomas Lamprecht [Thu, 13 Jan 2022 15:48:44 +0000 (16:48 +0100)]
ui: utils: add render_next_event

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agod/control: bump pve-common versioned dependencies
Thomas Lamprecht [Thu, 13 Jan 2022 15:34:04 +0000 (16:34 +0100)]
d/control: bump pve-common versioned dependencies

to make it easier guaranteeing the more capable calendar event
implementation is active for all parts using it.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agod/control: bump versioned dependency to pve-rs
Thomas Lamprecht [Thu, 13 Jan 2022 14:33:19 +0000 (15:33 +0100)]
d/control: bump versioned dependency to pve-rs

for calendar event perlmod

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agovzdump: add new 'next-run' field for vzdump job listing
Dominik Csapak [Thu, 2 Dec 2021 10:41:43 +0000 (11:41 +0100)]
vzdump: add new 'next-run' field for vzdump job listing

and calculate it by getting the next event after 'now' since
we currently have no way to get the last run time for jobs only running
on different cluster nodes

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2 years agod/control: bump http-server versioned depenedency
Thomas Lamprecht [Thu, 13 Jan 2022 12:43:16 +0000 (13:43 +0100)]
d/control: bump http-server versioned depenedency

so that the new TLS knobs actually do something

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agofix #3789: pass disable TLS 1.2/1.3 options
Fabian Grünbichler [Fri, 17 Dec 2021 12:57:32 +0000 (13:57 +0100)]
fix #3789: pass disable TLS 1.2/1.3 options

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2 years agofix #3745: handle overridden TLS key location
Fabian Grünbichler [Fri, 17 Dec 2021 12:57:31 +0000 (13:57 +0100)]
fix #3745: handle overridden TLS key location

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2 years agofix #3790: pass TLS 1.3 ciphersuites if set
Fabian Grünbichler [Fri, 17 Dec 2021 12:57:30 +0000 (13:57 +0100)]
fix #3790: pass TLS 1.3 ciphersuites if set

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2 years agoadd 'auto' mode for noVNC scaling
Dominik Csapak [Thu, 13 Jan 2022 07:56:33 +0000 (08:56 +0100)]
add 'auto' mode for noVNC scaling

in commit
07195aa079c4ed77866ee4c6af77436b7c2a2e06 ("ui: fix novnc scaling radio button")

we always set to 'scale' when no value was set, but a non-set value
actually had a different behaviour:

in the embedded console it was set to 'scale', but in the pop-up it was
set to 'off'.

to restore this behaviour, introduce an option 'auto' which unsets the
'novnc-scaling' setting

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2 years agoui: node: zfs: use ZFSDetail window from widget-toolkit
Fabian Ebner [Fri, 10 Sep 2021 11:45:38 +0000 (13:45 +0200)]
ui: node: zfs: use ZFSDetail window from widget-toolkit

The only functional differences I could see are the missing
defaultValue for 'Scan' and the reduced height. For restoring the
height, there is a proposed patch for widget-toolkit.

Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2 years agoui: fix novnc scaling radio buttons
Dominik Csapak [Tue, 11 Jan 2022 10:26:21 +0000 (11:26 +0100)]
ui: fix novnc scaling radio buttons

when having selected 'off', the next start of the window has both
radiobuttons selected and no change is possible anymore. It seems that
the 'checked: true' triggers only after the 'init' function.

So instead remove the 'checked: true', and add the default in the init
function.

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2 years agoavoid installing unused var/lib/vz/template/qemu directory
Thomas Lamprecht [Tue, 11 Jan 2022 13:12:20 +0000 (14:12 +0100)]
avoid installing unused var/lib/vz/template/qemu directory

some users in the forum[0][1] and oguz wondered and made me notice
it, its neither used nor referred too in pve-storage, qemu-server nor
the pve-manager package itself, so just drop it.

[0]: https://forum.proxmox.com/threads/qemu-template-questions.18053/
[1]: https://forum.proxmox.com/threads/what-is-var-lib-vz-template-qemu-for.100092/

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2 years agostatus: influxdb: suppress warning when no token exists
Dominik Csapak [Mon, 20 Dec 2021 12:43:10 +0000 (13:43 +0100)]
status: influxdb: suppress warning when no token exists

in get_credentials, we try to read the token for the specified server,
and warn if we cannot do that (e.g. because the file does not exist)

since having no token is a valid configuration, suppress that warning on
connection.

reported by a forum-user:
https://forum.proxmox.com/threads/interface-comes-up-with-all-question-marks.83287/page-2#post-438204

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2 years agosorters: use correct property 'direction' and keep default 'ASC'
Fabian Ebner [Tue, 7 Dec 2021 13:08:44 +0000 (14:08 +0100)]
sorters: use correct property 'direction' and keep default 'ASC'

Ext.util.Sorter does not have an 'order' property, so 'order: DESC'
didn't have an effect. The default is 'ASC' and it is arguably the
preferred direction for all affected sorters anyways.

Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>