Commit Graph

6882 Commits

Author SHA1 Message Date
Thomas Lamprecht
1e7c70f5c2 ui: realm sync job: code cleanup run-now handlers
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-06-14 17:41:49 +02:00
Thomas Lamprecht
fc3fe9af77 ui: realm sync job: clarify the function of the two enable checkboxes
Most of the time this isn't an issue for job edits, but here we have
two "enable" checkboxes that control enabling newly synced users and
enabling the job itself, try to be absolutely clear on both to avoid
potential confusion.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-06-14 17:37:47 +02:00
Thomas Lamprecht
fc8f37ee9d ui: realm: clarify that the sync jobs really are for the realm
it's somewhat redundant as onbe is already at the realm view, but for
panel titles it slightly helps if one doesn't have to string together
such "clues" oneself, i.e., it's easier to see where one is - e.g.,
if switching from some other task back to the web UI again, and we
have enough space here, so we ain't winning anything if keeping it
short.

Also add an emptyText to the grid, mostly as view's without anything
always look a bit off (like an error happened on load and one forgot
to mask)

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-06-14 17:36:36 +02:00
Dominik Csapak
ed65c1ca64 ui: realm sync: add 'run now' button
by simply passing the sync job config to the 'sync' api endpoint, like
we do for vzdump jobs

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2023-06-14 17:23:22 +02:00
Dominik Csapak
4c8fcdd7af ui: realm: move sync job panel into realm panel
and make it collapsible, so that users can hide it if they're not
interested in it

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2023-06-14 17:23:22 +02:00
Dominik Csapak
059abb7a30 ui: realm sync: change enabled column rendering
to make it consistent with the repositories ui, since having a checkbox
that is not clickable is confusing

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2023-06-14 17:23:22 +02:00
Dominik Csapak
99e276c3d9 ui: realm sync edit: improve ux when there is no ldap/ad realm
by adding an empty text to the dropdown, and disabling the other
possibly invalid fields, so that it's clear why the panel is invalid

as soon as there is an ldap/ad realm, it gets autoselected anyway and
the fields get re-enabled.

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2023-06-14 17:23:22 +02:00
Thomas Lamprecht
7a1373829a ui: user list: fine-tune width-flex of group and comment column
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-06-14 16:17:39 +02:00
Dominik Csapak
7679ff9e60 fix #4739: ui: user list: add column for group memberships
To get a fast overview in which groups each user is add a column that
shows all groups they are a member of.

To get that info we need to pass the 'full=1' parameter to the API
endpoint, which then adds tokens and groups for each user to the result.

This is basically only increasing transmission size a bit, as the
backend doesn't needs to do any extra parsing for this information.

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
 [T: Reword commit message ]
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-06-14 15:36:55 +02:00
Thomas Lamprecht
5f936d95fc ui: sdn: consistent usage of VNet & VLAN without gettext
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-06-14 14:10:56 +02:00
Alexandre Derumier
4ab9632867 qemu: processor : set x86-64-v2-AES as default cputype for create wizard
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2023-06-12 17:31:37 +02:00
Alexandre Derumier
12f7c578f7 ui: add permissions management for "localnetwork" zone
add a default virtual zone called 'localnetwork' in the ressource tree,
and handle permissions like a true sdn zone

(no conflict with true sdn zone is possible, as they have 8 characters max)

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2023-06-12 13:18:12 +02:00
Alexandre Derumier
edc4a349ab ui: add vnet permissions panel
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2023-06-12 13:18:12 +02:00
Fabian Grünbichler
9ed5d4f5af cluster resources: correctly filter 'localnetwork'
it should only be displayed if sdn entries are requested, or all resource
types.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2023-06-12 13:18:12 +02:00
Alexandre Derumier
cdc140f0a3 api2: cluster: ressources: add "localnetwork" zone
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2023-06-12 13:00:16 +02:00
Thomas Lamprecht
61cf3e3d9a bump version to 8.0.0~8
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-06-09 11:11:49 +02:00
Fiona Ebner
e7fc4411ad ui: qemu: show progress bar for resize task
The API call was changed to spawn a task now.

Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>
2023-06-09 11:06:13 +02:00
Thomas Lamprecht
eb85935498 api: mark batch-execute api calls root-only
This is weird and buggy and breaches the unpriv./priv. separation of
our api daemons, so root-only for now and possibly removal soon.

