Dietmar Maurer and Thomas Lamprecht
ac81ed17b9
fix regression test file permission problems
...
By simply using the current user/group instead of backup:backup
2021-07-21 09:30:22 +02:00
Thomas Lamprecht
89145cde34
bump version to 2.0.5-2
...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com >
2021-07-21 09:12:46 +02:00
Thomas Lamprecht
ef4b2c2470
buildcfg: fix version
...
now set here, but we really need to automate this soon, just to easy
to forget.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com >
2021-07-21 09:11:57 +02:00
Thomas Lamprecht
7190cbf2ac
buildsys: run test before compile to avoid clobbering the openid build binaries
...
dh_auto_test also checks for the build flags used, including any
`--cfg`, so it rebuilds and overwrites our carefully assembled daemon
binaries with openid support as it is run after build and before
install.
So manually ensure the order of first test then build (argh, hackes
of hackes >.<)
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com >
2021-07-20 20:27:40 +02:00
Thomas Lamprecht
f726e1e0ea
buildsys: cargo build target: one binary per line
...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com >
2021-07-20 20:27:40 +02:00
Thomas Lamprecht
6d81e65986
bump version to 2.0.5-1
...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com >
2021-07-20 19:34:49 +02:00
Thomas Lamprecht
ba5f5083c3
d/control: record fonts-font-awesome dependency for docs
...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com >
2021-07-20 19:34:49 +02:00
Dominik Csapak and Thomas Lamprecht
314db4072c
docs: add missing font-awesome link for lto-barcode generator
...
else it cannot load the icons and does not show them in the action column
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com >
2021-07-20 19:34:49 +02:00
Thomas Lamprecht
baff2324f3
pbs-tools: fix doctest reference to moved cache modules
...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com >
2021-07-20 19:15:28 +02:00
Thomas Lamprecht
02eae829f7
tests: move pxar test to its crate
...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com >
2021-07-20 18:54:23 +02:00
Thomas Lamprecht
bb77143108
d/control: update build dependencies
...
needs to be done manually for now..
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com >
2021-07-20 18:54:23 +02:00
Thomas Lamprecht
02cb5b5f80
cargo: bump proxmox-http to 0.3.0
...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com >
2021-07-20 18:54:23 +02:00
Dietmar Maurer and Thomas Lamprecht
a301c362e3
add helpers to write configuration files
2021-07-20 18:54:23 +02:00
Dietmar Maurer and Thomas Lamprecht
7526d86419
use new atomic_open_or_create_file
...
Factor out open_backup_lockfile() method to acquire locks owned by
user backup with permission 0660.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com >
2021-07-20 18:54:23 +02:00
Wolfgang Bumiller
a00888e93f
fixup examples
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com >
2021-07-20 15:26:25 +02:00
Wolfgang Bumiller
fc5870be53
move channel/stream helpers to pbs-tools
...
pbs_tools
::blocking: std/async wrapping with block_in_place
::stream: stream <-> AsyncRead/AsyncWrite wrapping
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com >
2021-07-20 11:27:40 +02:00
Wolfgang Bumiller
3c8c2827cb
move required_X_param to pbs_tools::json
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com >
2021-07-20 11:09:52 +02:00
Wolfgang Bumiller
6c221244df
move lru cachers to pbs-tools
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com >
2021-07-20 10:57:22 +02:00
Wolfgang Bumiller
38629c3961
move ChunkStream to pbs-client
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com >
2021-07-20 10:52:21 +02:00
Thomas Lamprecht
513d019ac3
issue banner: avoid depending on proxmox crate for hostname
...
While this slightly duplicates code we just do not profit from the
central, lazy static variant here, as that is only really useful in
daemons to avoid doing frequent syscalls there.
proxmox just pull in far to much (e.g., tokio) and duplicating that
one line of simple code has no real maintenance cost, so just go for
that and use the nix crate directly.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com >
2021-07-19 16:32:50 +02:00
Wolfgang Bumiller
3fa1b4b48c
cleanup unused imports
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com >
2021-07-19 15:55:19 +02:00
Wolfgang Bumiller
a6eac535e4
Makefile: fix build.rs reference
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com >
2021-07-19 15:54:53 +02:00
Wolfgang Bumiller
58a3fae773
move pxar binary to separate crate
...
and move its few remaining proxmox_backup deps out to
pbs-tools
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com >
2021-07-19 15:53:43 +02:00
Wolfgang Bumiller
0889806a3c
resolve some more client imports
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com >
2021-07-19 15:03:24 +02:00
Wolfgang Bumiller
51ec8a3c62
move some api types to pbs-api-types
...
and resolve some imports in the client binary
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com >
2021-07-19 15:01:03 +02:00
Wolfgang Bumiller
a12b1be728
move build.rs and friends to pbs-buildcfg
...
with this the main crate won't be re-compiled every time a
*binary* is modified
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com >
2021-07-19 14:59:18 +02:00
Wolfgang Bumiller
4d04cd9ab9
comment on test output paths
...
cargo should be getting a new env var for this soon
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com >
2021-07-19 14:24:13 +02:00
Wolfgang Bumiller
a3399f4337
doc and tests fixup
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com >
2021-07-19 14:16:28 +02:00
Wolfgang Bumiller
2b7f8dd5ea
move client to pbs-client subcrate
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com >
2021-07-19 12:58:43 +02:00
Wolfgang Bumiller
72fbe9ffa5
move 'wait_for_local_worker' from client to server
...
this just made no sense in the client
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com >
2021-07-19 10:44:44 +02:00
Wolfgang Bumiller
0be8bce718
d/control: fixup proxmox feature flags
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com >
2021-07-19 10:09:43 +02:00
Wolfgang Bumiller
4805edc4ec
move more tools for the client into subcrates
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com >
2021-07-19 10:07:12 +02:00
Wolfgang Bumiller
9eb784076c
move more helpers to pbs-tools
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com >
2021-07-19 10:07:12 +02:00
Wolfgang Bumiller
b9c5cd8291
add proxmox-backup-banner binary crate
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com >
2021-07-19 10:07:12 +02:00
Wolfgang Bumiller
9008c0c177
bump proxmox-apt dependency
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com >
2021-07-19 10:07:12 +02:00
Dominik Csapak and Dietmar Maurer
f027c2146e
ui: datastore/Prune: improve title of group prune window
...
we are not actually pruning the whole datastore, but only the single
group, so set that as a title
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com >
2021-07-16 11:42:30 +02:00
Dominik Csapak and Dietmar Maurer
afbf2e10f3
ui: datastore/Content: add 'Prune All' button
...
since the api call always starts a real worker, we cannot have a
preview. It would also be very hard to show that for all groups in a
non-confusing way. We reuse the pbsPruneInputPanel and add the dry-run
field there conditionally.
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com >
2021-07-16 11:42:09 +02:00
Dominik Csapak and Dietmar Maurer
9805207aa5
api: admin/datastore: add new 'prune-datastore' api call
...
to prune the whole datastore at once, with the given parameters.
We need a new api call since this can take a while and we need to start
a worker for this. The exisiting api call returns a list of removed/kept
snapshots and is synchronous.
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com >
2021-07-16 11:40:05 +02:00
Dominik Csapak and Dietmar Maurer
8e0b852f24
server/prune_job: add proper permission checks to 'prune_datastore'
...
checks for PRIV_DATASTORE_MODIFY, or else if the auth_id is the backup
owner, and skips the group if not.
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com >
2021-07-16 11:39:01 +02:00
Dominik Csapak and Dietmar Maurer
0052dc6d28
server/prune_job: add 'keep_all' logic to 'prune_datastore'
...
it is the same as when pruning single groups.
for prune_jobs, we never start the worker if there is no prune option set.
but if we want to call 'prune_datastore' from somewhere else, we
have to check it here again
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com >
2021-07-16 11:38:28 +02:00
Dominik Csapak and Dietmar Maurer
61f05679d2
server/prune_job: factor out 'prune_datastore'
...
we want to use that outside of a prune job
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com >
2021-07-16 11:36:45 +02:00
Dominik Csapak and Dietmar Maurer
9751ef4b36
backup/datastore: refactor check_backup_owner there
...
and add a 'owns_backup' convenience function
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com >
2021-07-16 11:36:02 +02:00
Dominik Csapak and Dietmar Maurer
0a240aaa9a
api: admin/datastore: simplify prune api call
...
by using the api macro and reusing the PruneOptions from pbs-datastore
this means we can now drop the 'add_common_prune_prameters' macro
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com >
2021-07-16 11:34:36 +02:00
Dominik Csapak and Dietmar Maurer
e0665a64bd
client: simplify prune api method
...
by using the api macro on the async method and reusing the PruneOptions
from pbs-datastore with 'flatten: true'
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com >
2021-07-16 11:34:28 +02:00
Dominik Csapak and Dietmar Maurer
dc46aa9a00
pbs-datastore/prune: make PruneOptions an api type
...
so that we can reuse it from here
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com >
2021-07-16 11:34:18 +02:00
Dominik Csapak and Dietmar Maurer
ced694589d
api-types: move PRUNE_SCHEMA_KEEP_* to pbs-api-types
...
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com >
2021-07-16 11:26:09 +02:00
Dominik Csapak and Dietmar Maurer
6c053ffc89
tape: changer: sg_pt: make extra scsi request for dvcid
...
some libraries cannot handle a request with volume tags and DVCID set at
the same time.
So we make 2 separate requests and merge them, since we want to keep
the vendor/model/serial data.
to not overcomplicate the code, add another special type to ElementType
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com >
2021-07-16 08:46:06 +02:00
Wolfgang Bumiller
9f5b57a348
buildsys: Prepare new way for path dependencies
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com >
2021-07-15 09:56:32 +02:00
Wolfgang Bumiller
f1c4b8df34
features update
...
so we can drop default-features in proxmox for build-deps to
be more lean
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com >
2021-07-15 09:56:05 +02:00
Fabian Grünbichler
269e274bb5
d/control: update proxmox b-d
...
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com >
2021-07-14 13:51:38 +02:00