Commit Graph

6233 Commits

Author SHA1 Message Date
Thomas Lamprecht
2c5aaf4102 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>
2022-03-31 16:03:51 +02:00
Thomas Lamprecht
f9698f62cb ui: qemu: switch processor icon to SVG
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-03-31 15:43:40 +02:00
Thomas Lamprecht
449d346f41 css: fix parenthesis opening style
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-03-31 15:39:13 +02:00
Thomas Lamprecht
c4c3ed73e1 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>
2022-03-30 15:33:13 +02:00
Thomas Lamprecht
ef01a35173 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>
2022-03-30 15:33:00 +02:00
Thomas Lamprecht
80e456f655 report: report FS type in df call
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-03-30 15:24:23 +02:00
Thomas Lamprecht
c35bbd6ef7 ui: sdn: options: flex all and drop collapsible
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-03-29 17:37:27 +02:00
Thomas Lamprecht
c155b2b4ab bump version to 7.1-12
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-03-29 17:32:29 +02:00
Thomas Lamprecht
6992e2c51d ui: sdn: fix options panel headings case
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-03-29 17:32:29 +02:00
Thomas Lamprecht
7e9a30a887 apl info: update index to current repository state
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-03-29 10:37:40 +02:00
Alexandre Derumier
4882f80701 ui: sdn : controllers: bgp : add bgp-multipath-as-path-relax
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2022-03-29 06:55:20 +02:00
Alexandre Derumier
8612f92d17 ui: sdn: zones: evpn : add rt-import
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2022-03-29 06:55:20 +02:00
Alexandre Derumier
f1a13b515f ui: sdn: zones: evpn : move controller option on top of the form
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2022-03-29 06:55:20 +02:00
Alexandre Derumier
8112cb3c3f ui: sdn: zones: evpn : add exitnodes-primary
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2022-03-29 06:55:20 +02:00
Alexandre Derumier
8fdf43a4bd ui: sdn: zones: evpn : add disable-arp-nd-suppression
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2022-03-29 06:55:20 +02:00
Thomas Lamprecht
295d8c4351 apl info: trailing whitespace cleanups
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-03-29 06:53:28 +02:00
Thomas Lamprecht
42f82359c1 api: cluster: refactor and cleanup
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-03-28 14:04:35 +02:00
Fabian Grünbichler
b115cd9bd7 d/control: add missing libproxmox-rs-perl dependency
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2022-03-28 11:34:05 +02:00
Wolfgang Bumiller
fd0a63153e api: fill in nodeconfig schema
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2022-03-17 14:24:20 +01:00
Wolfgang Bumiller
9556af6134 nodeconfig: use common config parser
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2022-03-17 14:24:20 +01:00
Thomas Lamprecht
9922ee93d3 d/control: bump versioned dependency for pve-common
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-03-17 14:23:05 +01:00
Thomas Lamprecht
0456ca936f bump version to 7.1-11
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-03-17 14:09:16 +01:00
Wolfgang Bumiller
9ee9991032 switch to Proxmox::RS::CalendarEvent
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2022-03-17 14:02:16 +01:00
Thomas Lamprecht
7851068108 api: sdn: code/whitespace refactor/fixes
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-03-16 17:00:50 +01:00
Alexandre Derumier
89d146f207 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>
2022-03-16 16:43:42 +01:00
Alexandre Derumier
f28f611370 permpathstore: add sdn zones
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2022-03-16 16:43:42 +01:00
Alexandre Derumier
2e29164b1f ui: sdn: zones: evpn : add exitnodes-local-routing && advertise-subnets
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2022-03-16 16:26:27 +01:00
Fabian Ebner
2bc71fd9c3 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>
2022-03-16 16:23:49 +01:00
Aaron Lauterer
8c4ec1aef8 gui: add help button to qm guest agent window
Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
2022-03-16 15:32:34 +01:00
Thomas Lamprecht
9882c95668 ui: fw grid: eslint auto-fixes
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-03-16 15:21:37 +01:00
Mira Limbeck
d09a68e446 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>
2022-03-16 15:20:22 +01:00
Thomas Lamprecht
29592cbbbe 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>
2022-03-14 09:04:27 +01:00
Thomas Lamprecht
36e97aa41d ui: vm boot order: move init logic into controller
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-03-14 08:40:46 +01:00
Aaron Lauterer
8fdc97938b 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>
2022-03-03 12:15:38 +01:00
Fabian Ebner
d3cd3c9ca3 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>
2022-02-17 14:34:18 +01:00
Thomas Lamprecht
0b1d64764f pve6to7: update expected running kernel version to 5.13 or 5.15
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-02-14 08:19:55 +01:00
Thomas Lamprecht
87faaa0b93 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>
2022-02-10 19:08:37 +01:00
Oguz Bektas
dfde1eec16 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>
2022-02-04 17:49:46 +01:00
Fabian Ebner
38496d8758 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>
2022-02-04 17:44:03 +01:00
Hannes Laimer
09ba41362c api: add 'type' parameter to pool GET endpoint
Signed-off-by: Hannes Laimer <h.laimer@proxmox.com>
2022-01-31 13:30:50 +01:00
Thomas Lamprecht
16c6f8afa6 ui: ceph osd: just spread default + custom class values directly
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2022-01-28 13:11:18 +01:00
Aaron Lauterer
e7ec42ff45 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>
2022-01-28 12:31:39 +01:00
Fabian Ebner
e39843e944 ui: cephfs: use more descriptive field label and gettext
Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2022-01-28 12:07:45 +01:00
Aaron Lauterer
42c455fcd7 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>
2022-01-28 12:07:37 +01:00
Fabian Ebner
85df37251f 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>
2022-01-28 12:03:20 +01:00
Thomas Lamprecht
84502c7d1f 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>
2022-01-28 11:11:49 +01:00
Markus Frank
9d37535bec 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>
2022-01-28 11:11:16 +01:00
Dominik Csapak
237102bd3d 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>
2022-01-28 10:34:50 +01:00
Dominik Csapak
8a6681900a 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 b241deb731

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2022-01-28 09:45:53 +01:00
Thomas Lamprecht
d20113ef7e 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>
2022-01-27 15:16:50 +01:00