note that this had several limitations already anyway, like running
in sync context and thus failing after 30s.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-06-09 10:47:44 +02:00
Thomas Lamprecht
7b54999a47 ui: fixup lost closing parenthesis
...

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-06-09 09:55:45 +02:00
Thomas Lamprecht
22fcd0069a ui: user view: fix calling order of gettext
One must not call gettext on the already formatted string, as we
cannot translate it for any possible value, rather the format string
it self needs to be gettext'd, then the translator can position the
variable template placeholders however it's correct for their
language without having to care about any value this could be called
with.

Fixes: d057929f ("ui: user view: fix calling order of gettext")
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-06-09 09:53:03 +02:00
Thomas Lamprecht
2ef204f91b d/postinst: remove re-generation of unique machine-ID for old ISOs
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-06-09 08:26:12 +02:00
Thomas Lamprecht
3477c119ed d/postinst: setup pvetest repo for beta
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-06-09 08:23:00 +02:00
Thomas Lamprecht
185a94abee update shipped aplliance info index
and pull it from the Proxmox VE 8 index

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-06-08 18:41:56 +02:00
Thomas Lamprecht
eed1e93ee9 pve7to8: sync over from stable-7 branch
for after-upgrade checks

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-06-08 13:07:07 +02:00
Aaron Lauterer
79007cfc40 ui: ceph: pool: add pool number as column
The pool number is shown in a few places, having it easily accessible
can help to understand which pool a warning/error refers to.

For example, the PG ID consists of '{pool nr}.{pg nr}' and is shown in
every warning concerning that PG.

Signed-off-by: Aaron Lauterer <a.lauterer@proxmox.com>
2023-06-07 19:32:38 +02:00
Fiona Ebner
cce4b3d7b8 ui: override description for resize task
Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>
2023-06-07 19:28:34 +02:00
Fiona Ebner
e81a10a4ab api: replication job status: allow querying disabled jobs too
Rather than failing with an error claiming that the job doesn't exist.
The disabled status will be visible in the result of the call.

Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>
2023-06-07 18:43:32 +02:00
Christoph Heiss
8bb027f820 ui: qga: Add option to turn off QGA fs-freeze/-thaw on backup
Adds a default-on checkbox to the QEMU Guest Agent feature selector
controlling the 'fs-freeze-on-backup' option. If unchecked, an
additional warning is displayed that backups can potentially corrupt
with this setting off.

Signed-off-by: Christoph Heiss <c.heiss@proxmox.com>
2023-06-07 18:28:01 +02:00
Leo Nunner
a3862f699f fix #3428: cloud-init: add toggle for automatic upgrades
to control the newly introduced "ciupgrade" config parameter.

Signed-off-by: Leo Nunner <l.nunner@proxmox.com>
2023-06-07 18:25:14 +02:00
Fabian Grünbichler
d1c7fa0209 ui: cloudinit: match backend privilege checks
the cloudinit options except for ipconfig are all modifiable with just
"VM.Config.Cloudinit".

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-06-07 18:24:15 +02:00
Wolfgang Bumiller
5970607408 ui: user view: add 'Unlock TFA' button
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2023-06-07 18:08:01 +02:00
Wolfgang Bumiller
2387c1946a ui: user view: show tfa lock status
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2023-06-07 18:08:01 +02:00
Fabian Grünbichler
8961f9f780 api2: network: improve code readability
nested conditionals stretching over multiple lines are always a bit hard to
untangle, so let's make it explicit:

