]>
git.proxmox.com Git - proxmox-backup.git/log
Dietmar Maurer [Fri, 19 Mar 2021 07:56:14 +0000 (08:56 +0100)]
tape: cleanup PoolWriter - factor out common code
Dietmar Maurer [Fri, 19 Mar 2021 07:19:13 +0000 (08:19 +0100)]
tape: cleanup - split PoolWriter into several files
Dietmar Maurer [Fri, 19 Mar 2021 06:50:32 +0000 (07:50 +0100)]
tape: make sure we only commit/write valid catalogs
Dietmar Maurer [Fri, 19 Mar 2021 06:33:59 +0000 (07:33 +0100)]
tape: store media_uuid in PoolWriterState
This is mainly a cleanup, avoiding to access the catalog_set to get the uuid.
Dietmar Maurer [Fri, 19 Mar 2021 06:22:54 +0000 (07:22 +0100)]
tape: cleanup - rename CatalogBuilder to CatalogSet
Dominik Csapak [Thu, 18 Mar 2021 12:01:06 +0000 (13:01 +0100)]
server/email_notifications: do not double html escape
the default escape handler is handlebars::html_escape, but this are
plain text emails and we manually escape them for the html part, so
set the default escape handler to 'no_escape'
this avoids double html escape for the characters: '&"<>' in emails
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Thu, 18 Mar 2021 12:01:05 +0000 (13:01 +0100)]
server/email_notifications: do not panic on template registration
instead print an error and continue, the rendering functions will error
out if one of the templates could not be registered
if we `.unwrap()` here, it can lead to problems if the templates are
not correct, i.e. we could panic while holding a lock, if something holds
a mutex while this is called for the first time
add a test to catch registration issues during package build
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Thu, 18 Mar 2021 12:01:04 +0000 (13:01 +0100)]
tools/systemd/time: implement some Traits for TimeSpan
namely
* From<Duration> (to convert easily from duration to timespan)
* Display (for better formatting)
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dietmar Maurer [Fri, 19 Mar 2021 05:58:02 +0000 (06:58 +0100)]
tape: backup media catalogs
Thomas Lamprecht [Thu, 18 Mar 2021 11:36:28 +0000 (12:36 +0100)]
bump version to 1.0.11-1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Dietmar Maurer [Thu, 18 Mar 2021 07:43:55 +0000 (08:43 +0100)]
tape: improve catalog consistency checks
Try to check if we read the correct catalog by verifying uuid, media_set_uuid
and seq_nr.
Note: this changes the catalog format again.
Dominik Csapak [Wed, 17 Mar 2021 14:19:18 +0000 (15:19 +0100)]
tools/subscription: ignore ENOENT for apt auth config removal
deleting a nonexistant file is hardly an error worth mentioning
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Wed, 17 Mar 2021 12:18:40 +0000 (13:18 +0100)]
ui: tape/BackupOverview: insert a datastore level
since we can now backup multiple datastores in the same media-set,
we show the datastores as first level below that
the final tree structucture looks like this:
tapepool A
- media set 1
- datastore I
- tape x
- ct/100
- ct/100/2020-01-01T00:00:00Z
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Wed, 17 Mar 2021 10:47:32 +0000 (11:47 +0100)]
ui: tape/DriveStatus: fix updating pointer+click handler on info widget
we can only do this after it is rendered, the element does not exist
before
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Wed, 17 Mar 2021 10:47:31 +0000 (11:47 +0100)]
ui: tape/DriveStatus: add erase button
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dietmar Maurer [Wed, 17 Mar 2021 12:35:23 +0000 (13:35 +0100)]
tape: define magic number for catalog archives
Dietmar Maurer [Wed, 17 Mar 2021 10:29:23 +0000 (11:29 +0100)]
tape: improve catalog parser
Dietmar Maurer [Wed, 17 Mar 2021 10:17:54 +0000 (11:17 +0100)]
tape: proxmox-tape media content - add 'store' attribute
Dietmar Maurer [Tue, 16 Mar 2021 11:52:49 +0000 (12:52 +0100)]
tape: store datastore name in tape archives and media catalog
So that we can store multiple datastores on a single media set.
Deduplication is now per datastore (not per media set).
Dietmar Maurer [Tue, 16 Mar 2021 09:43:20 +0000 (10:43 +0100)]
SnapshotReader: add self.datastore_name() helper
Dietmar Maurer [Tue, 16 Mar 2021 08:40:13 +0000 (09:40 +0100)]
tape: PoolWriter - remove unnecessary move_to_eom
Dietmar Maurer [Wed, 17 Mar 2021 08:51:26 +0000 (09:51 +0100)]
update OnlineHelpInfo.js
Thomas Lamprecht [Tue, 16 Mar 2021 19:30:11 +0000 (20:30 +0100)]
docs: technically not everything is in rust/js
I mean the whole distro uses quite some C and the like as base, so
avoid being overly strict here.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Tue, 16 Mar 2021 19:29:52 +0000 (20:29 +0100)]
docs: features: mention that there are no client/data limits
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Tue, 16 Mar 2021 19:26:21 +0000 (20:26 +0100)]
docs: drop uncommon spelled out GCM
It does not help users if that is spelled out, and its not a common
use of GCM, and especially in the AES 256 context its clear what is
meant. The link to Wikipedia stays, so interested people can still
read up on it and others get a better overview due to the text being
more concise.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Tue, 16 Mar 2021 19:15:04 +0000 (20:15 +0100)]
docs: fix linking, avoid over long text in main feature list
The main feature list should provide a short overview of the, well,
main features. While enterprise support *is* a main and important
feature, it's not the place here to describe things like personal
volume/ngo/... offers and the like.
Move parts of it to getting help, which lacked mentioning the
enterprise support too and is a good place to describe the customer
portal.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Dylan Whyte [Tue, 16 Mar 2021 13:21:07 +0000 (14:21 +0100)]
docs: mention support subscription plans
and change enterprise repository section to present tense.
Signed-off-by: Dylan Whyte <d.whyte@proxmox.com>
Dominik Csapak [Mon, 15 Mar 2021 11:21:17 +0000 (12:21 +0100)]
tools/zip: only add zip64 field when necessary
if neither offset nor size exceeds 32bit, do not add the
zip64 extension field
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Mon, 15 Mar 2021 12:01:46 +0000 (13:01 +0100)]
ui: tape/DriveStatus: open task window on click on state
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Fri, 12 Mar 2021 15:06:27 +0000 (16:06 +0100)]
ui: tape: convert slot selection on transfer to combogrid
this is much handier than number field, and the user can instantly
see which one is an import/export slot
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Fri, 12 Mar 2021 10:28:41 +0000 (11:28 +0100)]
ui: tape/Restore: let the user choose an owner
so that the tape backup can be restored as any user, given
the current logged in user has the correct permission.
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Fri, 12 Mar 2021 10:28:40 +0000 (11:28 +0100)]
proxmox-tape: add missing notify-user to 'proxmox-tape restore'
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dietmar Maurer [Tue, 16 Mar 2021 07:50:46 +0000 (08:50 +0100)]
tape: use MB/s for backup speed (to match drive speed specification)
Dietmar Maurer [Tue, 16 Mar 2021 07:11:57 +0000 (08:11 +0100)]
tape: speedup backup by doing read/write in parallel
Dominik Csapak [Mon, 15 Mar 2021 11:21:16 +0000 (12:21 +0100)]
tools/zip: add missing start_disk field for zip64 extension
it is not optional, even though we give the size explicitely
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Thomas Lamprecht [Sun, 14 Mar 2021 18:18:35 +0000 (19:18 +0100)]
backup info: run rustfmt
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Wolfgang Bumiller [Fri, 12 Mar 2021 09:47:56 +0000 (10:47 +0100)]
update to pxar 0.10
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Fri, 12 Mar 2021 09:00:34 +0000 (10:00 +0100)]
fix feature flag logic in pxar create
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dietmar Maurer [Thu, 11 Mar 2021 11:59:57 +0000 (12:59 +0100)]
tape: write_chunk_archive - do not consume partially written chunk at EOT
So that it is re-written to the next tape.
Thomas Lamprecht [Thu, 11 Mar 2021 07:24:56 +0000 (08:24 +0100)]
bump version to 1.0.10-1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Thu, 11 Mar 2021 09:18:39 +0000 (10:18 +0100)]
d/postinst: fixup tape permissions if existing with wrong permissions
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Thu, 11 Mar 2021 09:07:23 +0000 (10:07 +0100)]
d/postinst: only check for broken task index on upgrade
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Thu, 11 Mar 2021 12:39:27 +0000 (13:39 +0100)]
d/postinst: tell user that we restart when updating from older version
Thomas Lamprecht [Thu, 11 Mar 2021 07:17:21 +0000 (08:17 +0100)]
d/postinst: restart when updating from older version
Else one has quite a terrible UX when installing from 1.0 ISO and
then upgrading to latest release..
commit
0ec79339f7aebf9 for the fix and some other details
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Dominik Csapak [Thu, 11 Mar 2021 08:24:53 +0000 (09:24 +0100)]
server/worker_task: improve endtime for unknown tasks
instead of always using the starttime, use the last timestamp from the log
this way, one can see when the task was aborted without having to read
the log
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Thu, 11 Mar 2021 08:24:52 +0000 (09:24 +0100)]
tape/send_load_media_email: move to server/email_notifications
and reuse 'send_job_status_mail' there so that we get consistent
formatted mails from pbs (e.g. html part and author)
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dietmar Maurer [Thu, 11 Mar 2021 07:43:13 +0000 (08:43 +0100)]
tape: improve backup task log
Thomas Lamprecht [Wed, 10 Mar 2021 15:37:09 +0000 (16:37 +0100)]
typo fixes all over the place
found and semi-manually replaced by using:
codespell -L mut -L crate -i 3 -w
Mostly in comments, but also email notification and two occurrences
of misspelled 'reserved' struct member, which where not used and
cargo build did not complain about the change, soo ...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Wed, 10 Mar 2021 14:24:39 +0000 (15:24 +0100)]
ui: fix typo in comment
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Oguz Bektas [Wed, 10 Mar 2021 13:04:02 +0000 (14:04 +0100)]
ui: fix typo in options
Signed-off-by: Oguz Bektas <o.bektas@proxmox.com>
Thomas Lamprecht [Wed, 10 Mar 2021 14:22:50 +0000 (15:22 +0100)]
d/postinst: fix typo in comment
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Dietmar Maurer [Wed, 10 Mar 2021 13:13:48 +0000 (14:13 +0100)]
tape: fix scsi volume_statistics and cartridge_memory for quantum drives
Dylan Whyte [Tue, 9 Mar 2021 13:58:14 +0000 (14:58 +0100)]
tape: documentation language fixup
Signed-off-by: Dylan Whyte <d.whyte@proxmox.com>
Dominik Csapak [Wed, 10 Mar 2021 09:10:47 +0000 (10:10 +0100)]
ui: tape: increase tapestore interval
from 2 to 60 seconds. To retain the response time of the gui
when adding/editing/removing, trigger a manual reload on these actions
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Wed, 10 Mar 2021 09:10:46 +0000 (10:10 +0100)]
ui: NavigationTree: do not modify list while iterating
iterating over a nodeinterfaces children while removing them
will lead to 'child' being undefined
instead collect the children to remove in a separate list
and iterate over them
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dietmar Maurer [Wed, 10 Mar 2021 09:59:13 +0000 (10:59 +0100)]
tape: improve backup task log (show percentage)
Dietmar Maurer [Wed, 10 Mar 2021 08:54:51 +0000 (09:54 +0100)]
tape: improve backup task log format
Dietmar Maurer [Wed, 10 Mar 2021 08:24:38 +0000 (09:24 +0100)]
tape: read_tape_mam - pass correct allocation len
Dietmar Maurer [Wed, 10 Mar 2021 07:11:51 +0000 (08:11 +0100)]
tape: cleanup - remove wrong inline comment
Dominik Csapak [Tue, 9 Mar 2021 08:43:06 +0000 (09:43 +0100)]
api2/tape/backup: continue on vanishing snapshots
when we do a prune during a tape backup, do not cancel the tape backup,
but continue with a warning
the task still fails and prompts the user to check the log
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dietmar Maurer [Tue, 9 Mar 2021 09:00:26 +0000 (10:00 +0100)]
tape: lock artificial "__UNASSIGNED__" pool to avoid races
Dietmar Maurer [Tue, 9 Mar 2021 07:33:21 +0000 (08:33 +0100)]
tape: improve MediaPool allocation by sorting tapes by ctime and label_text
Thomas Lamprecht [Mon, 8 Mar 2021 14:56:59 +0000 (15:56 +0100)]
bump version to 1.0.9-1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Mon, 8 Mar 2021 16:06:49 +0000 (17:06 +0100)]
ui: navigation: adapt tape icons also here
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Mon, 8 Mar 2021 14:51:47 +0000 (15:51 +0100)]
ui: tape drive icon: invert
Less anti-aliasing to do, so it looks better when small.
Note, I use a mask as else we could not cut out something
transparent, but only over paint it filled with white, which is not
the same and not how font awesome does it.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Mon, 8 Mar 2021 13:35:28 +0000 (14:35 +0100)]
ui: tape panel: add/use icons
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Mon, 8 Mar 2021 09:29:50 +0000 (10:29 +0100)]
ui: tape: code style: xtype coms first
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Dominik Csapak [Mon, 8 Mar 2021 13:10:51 +0000 (14:10 +0100)]
ui: tape/window/Tape{Backup, Restore}: allow empty notify user field
we have to set skipEmptyText on comboGrids
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Mon, 8 Mar 2021 13:10:50 +0000 (14:10 +0100)]
tape/linux_tape: remove debug prints
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Mon, 8 Mar 2021 13:10:49 +0000 (14:10 +0100)]
tape/backup: add success/error notifications
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dietmar Maurer [Mon, 8 Mar 2021 11:52:06 +0000 (12:52 +0100)]
ui: remove cartridge memory panel (show window after butten press instead)
Dietmar Maurer [Mon, 8 Mar 2021 10:30:12 +0000 (11:30 +0100)]
ui: fix date rendering in drive status
Dominik Csapak [Mon, 8 Mar 2021 09:06:07 +0000 (10:06 +0100)]
ui: tape/Drive{Config, Status} move actions to status panel
so that the 'DriveConfig' panel is purely for configuration
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Mon, 8 Mar 2021 09:06:06 +0000 (10:06 +0100)]
ui: tape/DriveStatus: add cartridge memory grid
that the user can load when a tape is inserted
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dietmar Maurer [Mon, 8 Mar 2021 09:56:28 +0000 (10:56 +0100)]
docs: fix note about global media pool namespace
Thomas Lamprecht [Mon, 8 Mar 2021 09:19:19 +0000 (10:19 +0100)]
docs: alabaster theme: better contrast for background color of topics
The old value just was way to heavy, and notes/warnings/...
admonitions did not stick out anymore.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Dietmar Maurer [Mon, 8 Mar 2021 08:47:44 +0000 (09:47 +0100)]
ui: add online help to drive/changer status
Dietmar Maurer [Mon, 8 Mar 2021 08:37:08 +0000 (09:37 +0100)]
tape: add docu link targets for online help
Dietmar Maurer [Mon, 8 Mar 2021 08:07:24 +0000 (09:07 +0100)]
tape: clean - fix if cleaning tape is already loaded
Dietmar Maurer [Mon, 8 Mar 2021 07:27:02 +0000 (08:27 +0100)]
tape: test tape alert flags after drive clean
Thomas Lamprecht [Mon, 8 Mar 2021 07:59:15 +0000 (08:59 +0100)]
ui: images: simplify tape icon
1. Use same height as width
2. drop the top/bottom "frame" lines
3. instead of two "bearings" side by side, like VHS or music-compact
tapes have, use a single bearing and an outer circle to denote the
magnetic tape edge
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Dietmar Maurer [Mon, 8 Mar 2021 06:37:05 +0000 (07:37 +0100)]
pmt: add tape-alert-flags command
Dietmar Maurer [Sat, 6 Mar 2021 11:20:26 +0000 (12:20 +0100)]
docs: use code-block inside tape-backup.rst
Dietmar Maurer [Sat, 6 Mar 2021 11:10:39 +0000 (12:10 +0100)]
docs: document tape backup jobs
Dietmar Maurer [Sat, 6 Mar 2021 09:22:08 +0000 (10:22 +0100)]
add proxmox-tape bash-completion
Dominik Csapak [Fri, 5 Mar 2021 13:10:19 +0000 (14:10 +0100)]
api2/tape: add notify_user to backup(-jobs) and restore api calls
so that a user can be given that will be notified for
manual intervention (e.g. inserting a tape)
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Fri, 5 Mar 2021 08:45:32 +0000 (09:45 +0100)]
ui: tape: add notify-user fields
to backup jobs, backups and restores
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Fri, 5 Mar 2021 08:45:30 +0000 (09:45 +0100)]
config/tape_job: add notify-user config to tape jobs
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Dietmar Maurer <dietmar@proxmox.com>
Dietmar Maurer [Fri, 5 Mar 2021 11:43:39 +0000 (12:43 +0100)]
tape: avoid Updatable for now
Dietmar Maurer [Fri, 5 Mar 2021 10:40:52 +0000 (11:40 +0100)]
tape: finish api permission checks
Dietmar Maurer [Fri, 5 Mar 2021 09:06:19 +0000 (10:06 +0100)]
acl: use /tape/device instead of /tape/drive and /tape/changer
Dietmar Maurer [Fri, 5 Mar 2021 08:58:36 +0000 (09:58 +0100)]
tape: improve PoolWriter logging
Log reason why we allocate a new media set.
Dietmar Maurer [Fri, 5 Mar 2021 07:36:18 +0000 (08:36 +0100)]
cleanup: rename token_user into auth_id_filter
Dietmar Maurer [Thu, 4 Mar 2021 16:57:40 +0000 (17:57 +0100)]
ui: use shorter datetime format for encryption key creation time
Dietmar Maurer [Thu, 4 Mar 2021 16:09:57 +0000 (17:09 +0100)]
ui: do not show MediaSet Uuid in backup content grid
Dietmar Maurer [Thu, 4 Mar 2021 12:11:04 +0000 (13:11 +0100)]
tape: fix media_expire_time
Dylan Whyte [Thu, 4 Mar 2021 14:02:27 +0000 (15:02 +0100)]
tfa docs: language fixup
Simplifies the introduction a bit and makes it more readable.
Also some other minor language fixes throughout the section.
Signed-off-by: Dylan Whyte <d.whyte@proxmox.com>
Dietmar Maurer [Thu, 4 Mar 2021 11:36:45 +0000 (12:36 +0100)]
tape: fix wrong media set expire time
Dietmar Maurer [Thu, 4 Mar 2021 07:52:58 +0000 (08:52 +0100)]
tape: improve media status in list_media
Dietmar Maurer [Thu, 4 Mar 2021 07:33:26 +0000 (08:33 +0100)]
ui: add acl paths for tape permission