]>
git.proxmox.com Git - proxmox-backup.git/log
Fabian Grünbichler [Fri, 7 May 2021 08:03:08 +0000 (10:03 +0200)]
fix #3331: improve progress for last snapshot in group
especially for the last group, without this the progress would report:
"percentage done: 100.00% (1 of 2 groups, 1 of 1 group snapshots)"
instead of the more logical
"percentage done: 100.00% (2 of 2 groups)"
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Dietmar Maurer [Thu, 6 May 2021 11:00:03 +0000 (13:00 +0200)]
use build.rs to pass REPOID to rustc-env
Stefan Reiter [Thu, 6 May 2021 15:26:16 +0000 (17:26 +0200)]
file-restore: add debug mode with serial access
Set PBS_QEMU_DEBUG=1 on a command that starts a VM and then connect to
the debug root shell via:
minicom -D \unix#/run/proxmox-backup/file-restore-serial-10.sock
or similar.
Note that this requires 'proxmox-backup-restore-image-debug' to work,
the postinst script is updated to also generate the corresponding image.
Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
Thomas Lamprecht [Fri, 7 May 2021 07:26:41 +0000 (09:26 +0200)]
d/control: update for cargo manifest update
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Stefan Reiter [Thu, 6 May 2021 15:26:19 +0000 (17:26 +0200)]
file-restore: support more drives
A PCI bus can only support up to 32 devices, so excluding built-in
devices that left us with a maximum of about 25 drives. By adding a new
PCI bridge every 32 devices (starting at bridge ID 2 to avoid conflicts
with automatic bridges), we can theoretically support up to 8096 drives.
Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
Stefan Reiter [Thu, 6 May 2021 15:26:18 +0000 (17:26 +0200)]
file-restore: add more RAM for VMs with many drives or debug
The guest kernel requires more memory depending on how many disks are
attached. 256 seems to be enough for basically any reasonable and
unreasonable amount of disks though.
For debug instance, make it 1G, as these are never started automatically
anyway, and need at least 512MB since the initramfs (especially when
including a debug build of the daemon) is substantially bigger.
Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
Stefan Reiter [Thu, 6 May 2021 15:26:17 +0000 (17:26 +0200)]
file-restore: try to kill VM when stale
Helps to clean up a VM that has crashed, is not responding to vsock API
calls, but still has a running QEMU instance.
We always check the process commandline to ensure we don't kill a random
process that took over the PID.
Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
Wolfgang Bumiller [Fri, 7 May 2021 06:41:20 +0000 (08:41 +0200)]
make sure URI paths start with a slash
Otherwise we get an empty error message.
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dietmar Maurer [Thu, 6 May 2021 09:45:40 +0000 (11:45 +0200)]
tape: improve inline docs for READ POSITION LONG
Dietmar Maurer [Thu, 6 May 2021 08:51:59 +0000 (10:51 +0200)]
tape: use LOCATE(16) SCSI command
Turns out this works on LTO4 and newer.
Wolfgang Bumiller [Thu, 6 May 2021 06:55:44 +0000 (08:55 +0200)]
client: use build_authority in build_uri
so we don't need to also duplicate the IPv6 bracket logic
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dietmar Maurer [Thu, 6 May 2021 08:23:54 +0000 (10:23 +0200)]
call create_run_dir() at daemon startup
Dietmar Maurer [Thu, 6 May 2021 08:20:53 +0000 (10:20 +0200)]
cleanup: split SimpleHttp client into extra file
Dominik Csapak [Wed, 5 May 2021 10:09:14 +0000 (12:09 +0200)]
api2/tape/restore: remove unnecessary params from (try_)restore_snapshot_archive
we do not need them
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Wed, 5 May 2021 10:09:13 +0000 (12:09 +0200)]
api2/tape/restore: factor out check_datastore_privs
so that we can reuse it
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Wed, 5 May 2021 10:09:12 +0000 (12:09 +0200)]
tape/media_catalog: add helpers to look for snapshot/chunk files
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Wed, 5 May 2021 10:09:11 +0000 (12:09 +0200)]
tape/drive: add 'move_to_file' to TapeDriver trait
so that we can directly move to a specified file on the tape
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dietmar Maurer [Wed, 5 May 2021 09:57:04 +0000 (11:57 +0200)]
http proxy: add necessary brackets for IPv6 proxy
Dominik Csapak [Wed, 5 May 2021 08:46:19 +0000 (10:46 +0200)]
proxmox_restore_daemon: mount ntfs with 'utf8' option
otherwise, the kernel driver exposes file names as iso 8859-1,
but we want to have them as utf8.
This mapping should always work, since UTF16 can be cleanly converted
to UTF8.
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dietmar Maurer [Wed, 5 May 2021 08:29:15 +0000 (10:29 +0200)]
client/http_client: add necessary brackets
if we are given a 'naked' ipv6 without square brackets around it,
we need to add them ourselves, since the address is ambigious otherwise
when we add the port.
e.g. giving 'fe80::1' as address we arrive at the url (with the default port)
'https://fe80::1:8007/'
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Dietmar Maurer <dietmar@proxmox.com>
Wolfgang Bumiller [Tue, 4 May 2021 10:19:30 +0000 (12:19 +0200)]
use api_string_type macro
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Signed-off-by: Dietmar Maurer <dietmar@proxmox.com>
Dominik Csapak [Mon, 3 May 2021 09:27:46 +0000 (11:27 +0200)]
docs: tape: clarify LTO-4/5 support
some features we need (e.g. READ POSITION long form) are only officially
available with LTO-5, but work on many LTO-4 drives, so move LTO-4 to
'best-effort' support.
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Tue, 4 May 2021 10:21:47 +0000 (12:21 +0200)]
tape/restore: optimize chunk restore behaviour
by checking the 'checked_chunks' before trying to write to disk
and by doing the existance check in the parallel handler. This way,
we do not have to check the existance of a chunk multiple times
(if multiple source datastores gets restored to the same target
datastore) and also we do not have to wait on the stat before reading
the next chunk.
We have to change the &WorkerTask to an Arc though, otherwise we
cannot log to the worker from the parallel handler
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dietmar Maurer [Tue, 4 May 2021 10:25:16 +0000 (12:25 +0200)]
bump version to 1.1.6-2
Dietmar Maurer [Tue, 4 May 2021 10:23:24 +0000 (12:23 +0200)]
update debian/control
Wolfgang Bumiller [Tue, 4 May 2021 10:09:51 +0000 (12:09 +0200)]
Revert "temporarily disable broken test"
This reverts commit
888d89e2ddd340413f65c155170f844f78b3649f .
The code this depends on should now be available.
Wolfgang Bumiller [Tue, 4 May 2021 07:45:27 +0000 (09:45 +0200)]
fix permissions set in create_run_dir
This directory needs to be owned by the backup user instead
of root.
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dietmar Maurer [Tue, 4 May 2021 10:09:56 +0000 (12:09 +0200)]
bump version to 1.1.6-1
Dietmar Maurer [Tue, 4 May 2021 09:29:27 +0000 (11:29 +0200)]
move basic ACME types into src/api2/types/acme.rs
And rename AccountName into AcmeAccountName.
Dietmar Maurer [Mon, 3 May 2021 10:42:49 +0000 (12:42 +0200)]
tape restore: do not verify restored files
Because this is too slow and causes the tape motor to stop. Instead,
remove the verify_state from the manifest.
Dietmar Maurer [Fri, 30 Apr 2021 11:04:55 +0000 (13:04 +0200)]
tape restore: add restore speed to logs
Dietmar Maurer [Fri, 30 Apr 2021 10:35:11 +0000 (12:35 +0200)]
tape restore: write datastore in separate thread
Dietmar Maurer [Fri, 30 Apr 2021 10:09:50 +0000 (12:09 +0200)]
tape restore: split restore_chunk_archive
Split out a separate function scan_chunk_archive() for catalog restores.
Note: Required, because we need to optimize restore_chunk_archive() to
write datastore in separate threads (else thape drive will stop during restore)
Wolfgang Bumiller [Mon, 3 May 2021 09:39:59 +0000 (11:39 +0200)]
daily-update: check acme certificates
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Mon, 3 May 2021 09:39:58 +0000 (11:39 +0200)]
ui: add certificate & acme view
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Mon, 3 May 2021 09:39:57 +0000 (11:39 +0200)]
add acme commands to proxmox-backup-manager
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Mon, 3 May 2021 09:39:56 +0000 (11:39 +0200)]
add node/{node}/config api path
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Mon, 3 May 2021 09:39:55 +0000 (11:39 +0200)]
add node/{node}/certificates api call
API like in PVE:
GET .../info => current cert information
POST .../custom => upload custom certificate
DELETE .../custom => delete custom certificate
POST .../acme/certificate => order acme certificate
PUT .../acme/certificate => renew expiring acme cert
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Mon, 3 May 2021 09:39:54 +0000 (11:39 +0200)]
add config/acme api path
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dietmar Maurer [Tue, 4 May 2021 07:15:57 +0000 (09:15 +0200)]
node config cleanups
Wolfgang Bumiller [Mon, 3 May 2021 09:39:53 +0000 (11:39 +0200)]
add node config
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dietmar Maurer [Tue, 4 May 2021 07:28:53 +0000 (09:28 +0200)]
cleanup acme client
Wolfgang Bumiller [Mon, 3 May 2021 09:39:52 +0000 (11:39 +0200)]
add acme client
This is the highlevel part using proxmox-acme-rs to create
requests and our hyper code to issue them to the acme
server.
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Mon, 3 May 2021 09:39:51 +0000 (11:39 +0200)]
add acme config
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dominik Csapak [Mon, 3 May 2021 09:33:40 +0000 (11:33 +0200)]
docs: user-management: add note about untrusted certificates for webauthn
Since currently it works fine with untrusted certs, but that may change
anytime.
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Thomas Lamprecht [Sat, 1 May 2021 10:01:09 +0000 (12:01 +0200)]
tape backup job: fix typo in error message
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Dominik Csapak [Fri, 30 Apr 2021 12:51:56 +0000 (14:51 +0200)]
bin: use extract_output_format where necessary
else we sometimes forget to remove it from the 'params' variable
and use that further, running into 'invalid parameter' errors
found by giving 'output-format' paramter to proxmox-tape status
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Hannes Laimer [Thu, 29 Apr 2021 11:00:14 +0000 (13:00 +0200)]
add ctime and size function to IndexFile trait
Signed-off-by: Hannes Laimer <h.laimer@proxmox.com>
Dominik Csapak [Fri, 30 Apr 2021 08:13:13 +0000 (10:13 +0200)]
ui: tape: handle tapes in changers without barcode
by checking for definedness of the label (tapes without barcode
have the empty string as label-text) and falling back to the
source slot for the load action
Note: Changed the load-slot API from PUT to POST
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Dietmar Maurer <dietmar@proxmox.com>
Wolfgang Bumiller [Thu, 29 Apr 2021 13:13:09 +0000 (15:13 +0200)]
add dns alias schema
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Thomas Lamprecht [Thu, 29 Apr 2021 14:18:18 +0000 (16:18 +0200)]
temporarily disable broken test
this test was added before the used NodeConfig schema was committed,
cannot work...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Thu, 29 Apr 2021 13:26:24 +0000 (15:26 +0200)]
bump version to 1.1.5-3
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Thu, 29 Apr 2021 13:24:45 +0000 (15:24 +0200)]
file restore: log which filesystems we support
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Stefan Reiter [Thu, 29 Apr 2021 08:22:53 +0000 (10:22 +0200)]
file-restore: use 'norecovery' for xfs filesystem
This allows mounting XFS partitons with 'dirty' states, like from a
running VM. Otherwise XFS tries to write recovery information, which
fails on a read-only mount.
Tested-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Tested-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
Wolfgang Bumiller [Thu, 22 Apr 2021 14:01:58 +0000 (16:01 +0200)]
add 'config file format' to tools::config
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 22 Apr 2021 14:01:57 +0000 (16:01 +0200)]
config::acl: make /system/certificates a valid path
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 22 Apr 2021 14:01:56 +0000 (16:01 +0200)]
bump d/control
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 22 Apr 2021 14:01:55 +0000 (16:01 +0200)]
Cargo.toml: depend on proxmox-acme-rs
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 22 Apr 2021 14:01:54 +0000 (16:01 +0200)]
catalog shell: replace LoopState with ControlFlow
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 22 Apr 2021 14:01:53 +0000 (16:01 +0200)]
tools: add ControlFlow type
modeled after std::ops::ControlFlow
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 22 Apr 2021 14:01:52 +0000 (16:01 +0200)]
CertInfo: add is_expired_after_epoch
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 22 Apr 2021 14:01:51 +0000 (16:01 +0200)]
CertInfo: add not_{after, before}_unix
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 22 Apr 2021 14:01:50 +0000 (16:01 +0200)]
config: factor out certificate writing
for reuse in the certificate api
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 22 Apr 2021 14:01:49 +0000 (16:01 +0200)]
tools::fs::scan_subdir: use nix::Error instead of anyhow
allows using SysError trait on it
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 22 Apr 2021 14:01:47 +0000 (16:01 +0200)]
systemd: add reload_unit
via try-reload-or-restart
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dietmar Maurer [Wed, 28 Apr 2021 10:00:21 +0000 (12:00 +0200)]
tools/http: make user agent configurable
Dietmar Maurer [Wed, 28 Apr 2021 09:44:51 +0000 (11:44 +0200)]
tools/http: set USER_AGENT inside request
Thomas Lamprecht [Wed, 28 Apr 2021 09:15:43 +0000 (11:15 +0200)]
bump version to 1.1.5-2
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Dietmar Maurer [Wed, 28 Apr 2021 08:59:35 +0000 (10:59 +0200)]
api: add schema for http proxy configuration - HTTP_PROXY_SCHEMA
Dietmar Maurer [Wed, 28 Apr 2021 08:08:45 +0000 (10:08 +0200)]
http: add helper to parse proxy configuration
Dietmar Maurer [Wed, 28 Apr 2021 07:55:17 +0000 (09:55 +0200)]
HttpsConnector: add proxy authorization support
Thomas Lamprecht [Wed, 28 Apr 2021 07:41:45 +0000 (09:41 +0200)]
buildsys: add pbs-client repo in upload target
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Stefan Reiter [Tue, 27 Apr 2021 13:35:45 +0000 (15:35 +0200)]
file-restore: strip .img.fidx suffix from drive serials
Drive serials have a character limit of 20, longer names like
"drive-virtio0.img.fidx" or "drive-efidisk0.img.fidx" would get cut off.
Fix this by removing the suffix, it is not necessary to uniquely
identify an image.
Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
Dietmar Maurer [Tue, 27 Apr 2021 10:21:08 +0000 (12:21 +0200)]
bump version to 1.1.5-1
Dominik Csapak [Tue, 27 Apr 2021 08:17:01 +0000 (10:17 +0200)]
tools/sgutils2: add size workaround for mode_sense
Some drives will always return the number of bytes given in the
allocation_length field, but correctly report the data len in the mode
sense header. Simply ignore the excess data.
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dietmar Maurer [Tue, 27 Apr 2021 09:17:45 +0000 (11:17 +0200)]
tape: improve inline docs
Dietmar Maurer [Tue, 27 Apr 2021 09:00:59 +0000 (11:00 +0200)]
tape: add read_medium_configuration_page() to detect WORM media
And use it inside format_media().
Stefan Reiter [Tue, 27 Apr 2021 08:48:16 +0000 (10:48 +0200)]
file-restore: fix package name for kernel/initramfs image
Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
Dietmar Maurer [Tue, 27 Apr 2021 07:32:07 +0000 (09:32 +0200)]
tape: remove MediumType struct, which is only valid on IBM drives
HP drives do not return this information.
Note: This breaks format on WORM media, because we have not way
to detect WOREM media (how?).
Thomas Lamprecht [Tue, 27 Apr 2021 06:41:05 +0000 (08:41 +0200)]
bump version to 1.1.4-1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Dominik Csapak [Mon, 26 Apr 2021 13:20:25 +0000 (15:20 +0200)]
tools/sgutils2: improve error messages
include the expected and unexpected sizes in the error message,
so that it's easier to debug in case of an error
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Stefan Reiter [Mon, 26 Apr 2021 13:04:16 +0000 (15:04 +0200)]
file-restore: use less memory for VM and reboot on panic
With the vsock-pkt-buffer fix in proxmox-backup-restore-image, we can
use way less memory for the VM without risking any crashes. 128 MiB
seems to be the lowest it will go and still be fully reliable.
While at it, add the "panic=1" argument to the kernel command line, so
in case the kernel *does* run out of memory, it will at least restart
automatically.
Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
Stefan Reiter [Mon, 26 Apr 2021 13:04:15 +0000 (15:04 +0200)]
file-restore: exit with code 1 in case streaming fails
This way the task gets marked as "failed" in PVE.
Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
Stefan Reiter [Mon, 26 Apr 2021 13:04:14 +0000 (15:04 +0200)]
file-restore: add size to image files and components
Read image sizes (.pxar.fidx/.img.didx) from manifest and partition
sizes from /sys/...
Requires a change to ArchiveEntry, as DirEntryAttribute::Directory
does not have a size associated with it (and that's probably good).
Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
Dietmar Maurer [Mon, 26 Apr 2021 09:21:11 +0000 (11:21 +0200)]
http proxy: improve response parser
Avoid strange error message in case of connect error (only parse status + headers).
We are not interested in the response body, so simply ignore it.
Dominik Csapak [Mon, 26 Apr 2021 08:21:06 +0000 (10:21 +0200)]
api2/config/datastore: use update_job_last_run_time for schedules
this way, the api call does not error out when the file is locked
currently (which means that job is running and we do not need
to update the time)
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Mon, 26 Apr 2021 08:21:05 +0000 (10:21 +0200)]
server/jobstate: improve name of 'try_update_state_file'
and improve comment
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Mon, 19 Apr 2021 08:32:16 +0000 (10:32 +0200)]
server/jobstate: add 'updatd' to Finish variant
when a user updates a job schedule, we want to save that point in time
to calculate future runs, otherwise when a user updates a schedule to
a time that would have been between the last run and 'now' the
schedule is triggered instantly
for example:
schedule 08:00
last run today 08:00
now it is 12:00
before this patch:
update schedule to 11:00
-> triggered instantly since we calculate from 08:00
after this patch:
update schedule to 11:00
-> triggered tomorrow 11:00 since we calculate from today 12:00
the change in the enum type is ok, since by default serde does not
error on unknown fields and the new field is optional
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Fri, 23 Apr 2021 12:57:18 +0000 (14:57 +0200)]
api2/tape/backup: list backed up snapshots on failed backup notification
if a backup task failed (e.g. it was aborted), show the snapshots
which were successfully backed up in the notification
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Fri, 23 Apr 2021 10:52:45 +0000 (12:52 +0200)]
ui: tape: reload drive status on user actions
when the user start an action where we know that it locks the drive,
reload the tape store, so that the state is refreshed
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Wolfgang Bumiller [Fri, 23 Apr 2021 11:22:30 +0000 (13:22 +0200)]
file-restore: avoid unnecessary clone
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Fabian Grünbichler [Fri, 23 Apr 2021 11:00:47 +0000 (13:00 +0200)]
file-restore: add context to b64-decode error
to make the following cryptic error:
proxmox-file-restore failed: Error: Invalid byte 46, offset 5.
more understandable:
proxmox-file-restore failed: Error: Failed base64-decoding path '/root.pxar.didx' - Invalid byte 46, offset 5.
when a user passes in a non-base64 path but sets `--base64`.
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Thomas Lamprecht [Fri, 23 Apr 2021 08:03:38 +0000 (10:03 +0200)]
bump version to 1.1.3-2
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Dominik Csapak [Mon, 19 Apr 2021 11:02:03 +0000 (13:02 +0200)]
api2/node/status: extend node status
to be more on par with pve
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Mon, 19 Apr 2021 11:02:02 +0000 (13:02 +0200)]
api2/nodes/status: use NodeStatus struct
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Mon, 19 Apr 2021 11:02:01 +0000 (13:02 +0200)]
api2/types: add necessary types for node status
we want to use concrete types instead of value
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dietmar Maurer [Fri, 23 Apr 2021 07:56:44 +0000 (09:56 +0200)]
tape: do not query density_code in SgTape::new()
Because this can fail with NoSense/MediumChanged and other informational
Sense codes.
Dietmar Maurer [Fri, 23 Apr 2021 06:33:13 +0000 (08:33 +0200)]
tape: format_media - implement special case for WORM media
Dietmar Maurer [Fri, 23 Apr 2021 05:54:42 +0000 (07:54 +0200)]
tape: define and use MediumType enum
Dietmar Maurer [Fri, 23 Apr 2021 05:27:30 +0000 (07:27 +0200)]
tape: use loaded media_type in format_media (instead of drive_density)
Required to format LTO4 media loaded in LTO5 drive).
Also contains some SCSI code cleanups.