2037d9af03 
					 
					
						
						
							
							api-viewer: show permissions  
						
						
						
						
					 
					
						2021-02-22 12:01:24 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						7f07991035 
					 
					
						
						
							
							docs: improve MEDIA_SET_NAMING_TEMPLATE_SCHEMA description  
						
						
						
						
					 
					
						2021-02-22 09:50:16 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						18ce01caff 
					 
					
						
						
							
							tape: use correct schema for changer path (SCSI_CHANGER_PATH_SCHEMA)  
						
						
						
						
					 
					
						2021-02-22 09:43:13 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						5bc8e80a99 
					 
					
						
						
							
							cleanup: cleanup use clause (avoid *)  
						
						
						
						
					 
					
						2021-02-22 09:33:29 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						6252df4c18 
					 
					
						
						
							
							docs: fix EXPORT_SLOT_LIST_SCHEMA description  
						
						
						
						
					 
					
						2021-02-22 09:05:07 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						451856d21d 
					 
					
						
						
							
							api-viewer: fix path for upgraded HTTP/2 proptocls  
						
						
						
						
					 
					
						2021-02-22 08:38:27 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						aa30663ca5 
					 
					
						
						
							
							docgen: improve regex format  
						
						
						
						
					 
					
						2021-02-21 16:14:11 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						8616a4afe5 
					 
					
						
						
							
							docgen: dump string format (property strings)  
						
						
						
						
					 
					
						2021-02-21 15:54:14 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						bc2358319b 
					 
					
						
						
							
							docgen: improve api schema dump  
						
						
						
						
					 
					
						2021-02-21 12:00:06 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						0bf4b81370 
					 
					
						
						
							
							docs: api-viewer - add backup and restore APIs  
						
						
						
						
					 
					
						2021-02-21 10:38:33 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						c9dd5a2452 
					 
					
						
						
							
							.gitignore: do not ingnor .html files - we have some of them in the repository  
						
						
						
						
					 
					
						2021-02-21 10:04:52 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						cf95f616c5 
					 
					
						
						
							
							add missing file docs/api-viewer/index.html  
						
						
						
						
					 
					
						2021-02-21 10:04:23 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						1adbc7c13c 
					 
					
						
						
							
							docs: install API viewer  
						
						
						
						
					 
					
						2021-02-21 09:06:58 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						9d28974c27 
					 
					
						
						
							
							adopt PVEAPI.js for PBS, rename to PBSAPI.js  
						
						
						
						
					 
					
						2021-02-21 09:06:58 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						3dbc35b5c1 
					 
					
						
						
							
							copy api-viewer from pve-docs  
						
						
						
						
					 
					
						2021-02-21 09:06:58 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						fee0fe5422 
					 
					
						
						
							
							docgen: implement api schema generation (for api-viewer)  
						
						... 
						
						
						
						Just a start - not complete jet. 
						
						
					 
					
						2021-02-21 09:06:58 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						86d9f4e733 
					 
					
						
						
							
							tape: extend MediaChange trait to return MtxStatus  
						
						
						
						
					 
					
						2021-02-20 10:23:16 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						3f16f1b006 
					 
					
						
						
							
							tape: update changer status inside ScsiMediaChange implementation  
						
						
						
						
					 
					
						2021-02-20 09:56:27 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						cbd9899389 
					 
					
						
						
							
							tape: update changer status cache after load/unload  
						
						
						
						
					 
					
						2021-02-20 09:06:17 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						cd44fb8d84 
					 
					
						
						
							
							tape: create tmp dirs early at server startup  
						
						
						
						
					 
					
						2021-02-19 18:10:02 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						aca4c2b5a9 
					 
					
						
						
							
							ui: window/Settings / WebAuthn: add browser setting for userVerificationo  
						
						... 
						
						
						
						some fido2/webauthn keys can have a pin, and the client can request
