Dietmar Maurer
048b43af24
split tape code into new pbs_tape workspace
2021-09-13 12:54:59 +02:00
Dietmar Maurer
2121174827
start new pbs-config workspace
...
moved src/config/domains.rs
2021-09-02 12:58:20 +02:00
Wolfgang Bumiller
42dad3abd3
fixup imports in tests and examples
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-09-01 12:32:21 +02:00
Wolfgang Bumiller
6c76aa434d
split proxmox-file-restore into its own crate
...
This also moves a couple of required utilities such as
logrotate and some file descriptor methods to pbs-tools.
Note that the logrotate usage and run-dir handling should be
improved to work as a regular user as this *should* (IMHO)
be a regular unprivileged command (including running
qemu given the kvm privileges...)
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-09-01 12:23:29 +02:00
Wolfgang Bumiller
e5f9b7f79e
split out proxmox-backup-debug binary
...
and introduce pbs_tools::cli module
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-08-31 14:45:48 +02:00
Wolfgang Bumiller
e351ac786d
split out proxmox-backup-client binary
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-08-30 11:39:01 +02:00
Wolfgang Bumiller
6838b75904
Cargo.toml: drop features in 'patch' section
...
the features array does not need to be repeated here
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-08-30 11:39:01 +02:00
Wolfgang Bumiller
aec1b91eb8
bump proxmox-openid dependency to 0.7.0
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-08-25 10:43:58 +02:00
Wolfgang Bumiller
2e2d64fdba
bump proxmox dependency to 0.13.0
...
and with it:
* bump proxmox-http dependency to 0.4.0
* bump proxmox-apt dependency to 0.7.0
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-08-25 10:43:58 +02:00
Dietmar Maurer
9789461363
bump version to 2.0-9-1
2021-08-09 09:54:33 +02:00
Dietmar Maurer
e16c289f50
bump version toö 2.0.8-1
2021-08-02 10:35:16 +02:00
Thomas Lamprecht
9ba4833f3c
cargo: update proxmox-apt to v0.6.0
...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-07-30 10:43:40 +02:00
Thomas Lamprecht
1b2f851e42
bump version to 2.0.7-1
...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-07-23 08:44:41 +02:00
Thomas Lamprecht
76486eb3d1
bump version to 2.0.6-1
...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-07-22 10:22:33 +02:00
Thomas Lamprecht
9b8e8012a7
cargo: update proxmox to 0.12.1
...
For the FS compat improvement in the atomic create file helper
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-07-22 10:09:53 +02:00
Wolfgang Bumiller
eb5e0ae65a
move remaining client tools to pbs-tools/datastore
...
pbs-datastore now ended up depending on tokio after all, but
that's fine for now
for the fuse code I added pbs-fuse-loop (has the old
fuse_loop and its 'loopdev' module)
ultimately only binaries should depend on this to avoid the
library link
the only thins remaining to move out the client binary are
the api method return types, those will need to be moved to
pbs-api-types...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-07-21 14:12:24 +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
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
a301c362e3
add helpers to write configuration files
2021-07-20 18:54:23 +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
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
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
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
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
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
Dietmar Maurer
bfd357c5a1
depend on proxmox 0.11.6 (changed make_tmp_file() return type)
2021-07-14 13:37:26 +02:00
Thomas Lamprecht
9ef88578af
bump version to 2.0.4-1
...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-07-12 18:51:41 +02:00
Thomas Lamprecht
415690a0e7
bump version to 2.0.3-1
...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-07-12 09:53:07 +02:00
Fabian Ebner
82cc4b56e5
depend on proxmox-apt
...
Signed-off-by: Fabian Ebner <f.ebner@proxmox.com>
2021-07-09 13:45:45 +02:00
Thomas Lamprecht
ae24382634
bump version to 2.0.2-1
...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-07-08 14:44:26 +02:00
Wolfgang Bumiller
067dc06dba
add pbs-systemd: move string and unit handling there
...
the systemd config/unit parsing stays in pbs for now since
that's not usually required and uses our section config
parser
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-07-07 11:34:56 +02:00
Wolfgang Bumiller
86fb38776b
add pbs-api-types subcrate, move key_derivation
...
move key_derivation to pbs-datastore
pbs-api-types should only contain "basic" types which
* are usually required by clients
* don't depend on pbs-related code directly
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-07-07 09:04:09 +02:00
Wolfgang Bumiller
f323e90602
add pbs-datastore module
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-07-06 15:11:52 +02:00
Wolfgang Bumiller
770a36e53a
add pbs-tools subcrate
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-07-06 15:10:37 +02:00
Wolfgang Bumiller
d420962fbc
split out pbs-runtime module
...
These are mostly tokio specific "hacks" or "workarounds" we
only really need/want in our binaries without pulling it in
via our library crates.
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-07-06 14:52:25 +02:00
Wolfgang Bumiller
01fd2447b2
buildsys: don't use debcargo
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-07-06 14:50:46 +02:00
Wolfgang Bumiller
af06decd1b
split out pbs-buildcfg module
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-07-06 12:00:14 +02:00
Wolfgang Bumiller
aceae32baa
Cargo.toml: regroup imports
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-07-06 11:48:28 +02:00
Thomas Lamprecht
34bd1109b0
bump version to 2.0.1-1
...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-07-03 21:45:00 +02:00
Dietmar Maurer
bb88c6a29d
depend on proxmox-openid-rs
2021-06-30 08:54:30 +02:00
Thomas Lamprecht
9678366102
bump version to 2.0.0-1
...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-06-28 19:07:46 +02:00
Fabian Grünbichler
90ff75f85c
update to zstd 0.6
...
compatible with libzstd from bullseye.
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2021-06-14 13:01:43 +02:00
Fabian Grünbichler
f432a1c927
bump tokio dependency to 1.6
...
it contains a bug fix that allows dropping the workaround in
75f9f40922
file-restore-daemon: work around tokio DuplexStream bug
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2021-06-01 10:30:57 +02:00
Dietmar Maurer
e8b32f2d87
bump version to 1.1.9-1
2021-06-01 08:27:18 +02:00
Thomas Lamprecht
7cb2ebba79
bump version to 1.1.8-1
...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-05-21 18:25:31 +02:00
Thomas Lamprecht
4e8581950e
cargo: bump proxmox-http version to 0.2.1
...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-05-21 18:25:31 +02:00
Wolfgang Bumiller
1d781c5b20
update proxmox-http dependency
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-05-17 11:29:24 +02:00
Fabian Grünbichler
8c090937f5
move tools::http to proxmox_http
...
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2021-05-17 10:31:54 +02:00
Fabian Grünbichler
5b43cc4487
move MaybeTlsStream wrapper to proxmox_http
...
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2021-05-17 10:30:05 +02:00
Fabian Grünbichler
c474a66b41
move websocket to new 'proxmox_http' crate
...
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2021-05-17 10:26:41 +02:00
Thomas Lamprecht
8f33fe8e59
d/control: update proxmox tools dependency
...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-05-14 13:19:20 +02:00
Dietmar Maurer
137309cc4e
bump version to 1.1.7-1
2021-05-11 13:23:29 +02:00
Dietmar Maurer
d8769d659e
use build.rs to pass REPOID to rustc-env
2021-05-07 10:11:39 +02:00
Wolfgang Bumiller
ee0c5c8e01
use api_string_type macro
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Signed-off-by: Dietmar Maurer <dietmar@proxmox.com>
2021-05-05 08:24:37 +02:00
Dietmar Maurer
686173dc2a
bump version to 1.1.6-1
2021-05-04 12:09:56 +02:00
Dominik Csapak
671c6a96e7
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>
2021-05-03 08:58:35 +02:00
Wolfgang Bumiller
01d152720f
Cargo.toml: depend on proxmox-acme-rs
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-04-29 12:04:28 +02:00
Wolfgang Bumiller
0796b642de
CertInfo: add not_{after, before}_unix
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-04-29 10:59:02 +02:00
Dietmar Maurer
aac424674c
bump version to 1.1.5-1
2021-04-27 12:21:08 +02:00
Thomas Lamprecht
4a0132382a
bump version to 1.1.4-1
...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-04-27 08:41:05 +02:00
Thomas Lamprecht
c002d48b0c
bump version to 1.1.3-1
...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-04-22 20:15:18 +02:00
Thomas Lamprecht
5547f90ba7
bump version to 1.1.2-1
...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-04-15 13:26:59 +02:00
Thomas Lamprecht
e7f94010d3
cargo toml: update proxmox version
...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-04-15 09:56:45 +02:00
Thomas Lamprecht
bc3072ef7a
bump version to 1.1.1-1
...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-04-14 14:50:41 +02:00
Thomas Lamprecht
6dde015f8c
bump version to 1.1.0-1
...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-04-13 14:42:50 +02:00
Dietmar Maurer
164ad7b706
sgutils2: use thiserror to derive Error
2021-04-12 13:27:34 +02:00
Thomas Lamprecht
d6d42702d1
bump version to 1.0.14-1
...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-04-08 18:59:07 +02:00
Stefan Reiter
b13089cdf5
file-restore: add 'extract' command for VM file restore
...
The data on the restore daemon is either encoded into a pxar archive, to
provide the most accurate data for local restore, or encoded directly
into a zip file (or written out unprocessed for files), depending on the
'pxar' argument to the 'extract' API call.
Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
2021-04-08 14:43:41 +02:00
Stefan Reiter
dd9cef56fc
file-restore-daemon: add binary with virtio-vsock API server
...
Implements the base of a small daemon to run within a file-restore VM.
The binary spawns an API server on a virtio-vsock socket, listening for
connections from the host. This happens mostly manually via the standard
Unix socket API, since tokio/hyper do not have support for vsock built
in. Once we have the accept'ed file descriptor, we can create a
UnixStream and use our tower service implementation for that.
The binary is deliberately not installed in the usual $PATH location,
since it shouldn't be executed on the host by a user anyway.
For now, only the API calls 'status' and 'stop' are implemented, to
demonstrate and test proxmox::api functionality.
Authorization is provided via a custom ApiAuth only checking a header
value against a static /ticket file.
Since the REST server implementation uses the log!() macro, we can
redirect its output to stdout by registering env_logger as the logging
target. env_logger is already in our dependency tree via zstd/bindgen.
Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-04-08 13:57:57 +02:00
Dominik Csapak
76425d84b3
file-restore: add binary and basic commands
...
For now it only supports 'list' and 'extract' commands for 'pxar.didx'
files. This should be the foundation for a general file-restore
interface that is shared with block-level snapshots.
This is packaged as a seperate .deb file, since for block level restore
it will need to depend on pve-qemu-kvm, which we want to seperate from
proxmox-backup-client.
[original code for proxmox-file-restore.rs]
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
[code cleanups/clippy, use helpers::list_dir_content/ArchiveEntry, no
/block subdir for .fidx files, seperate binary and package]
Signed-off-by: Stefan Reiter <s.reiter@proxmox.com>
2021-04-08 13:57:57 +02:00
Dominik Csapak
79d841014e
tools/compression: add DeflateEncoder and helpers
...
implements a deflate encoder that can compress anything that implements
AsyncRead + Unpin into a file with the helper 'compress'
if the inner type is a Stream, it implements Stream itself, this way
some streaming data can be streamed compressed
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
2021-04-07 12:34:31 +02:00
Thomas Lamprecht
a417c8a93e
bump version to 1.0.13-1
...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-04-02 15:32:27 +02:00
Wolfgang Bumiller
a1d90719e4
bump pxar dep to 0.10.1
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-03-31 14:00:20 +02:00
Dietmar Maurer
6f63c29306
Cargo.toml: fix: set version to 1.0.12
2021-03-26 14:14:12 +01:00
Thomas Lamprecht
c4430a937d
bump version to 1.0.11-1
...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-03-18 12:36:28 +01:00
Wolfgang Bumiller
b31cdec225
update to pxar 0.10
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-03-12 10:48:09 +01:00
Thomas Lamprecht
355a41a763
bump version to 1.0.10-1
...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-03-11 13:40:22 +01:00
Thomas Lamprecht
1825c1a9b7
bump version to 1.0.9-1
...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-03-08 17:06:57 +01:00
Wolfgang Bumiller
46d53e3e90
bump proxmox dep to 0.11.0
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-02-25 09:23:30 +01:00
Wolfgang Bumiller
e68c0e68bd
bump proxmox dep to 0.10.7
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-02-23 14:44:59 +01:00
Dietmar Maurer
8616a4afe5
docgen: dump string format (property strings)
2021-02-21 15:54:14 +01:00
Wolfgang Bumiller
38a81c6b46
bump pxar to 0.9.0
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-02-17 09:56:56 +01:00
Dietmar Maurer
3084232cb5
depend on proxmox 0.10.5
2021-02-11 10:49:16 +01:00
Dietmar Maurer
51c80c5a52
depend on proxmox 0.10.4
2021-02-10 10:24:36 +01:00
Dietmar Maurer
8dc45e291a
depend on proxmox 0.10.2
2021-02-05 12:42:20 +01:00
Thomas Lamprecht
8aa4842fa8
bump version to 1.0.8-1
...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-02-04 12:39:52 +01:00
Thomas Lamprecht
64394b0de8
bump version to 1.0.7-1
...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2021-02-03 10:36:18 +01:00
Dietmar Maurer
f4ba2e3155
depend on proxmox 0.10.1
2021-02-03 08:53:34 +01:00
Wolfgang Bumiller
b419050aa7
bump pxar to 0.8
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-02-02 11:02:08 +01:00
Fabian Grünbichler
35c95ca653
bump apt-pkg-native dependency
...
our patches got applied upstream, and a release was cut, so we no longer
need to depend on a manually patched version here.
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2021-02-01 11:53:25 +01:00
Fabian Grünbichler
427d90e6c1
update to tokio 1.0
...
and various related crates
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2021-01-14 16:01:33 +01:00
Wolfgang Bumiller
027ef213aa
api: tfa management and login
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2021-01-11 10:22:32 +01:00
Dietmar Maurer
cb4865466e
depend on proxmox 0.9.1
2020-12-22 13:30:41 +01:00
Dietmar Maurer
2012825913
depend on proxmox 0.9.0
2020-12-22 08:52:24 +01:00
Thomas Lamprecht
42150d263b
update pxar dependency to 0.6.2
...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-12-16 13:13:31 +01:00
Thomas Lamprecht
2d87f2fb73
bump version to 1.0.6-1
...
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
2020-12-11 14:19:28 +01:00
Dietmar Maurer
7c9835465e
tape: add helpers to emulate tape read/write behavior
2020-12-06 09:41:16 +01:00
Wolfgang Bumiller
54813c650e
bump proxmox dep to 0.8.0
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2020-11-30 11:25:53 +01:00