Commit Graph

3506 Commits

Author SHA1 Message Date
Fabian Grünbichler
1a9df9c828 add pvenode CLIHandler
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-05-02 11:34:52 +02:00
Fabian Grünbichler
036475f89a add certificates API endpoints
to allow retrieval of certificate information, and uploading or removing
of custom certificate files.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-05-02 11:34:52 +02:00
Fabian Grünbichler
9945a5018e add ACME certificate API endpoints
for creating/ordering a new certificate and renewing respectively
revoking an existing one.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-05-02 11:34:52 +02:00
Fabian Grünbichler
5c3fd6ace6 add ACME account API endpoints
for registering, updating, refreshing and deactiving a PVE-managed ACME
account, as well as for retrieving the (optional, but required if
available) terms of service of the ACME API provider / CA.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-05-02 11:34:52 +02:00
Fabian Grünbichler
c4f78bb7c6 add node configuration file and API
this currently only contains a description and the node-specific ACME
configuration, but I am sure we can find other goodies to put there.

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-05-02 11:34:52 +02:00
Fabian Grünbichler
ccfd6ea6d3 add CertHelpers utility
PVE-specific certificate helper functions

Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2018-05-02 11:34:52 +02:00
Dominik Csapak
6c4429613f disable the mountpoint selector and path field by default
since in the wizard, the validity check happens before the
viewmodel can set the visible/enabled state so this is invalid there,
even if the remaining panel is valid

setting it to disabled by default, makes the fields 'valid' at the
beginning but retain their behavior

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-05-02 08:28:29 +02:00
Dominik Csapak
4b09a72d45 give vms with 'io-error' an error icon
so that one can see that the vm has an error, even when not
directly investigating the status of that vm

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-04-30 11:02:08 +02:00
Dominik Csapak
09153eaf2b show qmpstatus if available
this patch shows the qmpstatus if it is available on the summary in
parenthesis

this shows things like 'suspended' and 'io-error'

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-04-30 11:02:08 +02:00
Dominik Csapak
aec9d2ece3 implement multiField renderer for infopanels
we can use this for fields which use more than one value of the
guest status

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-04-30 11:02:08 +02:00
Thomas Lamprecht
08e0aba828 dc/ClusterEdit: join: fix assisted entry chechbox change listener
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-04-27 15:47:41 +02:00
Dominik Csapak
4ace5c6fc1 jslint fixes
those found their way in during a rebase of my patches

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-04-25 11:56:09 +02:00
Thomas Lamprecht
81a35ad061 bump version to 5.1-52 2018-04-23 16:01:48 +02:00
Dominik Csapak
1d90225274 use correct multiKey and getObjectValue calls for memory line
also show shares and if ballooning is off

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-04-23 12:12:47 +02:00
Dominik Csapak
d9ace13c6c add xterm.js settings
this adds font-settings to the 'My Settings'
window and makes that bigger

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-04-23 09:42:55 +02:00
Dominik Csapak
5dc48aa804 set the default console in the gui when setting the option
until now, we only set the default console once on page load,
this enables to set it everytime the dc->options panel loads,
so also after setting an option

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-04-23 09:42:55 +02:00
Dominik Csapak
1fe7312bf2 remove the novnc panels for node/container
so that by default the users get xtermjs
not for vms though, since most will still not use a serial
terminal as the display

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-04-23 09:42:55 +02:00
Dominik Csapak
3438c27eab allow xtermjs to be the default console
if not available for a vm, we fallback to novnc like with spice

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-04-23 09:42:55 +02:00
Wolfgang Link
7cb345b816 fix #1691: use asynchronous API call for HD create
It should use an asynchronous API call to create an image,
because some storages may need longer to alloc an image.

If a storage needs more than 30 sec
the proxy will timeout and we have an orphan image.

Also, it is possible to increase the timeout for some
storages if an asynchronous call is used
2018-04-20 11:03:47 +02:00
Dominik Csapak
9c1fe394c0 fix #1732: actually post values in IScsiEdit
this prevented creating/editing an iscsi storage

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-04-19 14:52:05 +02:00
Dietmar Maurer
af537790ba bump version to 5.1-51 2018-04-06 14:10:09 +02:00
Dominik Csapak
b08ae04435 overwrite the built-in 'run_editor' function
this is needed for the 'enter' handler

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-04-06 14:03:59 +02:00
Dietmar Maurer
06de836bf1 bump version to 5.1-50 2018-04-06 13:56:11 +02:00
Dominik Csapak
dc683ca068 better focus of lxc/MPEdit
this gives the focus to either the 'path' field
or to the 'X' tool (if it is a rootfs)

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-04-06 13:51:30 +02:00
Dominik Csapak
3e4b78dc68 merge cores, cpulimit and cpuunits for containers
like we do for qemu vms

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-04-06 13:38:36 +02:00
Dominik Csapak
34c235bea6 lxc/MPEdit: rework for advanced options
this is a complete rework of the inputpanel (long overdue)
it uses a viewModel and viewcontroller to avoid the
multiple is zfs/root/bind checks and concentrate them
in one place

also some features get optimized (e.g. the noreplication checkbox)

