Commit Graph

4924 Commits

Author SHA1 Message Date
Thomas Lamprecht
2d05caaa5f update aplinfo
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-05-07 22:02:31 +02:00
Thomas Lamprecht
33ed392613 bump version to 6.2-2
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-05-07 21:49:14 +02:00
Thomas Lamprecht
e01302b764 api acme: reduce after validation-request delay, print status on err
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-05-07 21:47:53 +02:00
Thomas Lamprecht
ffc65752f2 d/control: bump versioned build-dependency to doc-generator
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-05-07 21:43:00 +02:00
Thomas Lamprecht
0f14518fe9 ui: acme view: use "Challenge Plugins" name
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-05-07 21:40:06 +02:00
Thomas Lamprecht
b0bff8c3af ui: acme plugin edit: allow to overwrite label and add a hint
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-05-07 20:55:34 +02:00
Thomas Lamprecht
228846472f ui: acme dns plugin edit: wider labels, = as separator
Some API endpoints hvae very long variable names..

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-05-07 20:52:34 +02:00
Thomas Lamprecht
4a566eda62 ui: acme dns plugin edit: add online help
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-05-07 20:52:01 +02:00
Thomas Lamprecht
77496e1be3 fix #2708: ui: increase default memory in VM create wizard to 2GiB
as nowadays a lot of VMs won't even start the installer with 512 MB.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-05-07 15:09:29 +02:00
Dominik Csapak
796a8b7483 ui: dc/ACMEClusterView: show TaskProgress on account removal
this is not a synchronous api call, so open a taskprogress window
and reload after the task is done

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2020-05-07 14:32:55 +02:00
Dominik Csapak
efca2bbbc6 ui: dc/ACMEClusterView: load the correct store on reload
if we use a diff/update store combo, we have to load the updatestore
not the diff store, else we get spurious empty grids

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2020-05-07 14:32:55 +02:00
Dominik Csapak
fc40915c7c ui: ACMEAccountCreate: make name only optional if no default exists
if the 'default' account exists, make the name field required and
remove the emptytext

get the information by querying the grid store. this may be not
up-to-date, but it is less intrusive that an extra api call that
blocks the window

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2020-05-07 14:32:55 +02:00
Thomas Lamprecht
a72428b8c6 ACME: add comment for implicit standalone plugin fallback
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-05-07 13:53:05 +02:00
Fabian Grünbichler
25fd63631d ACME: fix fallback to implicit standalone plugin
we need to parse the config even if it does not exist - it will return
the 'standalone' entry that's needed to be backwards compatible with
existing setups.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2020-05-07 12:59:37 +02:00
Dominik Csapak
1f2497692a ui: node/{ACME, Certificates}: add stopUpdate on destruction
else the stores never stop updating

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2020-05-07 12:54:30 +02:00
Dominik Csapak
1580b60501 ui: node/ACME: only enable order button when it should work
to order a ceritificate, we need at least one configured domain, and
the configured account (or default) must exist

so track the domaincount in the viewmodel and introduce a
'canOrder' formula which is only true when domaincount > 0 and
account is set (if the configured account does not exist, or no account
exists at all we set 'account' to 'null')

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2020-05-07 12:54:30 +02:00
Dominik Csapak
3071cc5be1 ui: node/ACME: use accountselector for verification
instead of using API2Request manually, just reload the store of
the accountselector and check if the configured account is in it

this should fix the spurious loading mask of the panel when
loading the accounts

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2020-05-07 12:54:30 +02:00
Dominik Csapak
80bd3209e7 ui: node/ACME: fix some eslint errors/warnings
* unneeded brackets for arrow function
* unused variables
* me not defined
* trailing commas

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2020-05-07 12:54:30 +02:00
Dominik Csapak
878dffb7a2 ui: dc/ACMEClusterView: use a diff/update store combo for the grids
so that they are get automatically reloaded with the default interval (3seconds)

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2020-05-07 12:54:30 +02:00
Dominik Csapak
e666f688ef ui: ACME: add emptyText and add minHeight
without the minHeight, the panel does resize weirdly on the first load

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2020-05-07 12:54:30 +02:00
Dominik Csapak
b7def515e8 NodeConfig/get_acme_conf: make domains always a hash
on all call sites, we assume $cfg->{domains} is a hash, but if we do not
have any domains configured, that fails with
'Can't use an undefined value as a HASH reference at ...'

