]>
git.proxmox.com Git - proxmox-backup.git/log
Thomas Lamprecht [Mon, 16 Dec 2019 15:38:00 +0000 (16:38 +0100)]
d/rules: override dwz helper to avoid build-failure
AFAICT, this is the issue from Debian Bug #933541, I implement the
workaround suggested by a maintainer[0].
[0]: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=933541#10
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Mon, 16 Dec 2019 14:33:57 +0000 (15:33 +0100)]
Revert "d/control: add llvm-dev to build-dependencies"
llvm-dev was wrong, llvm-config is shipped by llvm package
This reverts commit
2db252aeae236a033e7a0c5b8a613e0eb06126d0 .
Oguz Bektas [Mon, 16 Dec 2019 14:16:06 +0000 (15:16 +0100)]
d/control: add llvm-dev to build-dependencies
Signed-off-by: Oguz Bektas <o.bektas@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Wolfgang Bumiller [Mon, 16 Dec 2019 13:07:14 +0000 (14:07 +0100)]
buildsys: make deb: use --lib for first pass build
since it'll rebuild the lib & binaries anyway after the
copy, only build the library (to get the dependencies out of
the way), but dont build the binaries...
saves a couple seconds of build time
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dietmar Maurer [Mon, 16 Dec 2019 12:34:49 +0000 (13:34 +0100)]
src/bin/proxmox-backup-client.rs: use #[api] macro
Thomas Lamprecht [Mon, 16 Dec 2019 10:32:39 +0000 (11:32 +0100)]
d/control: add rsync to build-dependencies
not directly required for
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Mon, 16 Dec 2019 10:24:51 +0000 (11:24 +0100)]
d/control: add missing build-dependencies
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Wolfgang Bumiller [Mon, 16 Dec 2019 10:24:42 +0000 (11:24 +0100)]
client: use api macro for catalog_shell async fn
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dietmar Maurer [Mon, 16 Dec 2019 10:00:43 +0000 (11:00 +0100)]
src/bin/proxmox-backup-client.rs: use ApiHandler::Async for prune and status
Dietmar Maurer [Mon, 16 Dec 2019 09:06:26 +0000 (10:06 +0100)]
src/bin/proxmox-backup-client.rs: use new ApiHandler::Async
Dietmar Maurer [Mon, 16 Dec 2019 08:58:26 +0000 (09:58 +0100)]
src/pxar/decoder.rs: require Send
Dietmar Maurer [Mon, 16 Dec 2019 08:59:45 +0000 (09:59 +0100)]
api2: update for latest proxmox-api changes
- rename ApiFuture into ApiResponseFuture
- impl. ApiHandler::Async
Dietmar Maurer [Sat, 14 Dec 2019 15:32:16 +0000 (16:32 +0100)]
src/api2/admin/datastore.rs - prune: log retention options
Dietmar Maurer [Sat, 14 Dec 2019 15:05:21 +0000 (16:05 +0100)]
src/api2/admin/datastore.rs: fix prune worker id
Dietmar Maurer [Sat, 14 Dec 2019 14:52:25 +0000 (15:52 +0100)]
docs/administration-guide.rst: document garbage collection
Dietmar Maurer [Fri, 13 Dec 2019 13:14:28 +0000 (14:14 +0100)]
generate separate proxmox-backup-docs package
Dietmar Maurer [Fri, 13 Dec 2019 09:35:43 +0000 (10:35 +0100)]
Makefile: add upload target
Wolfgang Bumiller [Fri, 13 Dec 2019 11:33:49 +0000 (12:33 +0100)]
update tests
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Fri, 13 Dec 2019 11:10:04 +0000 (12:10 +0100)]
fix cancellable future
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Fri, 13 Dec 2019 10:55:52 +0000 (11:55 +0100)]
update to url/percent-encoding to 2.1
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 12 Dec 2019 14:27:07 +0000 (15:27 +0100)]
update a chunk of stuff to the hyper release
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dietmar Maurer [Fri, 13 Dec 2019 08:43:08 +0000 (09:43 +0100)]
src/bin/proxmox-backup-client.rs: implement task stop
Dietmar Maurer [Thu, 12 Dec 2019 13:15:40 +0000 (14:15 +0100)]
src/api2/types.rs: use PROXMOX_SAFE_ID_FORMAT instead of FILENAME_FORMAT
Dietmar Maurer [Thu, 12 Dec 2019 11:37:11 +0000 (12:37 +0100)]
src/api2/types.rs: introduce PROXMOX_SAFE_ID_REGEX, use it for DATASTORE_SCHEMA
Dietmar Maurer [Wed, 11 Dec 2019 12:45:23 +0000 (13:45 +0100)]
src/api2/types.rs: factor out DATASTORE_SCHEMA
Dietmar Maurer [Wed, 11 Dec 2019 11:53:34 +0000 (12:53 +0100)]
src/api2/node/tasks.rs: new filter "store" to filter tasks for one store
Christian Ebner [Tue, 10 Dec 2019 12:01:39 +0000 (13:01 +0100)]
pxar: match_pattern: refactor match_filename
The match_filename() in sequentail_decoder and encoder are moved to be static
functions of MatchPattern.
This allows to reuse the code also in the catalog find implementation.
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Christian Ebner [Tue, 10 Dec 2019 12:01:38 +0000 (13:01 +0100)]
src/backup/catalog_shell.rs: sort output of list-selected
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Dietmar Maurer [Wed, 11 Dec 2019 09:52:27 +0000 (10:52 +0100)]
src/api2/node/tasks.rs: add "running" filter to list only running tasks
Dietmar Maurer [Tue, 10 Dec 2019 12:45:56 +0000 (13:45 +0100)]
src/api2/node/tasks.rs - extract_upid: avoid duplicate error message
Dietmar Maurer [Tue, 10 Dec 2019 12:43:53 +0000 (13:43 +0100)]
src/bin/proxmox-backup-client.rs: add simple task management cli
Dietmar Maurer [Tue, 10 Dec 2019 10:25:29 +0000 (11:25 +0100)]
src/backup/datastore.rs - garbage-collection: fix average chunk size
Dietmar Maurer [Mon, 9 Dec 2019 17:00:22 +0000 (18:00 +0100)]
src/bin/proxmox-backup-client.rs: cleanup - factor out view_task_result()
Dietmar Maurer [Mon, 9 Dec 2019 16:40:34 +0000 (17:40 +0100)]
cli: avoid useless .into()
This needs latest proxmox-api updates.
Dietmar Maurer [Mon, 9 Dec 2019 16:11:48 +0000 (17:11 +0100)]
src/bin/proxmox-backup-client.rs: remove unnecessary .to_owned()
Dietmar Maurer [Mon, 9 Dec 2019 12:29:23 +0000 (13:29 +0100)]
src/bin/proxmox-backup-client.rs - garbage-collection: display task log
Dietmar Maurer [Mon, 9 Dec 2019 12:14:32 +0000 (13:14 +0100)]
src/bin/proxmox-backup-client.rs: impl. and use complete_pxar_archive_name
Dietmar Maurer [Mon, 9 Dec 2019 12:07:25 +0000 (13:07 +0100)]
src/bin/proxmox-backup-client.rs: impl. catalog sub command
catalog dump
catalog shell
Dietmar Maurer [Sun, 8 Dec 2019 10:27:15 +0000 (11:27 +0100)]
src/client/task_log.rs: move display_task_log into extra file
Dietmar Maurer [Sun, 8 Dec 2019 09:59:47 +0000 (10:59 +0100)]
src/api2/admin/datastore.rs: remove test_prune, add dry-run to normal prune
And use display_task_log on the client side.
Dietmar Maurer [Sun, 8 Dec 2019 09:25:26 +0000 (10:25 +0100)]
src/bin/proxmox-backup-client.r - display_task_log: use string range instead of as_bytes
Dietmar Maurer [Sun, 8 Dec 2019 09:22:02 +0000 (10:22 +0100)]
src/bin/proxmox-backup-client.r - display_task_log: add new strip_date parameter
Dietmar Maurer [Sat, 7 Dec 2019 15:11:26 +0000 (16:11 +0100)]
src/bin/proxmox-backup-client.rs: new display task log helper
New helper to display worker task logs. Use it for prune (experimental).
Dietmar Maurer [Sat, 7 Dec 2019 14:29:42 +0000 (15:29 +0100)]
src/server/formatter.rs: impl. new result attribute "active"
Dietmar Maurer [Sat, 7 Dec 2019 10:23:33 +0000 (11:23 +0100)]
src/backup/prune.rs: implement --keep-hourly
Dietmar Maurer [Sat, 7 Dec 2019 09:45:43 +0000 (10:45 +0100)]
docs/administration-guide.rst: add hint about ISO week date
Dietmar Maurer [Fri, 6 Dec 2019 18:41:38 +0000 (19:41 +0100)]
src/backup/prune.rs: prune - correctly use iso_week year
Dietmar Maurer [Fri, 6 Dec 2019 18:20:05 +0000 (19:20 +0100)]
docs/administration-guide.rst: doc prune --dry-run
Christian Ebner [Fri, 6 Dec 2019 13:31:19 +0000 (14:31 +0100)]
pxar: fuse: add support for list- and getxattr
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Christian Ebner [Fri, 6 Dec 2019 12:53:38 +0000 (13:53 +0100)]
pxar: fuse: cache goodbye table for each directory on opendir and release it on releasedir
Cache not only the goodbye table for the last directory but for each opened
directory.
The opendir fuse callback will fill the cache with the goodbye table and
releasedir will remove it from the cache.
This should reduce the number of chuncks fetched from the server in some cases.
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Christian Ebner [Fri, 6 Dec 2019 12:13:18 +0000 (13:13 +0100)]
pxar: fuse: use binary search instead of linear search in goodbye table.
The goodbye table is layed out as binary search tree based on the hash, so use
this to be more efficient when looking up a hash in the table for directories
with a large number of entries.
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Dietmar Maurer [Fri, 6 Dec 2019 12:46:02 +0000 (13:46 +0100)]
docs/command-syntax.rst: include catalog-shell-synopsis.rst
Dietmar Maurer [Fri, 6 Dec 2019 12:35:59 +0000 (13:35 +0100)]
src/bin/proxmox-backup-client.rs: white space cleanup
Dietmar Maurer [Fri, 6 Dec 2019 12:35:25 +0000 (13:35 +0100)]
src/bin/proxmox-backup-client.rs: implement prune --dry-run
Dietmar Maurer [Fri, 6 Dec 2019 12:06:56 +0000 (13:06 +0100)]
src/api2/admin/datastore.rs: add new api test_prune()
Dietmar Maurer [Fri, 6 Dec 2019 11:36:41 +0000 (12:36 +0100)]
src/api2/admin/datastore.rs: cleanup - move schema defininition in front of rust method
Dietmar Maurer [Fri, 6 Dec 2019 11:32:53 +0000 (12:32 +0100)]
src/api2/admin/datastore.rs: remove prune parameters from status call
Not idea why they are added there.
Dietmar Maurer [Fri, 6 Dec 2019 11:28:31 +0000 (12:28 +0100)]
src/backup/prune.rs: add new helper keeps_something()
Dietmar Maurer [Fri, 6 Dec 2019 09:08:11 +0000 (10:08 +0100)]
proxmox-backup-client/man1.rst: include catalog shell commands
Dietmar Maurer [Fri, 6 Dec 2019 08:53:14 +0000 (09:53 +0100)]
src/bin/dump-catalog-shell-cli.rs: generate catalog shell docs
Dietmar Maurer [Fri, 6 Dec 2019 08:42:05 +0000 (09:42 +0100)]
rename catalog_shell_api() into catalog_shell_cli()
Dietmar Maurer [Fri, 6 Dec 2019 08:35:47 +0000 (09:35 +0100)]
src/backup/catalog_shell.rs: factor out catalog_shell_api()
In order to extract documentation ...
Christian Ebner [Thu, 5 Dec 2019 16:29:13 +0000 (17:29 +0100)]
debian/control: remove libreadline-dev build dependency
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Christian Ebner [Thu, 5 Dec 2019 16:23:22 +0000 (17:23 +0100)]
src/backup/readline.rs: removed in favor of new readline impl
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Christian Ebner [Thu, 5 Dec 2019 16:23:21 +0000 (17:23 +0100)]
src/backup/catalog_shell.rs: adapt to use API Schema definition and rustyline
This major refactoring of the catalog based shell utilizes the new API macro and
the API Schema as well as rustyline instead of the old GNU readline C API.
The code now has these 3 main components:
* The `Shell` which handles the readline loop via rustyline.
* The shell functions defined via the API macro.
* The `Context` which holds catalog and decoder instances.
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Dietmar Maurer [Fri, 6 Dec 2019 07:56:27 +0000 (08:56 +0100)]
src/backup/prune.rs: define new struct PruneOptions
Dietmar Maurer [Fri, 6 Dec 2019 07:29:27 +0000 (08:29 +0100)]
src/backup/backup_info.rs: remove old prune code
Dietmar Maurer [Fri, 6 Dec 2019 07:15:32 +0000 (08:15 +0100)]
src/backup/prune.rs: add PruneMark::KeepPartial
Use separate mark for partial backup - dont mess them up with regular ones.
Dietmar Maurer [Fri, 6 Dec 2019 07:12:08 +0000 (08:12 +0100)]
src/backup/prune.rs: factor out code into remove_incomplete_snapshots()
Dietmar Maurer [Fri, 6 Dec 2019 07:05:40 +0000 (08:05 +0100)]
src/backup/prune.rs: moved prune related code into extra file
Dietmar Maurer [Thu, 5 Dec 2019 18:01:51 +0000 (19:01 +0100)]
tests/prune.rs: add more tests
Dietmar Maurer [Thu, 5 Dec 2019 17:41:28 +0000 (18:41 +0100)]
src/backup/backup_info.rs - prune: improve algorythm
Dietmar Maurer [Thu, 5 Dec 2019 15:47:08 +0000 (16:47 +0100)]
tests/prune_data: removed, build list manually
Dietmar Maurer [Thu, 5 Dec 2019 12:13:30 +0000 (13:13 +0100)]
src/api2/admin/datastore.rs - prune: log info about all snapshots
Dietmar Maurer [Thu, 5 Dec 2019 10:27:42 +0000 (11:27 +0100)]
docs/administration-guide.rst: explain how prune handles uncomplete backups
Dietmar Maurer [Thu, 5 Dec 2019 10:18:10 +0000 (11:18 +0100)]
src/backup/backup_info.rs - compute_prune_list: remove unfinished backups
Dietmar Maurer [Thu, 5 Dec 2019 08:57:37 +0000 (09:57 +0100)]
tests/prune_data: create test data for regression tests
Dietmar Maurer [Thu, 5 Dec 2019 08:43:46 +0000 (09:43 +0100)]
docs/administration-guide.rst: improve prune docs
Dietmar Maurer [Thu, 5 Dec 2019 07:55:19 +0000 (08:55 +0100)]
src/backup/backup_info.rs: improve prune algorithm
Dietmar Maurer [Wed, 4 Dec 2019 15:08:03 +0000 (16:08 +0100)]
tests/prune.rs: regression tests fro prune
Dietmar Maurer [Wed, 4 Dec 2019 14:49:11 +0000 (15:49 +0100)]
src/backup/backup_info.rs: new compute_prune_list helper
So that we can write regression tests for this.
Dietmar Maurer [Wed, 4 Dec 2019 13:18:11 +0000 (14:18 +0100)]
Revert "test another api macro use"
This reverts commit
a9aa52e6a8aea4fb6db05ce697df684583f3e065 .
Because we do not want to use macros for the backup protocol for now.
And because it crashes backup tasks for some unknown reason.
Dietmar Maurer [Wed, 4 Dec 2019 12:46:57 +0000 (13:46 +0100)]
docs/administration-guide.rst: add prune docs
Dietmar Maurer [Wed, 4 Dec 2019 09:47:41 +0000 (10:47 +0100)]
docs/administration-guide.rst: describe login/logout
Dietmar Maurer [Wed, 4 Dec 2019 09:03:52 +0000 (10:03 +0100)]
src/api2/admin/datastore.rs - read_backup_index: add manifest with size
So that the client can display the size of the index file.
Dietmar Maurer [Tue, 3 Dec 2019 15:58:34 +0000 (16:58 +0100)]
docs/administration-guide.rst: minor cleanups
Dietmar Maurer [Tue, 3 Dec 2019 15:51:43 +0000 (16:51 +0100)]
docs/Makefile: remove paper settings (we set that in conf.py)
Dietmar Maurer [Tue, 3 Dec 2019 15:19:30 +0000 (16:19 +0100)]
docs/administration-guide.rst: explain restore
Dietmar Maurer [Tue, 3 Dec 2019 14:23:24 +0000 (15:23 +0100)]
docs/administration-guide.rst: add encryption section
Wolfgang Bumiller [Tue, 3 Dec 2019 12:40:37 +0000 (13:40 +0100)]
test another api macro use
The api macro now supports hyphens in parameter names and
referencing externally defined `Schema`s, so here's an
example.
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Christian Ebner [Wed, 27 Nov 2019 15:27:56 +0000 (16:27 +0100)]
pxar: decoder: fix incorrect read for hardlinks.
Decoders read must check if the file is a hardlink and read data from the
corresponding offset if so.
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Christian Ebner [Wed, 27 Nov 2019 15:27:55 +0000 (16:27 +0100)]
pxar: decoder: return original name in attributes()
The returned filename should be the one of the file given at the offset, not of
the one the hardlink points to.
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Dietmar Maurer [Tue, 3 Dec 2019 10:59:00 +0000 (11:59 +0100)]
docs/administration-guide.rst: improve section "Creating Backups"
Dietmar Maurer [Tue, 3 Dec 2019 08:52:53 +0000 (09:52 +0100)]
correctly install bash completion helpers
Dietmar Maurer [Tue, 3 Dec 2019 08:04:49 +0000 (09:04 +0100)]
docs/administration-guide.rst: improve section "Backup Content"
Dietmar Maurer [Tue, 3 Dec 2019 07:32:03 +0000 (08:32 +0100)]
docs/installation.rst: replace FIXME with todo items
Dietmar Maurer [Tue, 3 Dec 2019 07:18:52 +0000 (08:18 +0100)]
docs/introduction.rst: improve "Why Backup" section.
Dietmar Maurer [Mon, 2 Dec 2019 10:56:29 +0000 (11:56 +0100)]
use cli from proxmox::api
Dietmar Maurer [Mon, 2 Dec 2019 10:11:31 +0000 (11:11 +0100)]
src/cli/completion.rs - get_help_completion: fix for "help -" expansion
Dietmar Maurer [Mon, 2 Dec 2019 10:04:40 +0000 (11:04 +0100)]
src/bin/completion.rs: add echo command