adds a setNodename to the DiskStorageSelector so that we can bind
the nodename there

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-04-06 11:45:14 +02:00
Dominik Csapak
14a845bc7b Utils: add forEachMP
in the style of forEachBus, but for containers, so that we
only have to save the count once

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-04-06 11:45:14 +02:00
Dominik Csapak
53395db153 lxc/ResoureEdit: move some cpu fields to advanced options
and show them now also in the wizard

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-04-06 11:45:14 +02:00
Dominik Csapak
29e19e9583 qemu/CreateWizard: add advanced options on general tab
add start on boot, guest agent and boot order fields

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-04-06 11:45:14 +02:00
Dominik Csapak
57f034f6ff qemu/NetworkEdit: rework panel for advanced options
move some fields into advanced options, and remove nat mode

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-04-06 11:45:14 +02:00
Dominik Csapak
869f805312 qemu/MemoryEdit: rework panel and move most things in advanced options
this is a major rework of the memory inputpanel
previously we had to select fixed/variable and
could set shares/ballooning, depending on what was selected

now the panel is much simpler:

non advanced:

memory: the target maximum memory

advanced:

min-memory: the minimum memory, if different from the memory field
we have 'dynamic' memory

shares, only if we have 'dynamic' memory

ballooning-device: better naming, deactivates the ballooning device

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-04-06 11:45:14 +02:00
Dominik Csapak
c2233c8fc2 qemu/HDEdit: move diskthrottling to advanced options
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-04-06 11:45:14 +02:00
Dominik Csapak
ab1ee35244 fix editor and set_button_status for cloudinit
cloudinit images do not have an editor so return here
and value has to be a string to match
also set the remove button text correctly when selecting a cloudinit disk

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-04-06 11:45:14 +02:00
Dominik Csapak
457d5a9413 remove CPUOptions
this is now merged with ProcessorEdit

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-04-06 11:45:14 +02:00
Dominik Csapak
5034f33904 rework ProcessorEdit and merge with CPUOptions using advanced options
make ProcessorEdit static and merge with CPUOptions
moves some fields in the advanced options

this also changes how we add the flag checkboxes,
which is static now, but if we want to add more, we have to
create a better way than add a checkbox for each flag anyway

also increases the cpulimit to 128 (as per api)
and fixes a small whitespace error

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-04-06 11:45:14 +02:00
Dominik Csapak
546d09c24e qemu/HDEdit.js: move some fields into advanced options
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-04-06 11:45:14 +02:00
Dominik Csapak
3e0ea40414 add advanced checkbox to the wizard
so we can show/hide the advanced options of the inputpanels

Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2018-04-06 11:45:14 +02:00
Wolfgang Link
6d09915c51 Add CIFS in strorage info to allow backup. 2018-04-05 13:48:52 +02:00
Dietmar Maurer
26db8aa1b5 bump version to 5.1-49 2018-04-05 12:31:32 +02:00
Dietmar Maurer
f95d79e3eb Cluster.js - use load event from rstore 2018-04-05 12:11:21 +02:00
Thomas Lamprecht
fe13284e4c ui: silence auth failures during cluster join
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-04-05 11:42:23 +02:00
Thomas Lamprecht
f67e1cc089 ui: add cluster join window POC
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-04-05 11:41:17 +02:00
Thomas Lamprecht
9cc0013b14 dc/Cluster: allow to get join information
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-04-05 11:38:03 +02:00
Thomas Lamprecht
8ad2b3a1d7 dc/Cluster: allow cluster create over WebUI
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-04-05 11:30:21 +02:00
Thomas Lamprecht
2f13e1d201 dc: add simple cluster panel
Show configured cluster nodes with their addresses, votes, IDs.
Also show cluster name, config_version, and node count.

Prepares for creating and joining a cluster over the WebUI.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-04-05 11:25:55 +02:00
Thomas Lamprecht
f28ec3e4b3 ui: add storage plugin base class
This removes *a lot* of code duplication.

I add a base class for the storage edit window and for its containing
input panel, they implement the shared stuff. Especially the window
was mostly a 1:1 copy...

I look hard for a way to split up this patch, but I did not really
found one which would not generate a lot of work for no value added
(value being 'revertability' and better git history here).
nd actually not too much happens, the same thing happens just over
and over again.
Thus, I've thrown in the dynamic creation of the storage add menu
items here too.

I remove all storage specific Edit windows, they where all just >95%
duplicates of each other.
Special functionallity, i.e. some data deletion/transforming before
submitting gets done with onGetValues.

For the RBD external vs PVE plugin I just added a minimal child class
to RBD which only tells it'S parent that it is the pve one, this is
nice for the mapping and should be easy to understand when reading
the code.

Tried to test an add and an edit of all visible storage plugins,
seems to be OK now.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-03-28 13:19:41 +02:00
Thomas Lamprecht
c93ce0adf8 controller: StorageEdit: check if 'maxfiles' could be looked up
Allows to extend our, in the ext patch introduced, storage base class
to use the controller for all storage plugins without breaking those
which cannot host backups - i.e., all block based storages

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-03-28 13:19:41 +02:00
Thomas Lamprecht
062a7f4955 ui/Utils: add storage schema
add a schema describing our storages name, the map for its
InputPanel, the icon we show in the add menu, and if it is available
at all there.

For now just use it to simplify the ugly if/else mess
format_storage_type was, future patches will use the information to
generalise Adding/Editing of those storages.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-03-28 13:19:41 +02:00
Thomas Lamprecht
70d4f9b41e ui/Utils: do not create non-standard console.dir fallback
resolves a future jslint type confusion and as it's nor standarized
nor used by our code we can just drop it.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-03-28 13:19:41 +02:00
Thomas Lamprecht
9fa4ce6d74 ui: restore: add bandwidth limit field
Let user input MiB/s as values in the KiB/s range are not that handy
and would make even smaller backups need several hours to restore,
days for bigger ones.

Try to give the user imformation about per-storage bandwidth limits
and how he can disable all of them.

Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2018-03-26 14:23:50 +02:00