so always make domains a hash to avoid this

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2020-05-07 12:54:30 +02:00
Thomas Lamprecht
d90b565fbd bump version to 6.2-1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-05-06 20:35:45 +02:00
Thomas Lamprecht
ec4bf5c4ec ui: auth base: add onlineHelp
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-05-06 20:35:45 +02:00
Thomas Lamprecht
5aa99b6d65 d/control: versioned build-dependency for pve-doc-generator
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-05-06 20:25:27 +02:00
Dominik Csapak
47ea76b2ec ui: dc/SyncWindow: add help button
with link to the LDAP Syncing section of the documentation

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2020-05-06 20:24:34 +02:00
Thomas Lamprecht
1c783f74de ui: switch backup default compression selection to ZSTD
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-05-06 20:16:39 +02:00
Thomas Lamprecht
eff602d867 add some onlineHelp
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-05-06 20:12:23 +02:00
Thomas Lamprecht
f597b16f69 ui: fix spelling in file name
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-05-06 20:08:02 +02:00
Thomas Lamprecht
31c9edc85e ui: acme: allow to register+set an account directly
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-05-06 20:04:13 +02:00
Thomas Lamprecht
8b779b4a27 ui: acme add domain: prefill with nodename.
FQDN would be more ideal, though

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-05-06 20:03:45 +02:00
Thomas Lamprecht
a94b71fba8 ui: acme add domain: move Domain field below, hide plugin in http mode
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-05-06 20:03:19 +02:00
Thomas Lamprecht
9c164224e5 ui: acme: call Standalone plugin type HTTP
It's not 100% true, but for the user more understandable. IF we
actually change such that this detail matters we can still go for a
"Better" solution then, as it will need UI updates anyway..

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-05-06 20:01:42 +02:00
Thomas Lamprecht
85b275b1c9 node config: fix invalid domain error message
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-05-06 19:53:07 +02:00
Thomas Lamprecht
1b90cfc6ab ui: acme: reduce update store interval
the grid glitches on load, that's a bug which we just reduce it's
frequency here...

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-05-06 19:13:56 +02:00
Thomas Lamprecht
3c6b4c80ce acme: various small UX improvements
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-05-06 19:13:38 +02:00
Thomas Lamprecht
a8b6a80af8 ui: acme: actually show Account button if none is registered
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-05-06 19:13:09 +02:00
Thomas Lamprecht
6ac64c3aed fix undefined access on acme variable
We have 4 call sites of that, one had a fallback - the other three
was totally unchecked and triggered already exceptions on panel
render ... -.-

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-05-06 19:11:13 +02:00
Dominik Csapak
fd2542336b ui: node/ACME: rework ACME grid for plugin based domains
This is basically a complete rework of the ACME grid.
Instead of having an ObjectGrid, we now have a normal
GridPanel which allows us to show a row for each Domain.

But to achieve this, we need to manually fill the store with data
from the 'acme' and 'acmedomainX' entries of the node config.

We also add an AccountSelector to the tbar and a link to the
datacenter->acme panel (when there is no account)

this also removes the 'register account' and 'view account' buttons,
since those are now available in datacenter->acme

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2020-05-06 17:49:35 +02:00
Dominik Csapak
8e49a93fff ui: node/ACME: add ACMEDomainEdit
which expects a nodeconfig (for digest and domaincount)
and for the edit case, the parsed 'domain' object

this editwindow has three fields:
* type selector (standalone/dns)
* domain
* plugin (only for dns)

if the user chooses dns but there are already the maximum count of
acmedomainX entries, the type field gets invalid (with a error tooltip)

the onGetValues method is non-trivial, because of the mixing of
acmedomainX and acme.domain values, so we have to be careful
that we delete/edit the correct entry

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2020-05-06 17:49:35 +02:00
Dominik Csapak
eadbbb4ae0 ui: Utils: add helper functions for acme domains
to convieniently add and remove domains from a parsed ACME object
they also make domains unique in the array

also add the count of configureable acmedomainX entries

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2020-05-06 17:49:35 +02:00
Dominik Csapak
899c4f4538 ui: Parser: add printACME
since we decode the domain list in parseACME into an array, we
have to join them again to a string when printing

otherwise printPropertyString attaches them just with ',' which
does not work here

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2020-05-06 17:49:35 +02:00
Dominik Csapak
c00c4207ea ui: add ACME selector formfields for account and plugins
filter the plugins by type === 'dns'
and add a convenience method for ACMEAccountSelector to check if there
are any accounts

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2020-05-06 17:49:35 +02:00
Dominik Csapak
1011b56983 ui: fix missing htmlEncodes
username can include some special characters, so we have
to escape them

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2020-05-06 16:59:50 +02:00
Tim Marx
9fd1198e76 ui: auth: clear ui capabilities on logout
Signed-off-by: Tim Marx <t.marx@proxmox.com>
2020-05-06 16:40:55 +02:00
Tim Marx
7c8051b436 ui: whitespace cleanup
Signed-off-by: Tim Marx <t.marx@proxmox.com>
2020-05-06 16:40:52 +02:00
Thomas Lamprecht
c3a3f3ab2a ceph purge: adapt warning message slightly
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-05-06 16:38:51 +02:00
Alwin Antreich
91dfa228d3 Fix #1210: ceph: extend pveceph purge
to clean service directories as well as disable and stop Ceph services.
Addtionally provide the option to remove crash and log information.

This patch is also in addtion to #2607, as the current cleanup doesn't
allow to re-configure Ceph, without manual steps during purge.

Signed-off-by: Alwin Antreich <a.antreich@proxmox.com>
2020-05-06 16:24:46 +02:00
Stefan Reiter
6751013a1b gui: never collapse notes for templates
There's no graphs on screen, so no reason to collapse the notes to save
space. Besides, it looked a bit funky expanding the notes on smaller
screens, since they always jumped to the bottom to fill the space...

Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
2020-05-06 16:24:37 +02:00
Fabian Ebner
6fe863ba7e Improve storage selection on restore
Previously, the blank '' would be passed along and lead to a
parameter verfication failure.

For LXC the default behavior in the backend is to use 'local', so
disallow blank and auto-select the first storage supporting'rootdir'
instead.

For QEMU the default behavior in the backend is to use the
original layout from the backup configuration file, which
makes sense to use as the default in the GUI as well.

Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2020-05-06 16:23:40 +02:00
Fabian Grünbichler
7ddcb3afda vzdump: set 'pbs' option when backing up to PBS target
this unifies the logic into a single place instead of all over this
module and the plugins.

it also fixes tons of 'uninitialized value' warnings when backing up
with --dumpdir but no --storage set, since the existing conditions for
PBS targets are missing a definedness check.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2020-05-06 16:21:41 +02:00