a mode for the user verification.
'default' (no value set), lets the browser/device decide if the user has to
enter the pin of the device
'discouraged' requests that the user should not need to enter the pin
'preferred' requests that the user should need to enter the pin (if possible)
since we use webauthn only as a 2nd factor, having the user enter
the device pin on login may seem too much hassle for some users, so
give them the option
since this is a client option anyway, do not save it in the backend, but
in the browser local storage
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com > 
						
						
					 
					
						2021-02-19 16:53:06 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						85eedfb78b 
					 
					
						
						
							
							ui: add browser settings window  
						
						... 
						
						
						
						mostly copied from pve (for now; will refactor when i add it to
pmg too (soon)) without the pve specific features like dashboard
storages
contains some eslint fixes comparing to pves window
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com > 
						
						
					 
					
						2021-02-19 16:52:50 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						f26276bc4e 
					 
					
						
						
							
							ui: tape/ChangerStatus: fixup for conditional  
						
						... 
						
						
						
						the statement !a === "somestring" cannot be true since
!a is either true or false and thus not a string
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com > 
						
						
					 
					
						2021-02-19 16:52:26 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						6d62e69f9a 
					 
					
						
						
							
							ui: tape: fix eslint warnings (trailing comma)  
						
						... 
						
						
						
						Signed-off-by: Dominik Csapak <d.csapak@proxmox.com > 
						
						
					 
					
						2021-02-19 16:52:12 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						4188fd59a0 
					 
					
						
						
							
							tape: cache changer state  
						
						
						
						
					 
					
						2021-02-19 16:48:19 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						5b9f575648 
					 
					
						
						
							
							update gitignore  
						
						... 
						
						
						
						Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com > 
						
						
					 
					
						2021-02-19 12:42:14 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						0d890ec414 
					 
					
						
						
							
							ui: tape/ChangerStatus: show the state of the drive  
						
						... 
						
						
						
						an optimize the columns for smaller layouts (1280 width)
we show either:
* Idle
* spinner + status (if no upid)
* spinner + rendered UPID (clickable, opens task viewer)
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com > 
						
						
					 
					
						2021-02-19 10:21:40 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						926d05ef0b 
					 
					
						
						
							
							api2/tape/{backup, restore}, proxmox-tape: set device state  
						
						... 
						
						
						
						set the drive device state everywhere we lock it, so that we
know what it currently does
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com > 
						
						
					 
					
						2021-02-19 10:16:30 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						8be48ddfc7 
					 
					
						
						
							
							api2/tape/changer: add drive state to changer status output  
						
						... 
						
						
						
						if we can find the drive in the config and it has a state
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com > 
						
						
					 
					
						2021-02-19 10:15:15 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						41e66bfaf6 
					 
					
						
						
							
							api2/tape/drive: wrap some api calls in run_drive_blocking_task  
						
						... 
						
						
						
						those calls could also block, so we have to run them in a blocking
tokio task, as to not block the current thread
nice side effect is that we now also update the state for that
drive in those instances
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com > 
						
						
					 
					
						2021-02-19 10:14:08 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						47a7241410 
					 
					
						
						
							
							api2/tape/drive: use run_drive_blocking_task where possible  
						
						... 
						
						
						
						Signed-off-by: Dominik Csapak <d.csapak@proxmox.com > 
						
						
					 
					
						2021-02-19 10:13:36 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						54c77b3d62 
					 
					
						
						
							
							api2/tape/drive: add wrapper for tokio::task::spawn_blocking  
						
						... 
						
						
						
						similar to the worker wrapper, lock, write status, run code, unset status
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com > 
						
						
					 
					
						2021-02-19 10:13:21 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						a1c5575308 
					 
					
						
						
							
							api2/tape/drive: use 'run_drive_worker' where possible  
						
						... 
						
						
						
						Signed-off-by: Dominik Csapak <d.csapak@proxmox.com > 
						
						
					 
					
						2021-02-19 10:11:04 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						a44c934b5d 
					 
					
						
						
							
							api2/tape/drive: add run_drive_worker wrapper  
						
						... 
						
						
						
						a wrapper for locking, starting the worker and writing the state
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com > 
						
						
					 
					
						2021-02-19 10:08:27 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						546d2653ee 
					 
					
						
						
							
							tape/drive: add get/set status functions  
						
						... 
						
						
						
						simply writes into/reads from a file in /run, we will use this
