]>
git.proxmox.com Git - proxmox-backup.git/log
Dietmar Maurer [Sun, 20 Jan 2019 09:06:29 +0000 (10:06 +0100)]
use newer versions
Dietmar Maurer [Sun, 20 Jan 2019 08:55:20 +0000 (09:55 +0100)]
catar: improve bash completion
Dietmar Maurer [Sun, 20 Jan 2019 08:47:32 +0000 (09:47 +0100)]
/api3/admin/datastore.rs: add missing subdir to directory index
Dietmar Maurer [Sun, 20 Jan 2019 08:39:32 +0000 (09:39 +0100)]
api3/admin/datastore/catar.rs: implement download
Dietmar Maurer [Sun, 20 Jan 2019 08:38:28 +0000 (09:38 +0100)]
tools/wrapped_reader_stream.rs: new helper class
Will use that to download catar files.
Dietmar Maurer [Sat, 19 Jan 2019 16:27:02 +0000 (17:27 +0100)]
api3/admin/datastore/catar.rs: start impl. download
Dietmar Maurer [Sat, 19 Jan 2019 15:42:43 +0000 (16:42 +0100)]
api/router.rs: rename ApiUploadMethod to ApiAsyncMethod
We can use this for uploads and downloads ...
Dietmar Maurer [Sat, 19 Jan 2019 11:53:07 +0000 (12:53 +0100)]
Revert "/api/schema.rs: implement Schema::Option"
This reverts commit
0a35462c1e3b9429ea9f276ac620af4752919dff .
I am not sure this add much value, and the old approach needs
less memory. If we really need single optional values, we can still
implement such Option while keeping the hash based approach...
Dietmar Maurer [Sat, 19 Jan 2019 11:52:51 +0000 (12:52 +0100)]
Revert "api/schema.rs: avoid Option(Option( nesting"
This reverts commit
ffdac1af01f16ab679b4bbd87f1126e54d338880 .
Dietmar Maurer [Fri, 18 Jan 2019 16:54:06 +0000 (17:54 +0100)]
remove unused type PropertyMap
Dietmar Maurer [Fri, 18 Jan 2019 16:49:19 +0000 (17:49 +0100)]
api/schema.rs: avoid Option(Option( nesting
Dietmar Maurer [Fri, 18 Jan 2019 16:40:37 +0000 (17:40 +0100)]
/api/schema.rs: implement Schema::Option
Dietmar Maurer [Fri, 18 Jan 2019 16:39:51 +0000 (17:39 +0100)]
fix tests/catar.rs - add missing parameter
Dietmar Maurer [Fri, 18 Jan 2019 15:50:15 +0000 (16:50 +0100)]
reduce compiler warnings
Dietmar Maurer [Fri, 18 Jan 2019 12:42:52 +0000 (13:42 +0100)]
move complete_file_name() helper into tools.rs
Dietmar Maurer [Fri, 18 Jan 2019 12:40:05 +0000 (13:40 +0100)]
bin/proxmox-backup-client.rs: improve file name completion
Dietmar Maurer [Fri, 18 Jan 2019 11:24:58 +0000 (12:24 +0100)]
backup/datastore.rs: list all index files using walkdir crate
Dietmar Maurer [Fri, 18 Jan 2019 11:01:37 +0000 (12:01 +0100)]
backup/datastore.rs: try to create useful directory layout
store/type/ID/TIME/xxx.yyy
Dietmar Maurer [Fri, 18 Jan 2019 09:13:45 +0000 (10:13 +0100)]
cleanup nodename()
Dietmar Maurer [Fri, 18 Jan 2019 08:58:15 +0000 (09:58 +0100)]
tools.rs: new helper nodename()
Dietmar Maurer [Fri, 18 Jan 2019 07:33:11 +0000 (08:33 +0100)]
api3/admin/datastore.rs: rename parameter "name" to "store"
Dietmar Maurer [Thu, 17 Jan 2019 13:24:20 +0000 (14:24 +0100)]
bin/proxmox-backup-client.rs: implement file name completions - first try ...
Dietmar Maurer [Thu, 17 Jan 2019 11:43:29 +0000 (12:43 +0100)]
api3/admin/datastore/upload_catar.rs: verify content type ("application/x-proxmox-backup-catar")
Dietmar Maurer [Thu, 17 Jan 2019 11:16:36 +0000 (12:16 +0100)]
client/catar_backup_stream.rs: remove debug code
Dietmar Maurer [Thu, 17 Jan 2019 11:14:02 +0000 (12:14 +0100)]
tools.rs: new helper required_string_param()
To extract parameters from Value.
Dietmar Maurer [Thu, 17 Jan 2019 11:03:38 +0000 (12:03 +0100)]
api/router.rs: return Result in upload handler
Dietmar Maurer [Thu, 17 Jan 2019 10:38:22 +0000 (11:38 +0100)]
proxmox-backup-client: implement upload to server
Dietmar Maurer [Thu, 17 Jan 2019 10:29:38 +0000 (11:29 +0100)]
client/http_client.rs: new helper class
Dietmar Maurer [Thu, 17 Jan 2019 08:16:50 +0000 (09:16 +0100)]
api3/admin/datastore.rs: change api patch for upload_catar
Wolfgang Bumiller [Wed, 16 Jan 2019 14:17:25 +0000 (15:17 +0100)]
upload: don't return NotReady
We need to kick (poll) the stream's next element, so simply
reiterate, the try_read!() will then return NotReady from
the next stream item for us.
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Wed, 16 Jan 2019 13:19:12 +0000 (14:19 +0100)]
cleanup previous commit...
This kind of notation is weird...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Wed, 16 Jan 2019 13:17:50 +0000 (14:17 +0100)]
listen on :: instead of 0.0.0.0
Since this supports both ipv6 & ipv4 unless v6only is
explicitly enabled.
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dietmar Maurer [Wed, 16 Jan 2019 12:58:36 +0000 (13:58 +0100)]
server/rest.rs: correctly pass query/url parameters
Dietmar Maurer [Wed, 16 Jan 2019 09:19:49 +0000 (10:19 +0100)]
reduce compiler warnings
Dietmar Maurer [Wed, 16 Jan 2019 09:15:39 +0000 (10:15 +0100)]
client/catar_backup_stream.rs: new helper for catar uploads to server
Dietmar Maurer [Tue, 15 Jan 2019 11:36:16 +0000 (12:36 +0100)]
backup/datastore.rs: use Arc for chunk_store references
Dietmar Maurer [Tue, 15 Jan 2019 10:38:26 +0000 (11:38 +0100)]
api3/admin/datastore/upload_catar.rs: implement upload future
Dietmar Maurer [Mon, 14 Jan 2019 11:26:04 +0000 (12:26 +0100)]
api/router.rs: allow different types of api methods
Added a prototype for file/backup uploads.
Dietmar Maurer [Sat, 12 Jan 2019 15:49:02 +0000 (16:49 +0100)]
catar: define all feature flags
Dietmar Maurer [Sat, 12 Jan 2019 14:43:20 +0000 (15:43 +0100)]
catar/encoder.rs: allow to pass list of devices
We can use this to implement the --one-file-system like options. This
is a bit more convenient, because this way we can select to include
multiple devices (which is required by container backups).
Dietmar Maurer [Sat, 12 Jan 2019 10:56:53 +0000 (11:56 +0100)]
catar/encoder.rs: disable backup of virtual file systems
Dietmar Maurer [Sat, 12 Jan 2019 09:28:26 +0000 (10:28 +0100)]
catar/encoder.rs: only test fat attribute on MSDOS and FUSE file systems
Dietmar Maurer [Sat, 12 Jan 2019 09:20:08 +0000 (10:20 +0100)]
/catar/encoder.rs: do not store data from virtual file systems
Dietmar Maurer [Sat, 12 Jan 2019 08:18:21 +0000 (09:18 +0100)]
catar/encoder.rs: add helpers to test file system type
Dietmar Maurer [Sat, 12 Jan 2019 07:51:04 +0000 (08:51 +0100)]
catar/encoder.rs: pass magic fs number to encode_dir
Dietmar Maurer [Fri, 11 Jan 2019 15:53:17 +0000 (16:53 +0100)]
catar/encoder.rs: use O_DIRECTORY to open dirs
Dietmar Maurer [Fri, 11 Jan 2019 12:26:05 +0000 (13:26 +0100)]
catar: encode/decode sockets and fifos
Dietmar Maurer [Fri, 11 Jan 2019 12:12:55 +0000 (13:12 +0100)]
catar/decoder.rs: corrently pass mode to mknodat
Dietmar Maurer [Fri, 11 Jan 2019 11:22:00 +0000 (12:22 +0100)]
catar: encode/decode devices
Dietmar Maurer [Fri, 11 Jan 2019 09:44:57 +0000 (10:44 +0100)]
catar/format_definition.rs: add more feature flags
Dietmar Maurer [Fri, 11 Jan 2019 09:18:22 +0000 (10:18 +0100)]
catar/encoder.rs: store fat file system attributes
Dietmar Maurer [Fri, 11 Jan 2019 09:01:51 +0000 (10:01 +0100)]
catar/encoder.rs: cleanups
Dietmar Maurer [Fri, 11 Jan 2019 08:20:10 +0000 (09:20 +0100)]
catar/encoder.rs: encode linux fs attributes, cleanup encoder
Try to avoid duplicate stat calls (assume file tree is stable during backup).
Dietmar Maurer [Fri, 11 Jan 2019 07:41:33 +0000 (08:41 +0100)]
avoid compiler warnings
Dietmar Maurer [Thu, 10 Jan 2019 10:19:54 +0000 (11:19 +0100)]
backup/archive_index.rs: correctly check for errors
Dietmar Maurer [Wed, 9 Jan 2019 13:44:00 +0000 (14:44 +0100)]
catar/decoder.rs: restore mode, uid, gid and mtime
Dietmar Maurer [Wed, 9 Jan 2019 11:17:23 +0000 (12:17 +0100)]
catar/decoder.rs: avoid slashes in file names
Dietmar Maurer [Tue, 8 Jan 2019 16:17:55 +0000 (17:17 +0100)]
catar/decoder.rs: impl restore dirs, files, and symlinks
Wolfgang Bumiller [Tue, 8 Jan 2019 13:22:43 +0000 (14:22 +0100)]
rest: rename utf-8-checked 'bytes' to 'utf8'
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Tue, 8 Jan 2019 13:21:54 +0000 (14:21 +0100)]
rest: don't copy the body
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Tue, 8 Jan 2019 13:11:08 +0000 (14:11 +0100)]
tools/timer: fixup doc formatting
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Tue, 8 Jan 2019 11:47:35 +0000 (12:47 +0100)]
Cargo.toml: [lib] has no authors/version
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dietmar Maurer [Tue, 8 Jan 2019 08:26:07 +0000 (09:26 +0100)]
catar/decoder.rs: restore_sequential - read payload
Dietmar Maurer [Mon, 7 Jan 2019 18:18:59 +0000 (19:18 +0100)]
catar/decoder.rs: improve restore_sequential
Dietmar Maurer [Mon, 7 Jan 2019 18:07:03 +0000 (19:07 +0100)]
catar/decoder.rs: start implementing sequential decoder, cleanups
And use [derive(Endian)] for endian conversion.
Dietmar Maurer [Mon, 7 Jan 2019 13:59:33 +0000 (14:59 +0100)]
depend on endian_trait
Dietmar Maurer [Mon, 7 Jan 2019 12:25:41 +0000 (13:25 +0100)]
catar: implement create
Dietmar Maurer [Sun, 6 Jan 2019 16:42:23 +0000 (17:42 +0100)]
bin/catar.rs: add list command
Dietmar Maurer [Sun, 6 Jan 2019 16:27:57 +0000 (17:27 +0100)]
catar/decoder.rs: start implementation
Dietmar Maurer [Sun, 6 Jan 2019 16:27:22 +0000 (17:27 +0100)]
format_definition.rs: remove wrong docs
Dietmar Maurer [Sun, 6 Jan 2019 09:04:45 +0000 (10:04 +0100)]
impl Read for BufferedArchiveReader
Dietmar Maurer [Sun, 6 Jan 2019 08:35:39 +0000 (09:35 +0100)]
impl Seek for BufferedArchiveReader
Dietmar Maurer [Sun, 6 Jan 2019 08:17:28 +0000 (09:17 +0100)]
buffered_read: return empty buffer on eof
Dietmar Maurer [Sat, 5 Jan 2019 16:28:20 +0000 (17:28 +0100)]
define and use BufferedReader trait
Dietmar Maurer [Sat, 5 Jan 2019 15:55:21 +0000 (16:55 +0100)]
remove dead code
Dietmar Maurer [Sat, 5 Jan 2019 15:53:28 +0000 (16:53 +0100)]
tools.rs: improve docs
Dietmar Maurer [Sat, 5 Jan 2019 13:47:56 +0000 (14:47 +0100)]
backup/archive_index.rs: implement BufferedArchiveReader
Implement relativly fast random read using binary search.
Dietmar Maurer [Sat, 5 Jan 2019 10:34:15 +0000 (11:34 +0100)]
backup/chunk_store.rs: resize buffer by powers of two
Dietmar Maurer [Fri, 4 Jan 2019 16:23:01 +0000 (17:23 +0100)]
catar/encoder.rs: code cleanup
Note: Rust Vec resize uses len(), not capacity()!
Dietmar Maurer [Fri, 4 Jan 2019 16:16:56 +0000 (17:16 +0100)]
backup/chunk_store.rs: avoid allocation in read_chunk
Dietmar Maurer [Fri, 4 Jan 2019 11:51:43 +0000 (12:51 +0100)]
white space cleanups
Dietmar Maurer [Fri, 4 Jan 2019 11:50:54 +0000 (12:50 +0100)]
backup/chunk_store.rs: implement read_chunk()
Dietmar Maurer [Fri, 4 Jan 2019 10:33:58 +0000 (11:33 +0100)]
proxmox-backup-manager: add garbage collection cli
Dietmar Maurer [Fri, 4 Jan 2019 10:12:46 +0000 (11:12 +0100)]
fix bash completion binary names
Dietmar Maurer [Fri, 4 Jan 2019 09:49:52 +0000 (10:49 +0100)]
cleanup crate names
Dietmar Maurer [Fri, 4 Jan 2019 09:41:37 +0000 (10:41 +0100)]
rename backup-client to proxmox-backup-client
Dietmar Maurer [Fri, 4 Jan 2019 09:39:32 +0000 (10:39 +0100)]
rename pbs to proxmox-backup-manager
Dietmar Maurer [Fri, 4 Jan 2019 09:35:22 +0000 (10:35 +0100)]
backup/chunk_store.rs: only use one directory level
Dietmar Maurer [Fri, 4 Jan 2019 09:32:27 +0000 (10:32 +0100)]
move admin API to /admin/ subfolder
Dietmar Maurer [Fri, 4 Jan 2019 08:28:41 +0000 (09:28 +0100)]
backup/archive_index.rs: pass correct size to unmap
Dietmar Maurer [Fri, 4 Jan 2019 07:45:04 +0000 (08:45 +0100)]
backup/image_index.rs: use little endian
Wolfgang Bumiller [Thu, 3 Jan 2019 13:36:31 +0000 (14:36 +0100)]
cli::command: wrap usage errors in a UsageError
So we can distinguish them and show usage output
conditionally.
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dietmar Maurer [Thu, 3 Jan 2019 14:47:32 +0000 (15:47 +0100)]
catar/encoder.rs: make sure we write all data with write_all()
Dietmar Maurer [Thu, 3 Jan 2019 14:10:54 +0000 (15:10 +0100)]
chunker.rs: make sure chunk_size_avg is a power of two
Dietmar Maurer [Thu, 3 Jan 2019 13:35:19 +0000 (14:35 +0100)]
improve chunker speed (avoid modulo)
Dietmar Maurer [Wed, 2 Jan 2019 18:16:55 +0000 (19:16 +0100)]
add benchmark for chunker
We get about 300MB/s - so this is still not fast enough
Note: This is quite slow with debug target, so please compile with --release
Dietmar Maurer [Wed, 2 Jan 2019 17:14:02 +0000 (18:14 +0100)]
image_index.rs: verify file size
Dietmar Maurer [Wed, 2 Jan 2019 13:27:04 +0000 (14:27 +0100)]
implement garbage collection for .aidx files
Dietmar Maurer [Wed, 2 Jan 2019 12:13:13 +0000 (13:13 +0100)]
image_index.rs: verify header magic/version
Dietmar Maurer [Wed, 2 Jan 2019 11:56:04 +0000 (12:56 +0100)]
fix typo