Dietmar Maurer
66dbe5639e
tape: avoid executor blocking in drive API
...
By using tokio::task::spawn_blocking().
2020-12-12 09:20:04 +01:00
Dietmar Maurer
663ef85992
tape: use WorkerTask for erase and rewind
2020-12-11 11:19:33 +01:00
Dietmar Maurer
e92c75815b
tape: split inventory api
...
inventory: sync, list labels with uuids,
update_inventory: WorkerTask, updates database
2020-12-11 10:42:29 +01:00
Dietmar Maurer
6dbad5b4b5
tape: run label commands as WorkerTask (threads)
2020-12-11 09:10:22 +01:00
Dietmar Maurer
bff7e3f3e4
tape: implement barcode-label-mdedia
2020-12-11 07:50:19 +01:00
Dietmar Maurer
83abc7497d
tape: implement inventory command
2020-12-11 07:39:28 +01:00
Dietmar Maurer
be1a8c94ae
fix build: add missing file
2020-12-10 13:40:20 +01:00
Dietmar Maurer
4606f34353
tape: implement read-label command
2020-12-10 13:20:39 +01:00
Dietmar Maurer
7bb720cb4d
tape: implement label command
2020-12-10 12:30:27 +01:00
Dietmar Maurer
9700d5374a
tape: add media pool cli
2020-12-10 11:13:12 +01:00
Dietmar Maurer
05e90d6463
tape: add media pool config api
2020-12-10 10:52:27 +01:00
Dietmar Maurer
55118ca18e
tape: correctly sort drive api subdir
2020-12-10 10:09:12 +01:00
Dietmar Maurer
f70d8091d3
tape: implement option changer-drive-id
2020-12-10 09:09:06 +01:00
Dietmar Maurer
a3c709ef21
tape: cli cleanup - avoid api redefinition
2020-12-10 08:35:11 +01:00
Dietmar Maurer
4917f1e2d4
tape: implement delete property for drive update command
2020-12-10 08:25:46 +01:00
Dietmar Maurer
93829fc680
tape: cleanup load-slot api
2020-12-10 08:04:55 +01:00
Dietmar Maurer
e49f0c03d9
tape: implement load-media command
2020-12-10 07:52:56 +01:00
Dietmar Maurer
0098b712a5
tape: implement eject
2020-12-09 17:50:48 +01:00
Dietmar Maurer
5fb694e8c0
tape: implement rewind
2020-12-09 17:43:38 +01:00
Dietmar Maurer
583a68a446
tape: implement erase media
2020-12-09 17:35:31 +01:00
Dietmar Maurer
43cfb3c35a
tape: do not remove changer while still used
2020-12-09 12:55:54 +01:00
Dietmar Maurer
8a16c571d2
tape: add changer property to drive create api
2020-12-09 12:55:10 +01:00
Dietmar Maurer
314652a499
tape: set protected flag for configuration change api methods
2020-12-09 12:02:55 +01:00
Dietmar Maurer
cafd51bf42
tape: add media state database
2020-12-09 11:21:56 +01:00
Wolfgang Bumiller
9b93c62044
remove unused descriptions from api macros
...
these are now a hard error in the api macro
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2020-12-09 10:55:18 +01:00
Dietmar Maurer
5d90860688
tape: expose basic tape/changer functionality at api2/tape/
2020-12-08 15:42:50 +01:00
Dietmar Maurer
5ba83ed099
tape: check digest on config update
2020-12-08 11:24:38 +01:00
Dietmar Maurer
50bf10ad56
tape: add changer configuration API
2020-12-08 09:04:56 +01:00
Dietmar Maurer
16d444c979
tape: add tape drive configuration API
2020-12-07 13:04:32 +01:00
Dietmar Maurer
fa9c9be737
tape: add tape device driver
2020-12-07 08:29:22 +01:00
Dietmar Maurer
ec00200411
fix bug #3189 : fix change_password permission checks, run protected
2020-12-05 16:20:29 +01:00
Dietmar Maurer
1142350e8d
tape: add media pool config
2020-12-05 11:59:38 +01:00
Dietmar Maurer
327e93711f
commit missing file: tape api type definitions
2020-12-04 16:00:52 +01:00
Dietmar Maurer
a076571470
tape support: add drive configuration
2020-12-04 15:42:32 +01:00
Fabian Grünbichler
7e25b9aaaa
verify: use same progress as pull
...
percentage of verified groups, interpolating based on snapshot count
within the group. in most cases, this will also be closer to 'real'
progress since added snapshots (those which will be verified) in active
backup groups will be roughly evenly distributed, while number of total
snapshots per group will be heavily skewed towards those groups which
have existed the longest, even though most of those old snapshots will
only be re-verified very infrequently.
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2020-12-01 06:22:55 +01:00
Wolfgang Bumiller
b760d8a23f
derive PartialEq for Userid
...
the manual implementation is equivalent
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2020-11-30 14:10:17 +01:00
Wolfgang Bumiller
935ee97b17
use fd_change_cloexec helper
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2020-11-30 11:25:53 +01:00
Fabian Grünbichler
035c40e638
list_snapshots: return manifest fingerprint
...
for display in clients.
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2020-11-24 08:44:55 +01:00
Fabian Grünbichler
79c535955d
refactor BackupInfo -> SnapshotListItem helper
...
before adding more fields to the tuple, let's just create the struct
inside the match arms to improve readability.
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2020-11-24 08:44:55 +01:00
Fabian Grünbichler
8b7f8d3f3d
expose previous backup time in backup env
...
and use this information to add more information to client backup log
and guide the download manifest decision.
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2020-11-24 08:44:55 +01:00
Fabian Grünbichler
a4fa3fc241
verification job: log failed dirs
...
else users have to manually search through a potentially very long task
log to find the entries that are different.. this is the same summary
printed at the end of a manual verify task.
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2020-11-24 08:33:20 +01:00
Fabian Grünbichler
1ed022576c
api: include store in invalid owner errors
...
since a group might exist in plenty stores
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2020-11-18 11:11:24 +01:00
Fabian Grünbichler
fdfcb74d67
api: filter snapshot counts
...
unprivileged users should only see the counts related to their part of
the datastore.
while we're at it, switch to a list groups, filter groups, count
snapshots approach (like list_snapshots) to speedup calls to this
endpoint when many unprivileged users share a datastore.
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2020-11-18 11:05:50 +01:00
Fabian Grünbichler
98afc7b152
api: make expensive parts of datastore status opt-in
...
used in the PBS GUI, but also for PVE usage queries which don't need all
the extra expensive information..
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2020-11-18 11:05:47 +01:00
Fabian Grünbichler
0d08fceeb9
improve group/snapshot listing
...
by listing groups first, then filtering, then listing group snapshots.
this cuts down the number of openat/getdirents calls for users that just
have a partial view of the datastore.
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2020-11-18 10:37:04 +01:00
Thomas Lamprecht
8c62c15f56
follouwp: whitespace cleanup
...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-11-12 11:02:45 +01:00
Mira Limbeck
51ac17b56e
api: apt/versions: fix running_kernel string for unknown package case
...
Signed-off-by: Mira Limbeck <m.limbeck@proxmox.com>
2020-11-12 11:02:20 +01:00
Stefan Reiter
5e293f1315
apt: use typed response for get_versions
...
...and cleanup get_versions for manager CLI.
Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
2020-11-12 10:15:32 +01:00
Thomas Lamprecht
e754da3ac2
api: versions: add version also in server package unknown case
...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-11-11 18:30:33 +01:00
Thomas Lamprecht
bc1e52bc38
api: versions: rust fmt cleanups
...
line length limit is 100
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-11-11 18:30:33 +01:00