for writing the upid (or potential other states) per drive
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com > 
						
						
					 
					
						2021-02-19 10:05:09 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						33c06b3388 
					 
					
						
						
							
							tape/drive: add test_device_path_lock  
						
						... 
						
						
						
						this makes it possible to detect if the drive was locked in a
non-blocking manner
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com > 
						
						
					 
					
						2021-02-19 10:03:30 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						1917ea3ce1 
					 
					
						
						
							
							cleanup: use serde(flatten) for VerificationJobStatus, improve code reuse  
						
						
						
						
					 
					
						2021-02-19 09:50:25 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						70842b9ef2 
					 
					
						
						
							
							cleanup: use serde(flatten) for SyncJobStatus, improve code reuse  
						
						
						
						
					 
					
						2021-02-19 09:36:39 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						e6122a657e 
					 
					
						
						
							
							ui: cleanup - reuse existing code  
						
						
						
						
					 
					
						2021-02-19 09:14:31 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						9e860ac01a 
					 
					
						
						
							
							ui: tape/BackupJobs.js - render task scheduling status  
						
						
						
						
					 
					
						2021-02-19 09:08:00 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						7690a8e7bd 
					 
					
						
						
							
							api: list tape backup jobs with scheduling status  
						
						
						
						
					 
					
						2021-02-19 09:02:13 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						1860208560 
					 
					
						
						
							
							add helper to compute job scheduling state  
						
						
						
						
					 
					
						2021-02-19 08:58:50 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						1689296d46 
					 
					
						
						
							
							api: add new type JobScheduleStatus  
						
						
						
						
					 
					
						2021-02-19 08:23:41 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						7aa4851b77 
					 
					
						
						
							
							ui: start tape backup job GUI  
						
						
						
						
					 
					
						2021-02-18 12:48:54 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						6ef8e2902f 
					 
					
						
						
							
							ui: tape/ChangerStatus.js - avoid update status in list_media  
						
						... 
						
						
						
						We do not use the media location, so there is no need to update
the online status in the list_media call. Besides, we already update
the online status when we query the changer/status. 
						
						
					 
					
						2021-02-18 12:06:49 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						aa16b7b284 
					 
					
						
						
							
							ui: tape/ChangerStatus.js - only update status for selected changer  
						
						... 
						
						
						
						To reduce load/wait time. 
						
						
					 
					
						2021-02-18 11:08:13 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						9bbd83b1f2 
					 
					
						
						
							
							tape: media_list API - allow to update online status for a single changer  
						
						
						
						
					 
					
						2021-02-18 10:59:33 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						65535670f9 
					 
					
						
						
							
							ui: tape/TapeInventory.js - avoid update changer status  
						
						... 
						
						
						
						We do not update changer status by default - only when pressing "Reload" button. 
						
						
					 
					
						2021-02-18 10:10:51 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						9d42fe4d3b 
					 
					
						
						
							
							ui: tape/TapeInventory: set defaultValue for pool to ''  
						
						... 
						
						
						
						otherwise the grouping feature of the grid gets confused as it encounters
undefined values
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com > 
						
						
					 
					
						2021-02-18 09:35:05 +01:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						918a367258 
					 
					
						
						
							
							ui: tape/ChangerStatus: adapt load/unload to WorkerTask  
						
						... 
						
						
						
						those are now workertasks (behind a 'POST' request), so show the
progress with the upid
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com > 
						
						
					 
					
						2021-02-18 09:34:53 +01:00