1. is the interface a bridge
2. if it is, are we looking for one?
3. is it something else that we are looking for?

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2023-06-07 17:04:29 +02:00
Fabian Grünbichler
9df839bead api2: network: re-use existing variable tfilter
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2023-06-07 17:04:29 +02:00
Alexandre Derumier
d2894179f4 api2: network: check permissions for local bridges
always check permissions, also when not filtered

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
2023-06-07 17:04:29 +02:00
Thomas Lamprecht
e36bc44112 api: backup: check param permission before pool for consistency
Like it did here before 9f65a584 ("api: backup: update: check
permissions of delete params too") and like it does in the create
case.

This should not have a practical effect, it's mostly for consistency
and to avoid anybody reading anything into the different orders of
checks between update and create.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-06-07 16:52:40 +02:00
Fiona Ebner
43f83ad9ce api: backup/vzdump: add get_storage_param helper
to capture the logic in a single place.

Suggested-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>
2023-06-07 16:47:08 +02:00
Fiona Ebner
b6e561304a api: backup: require Datastore.Allocate on storage
In particular this ensures that the user is allowed to remove data on
the storage, because configuring low retention results in removed
older backups. Of course setting the storage itself also needs to
require the same privilege then.

This is a breaking API change, but it seems sensible to require
permissions on the affected storage too.

Jobs with a dumpdir setting can be configured by root only.

Suggested-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>
2023-06-07 16:47:08 +02:00
Fiona Ebner
9f65a584b7 api: backup: update: check permissions of delete params too
Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>
2023-06-07 16:47:08 +02:00
Fiona Ebner
659032f48e api: backup: update: allow only deleting
Previously, it was required to set something at the same time.

Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>
2023-06-07 16:47:08 +02:00
Fiona Ebner
bda3f2aab7 api: backup: update: turn delete into a hash
makes it easier to check for keys in the following patches.

Signed-off-by: Fiona Ebner <f.ebner@proxmox.com>
2023-06-07 16:47:08 +02:00
Dominik Csapak
1056e10c4b ui: firewall: refactor privilege checks and prevent double click
factor out the relevant privilege checks in a variable and reuse that,
also add the check in the run_editor (or wrap it with a check) so that
the edit windows don't open with a double click without those privileges

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2023-06-07 13:22:03 +02:00
Alexandre Derumier
2e37e77902 ui: firewall panel/grids : add privilege checks on buttons
Use enableFn to enable/disable the toolbar buttons according to the
existing privileges.

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
[ D: adapted commit subject and added commit message ]
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2023-06-07 13:21:48 +02:00
Alexandre Derumier
2c12348881 ui: qemu|lxc : fix firewall menu caps
The current VM.Console cap is wrong.

Only log panel needs VM.Console, the other ones only need VM.Audit.

Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
[ D: rewrite commit message a bit ]
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2023-06-07 13:21:48 +02:00
Christoph Heiss
5fcda825ea ui: clean up remnants of in-tree font-awesome files
Commit e97c2601 ("change to debian font-awesome") removed the usage of
the in-tree font-awesome files, replacing them with the Debian package.
Thus clear out these leftovers out, as they are completely usused.

Signed-off-by: Christoph Heiss <c.heiss@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-06-07 12:09:05 +02:00
Thomas Lamprecht
085cf362bd aplinfo: ensure keyring is in binary format
GnuPG chokes on it otherwise...

Fixes: 00ea2e4b ("aplinfo: use sequioa for key ring generation")
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-06-07 11:49:35 +02:00
Thomas Lamprecht
63c8b37122 appliances: switch over to Proxmox VE 8 index
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-06-07 11:38:34 +02:00
Thomas Lamprecht
d7f0fd5581 d/control: bump versioned dependency for libpve-access-control-perl
To ensure that the new realm-sync modules are available.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-06-07 11:38:34 +02:00
Dominik Csapak
f44ce5955e ui: add Realm Sync panel
a typical CRUD panel for adding/editing/removing realm sync jobs

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-06-07 11:38:34 +02:00
Dominik Csapak
9802297517 api: add realm-sync crud api to /cluster/jobs
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
 [ T: fix-up realm sync module namespace, moved to PVE::API2::Jobs ]
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2023-06-07 11:38:34 +02:00