]>
git.proxmox.com Git - proxmox-backup.git/log
Dylan Whyte [Tue, 17 May 2022 16:12:42 +0000 (18:12 +0200)]
docs: language fixup
This fixup covers every doc patch since my previous language fixup patch.
Note: not much attention was paid to certificate-management, as it's
derived from pmg, which I had touched up not so long ago.
Signed-off-by: Dylan Whyte <d.whyte@proxmox.com>
Thomas Lamprecht [Wed, 5 Oct 2022 16:59:54 +0000 (18:59 +0200)]
bump version to 2.2.7-1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Dominik Csapak [Wed, 13 Jul 2022 09:43:14 +0000 (11:43 +0200)]
file-restore: add 'format' and 'zstd' parameters to 'extract' command
if the target ist stdout, we can now specify the exact format by making use of
the new 'format' parameter of the restore daemons 'extract' api
note that extracting a pxar from a source pxar (container/host backups)
won't work currently since we would have to reencode as pxar first
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
[ T: fixed missing proxmox-compression dependency ]
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Dominik Csapak [Wed, 13 Jul 2022 09:43:13 +0000 (11:43 +0200)]
restore-daemon: add 'format' and 'zstd' parameters to the 'extract' handler
'format' can be 'plain', 'pxar', 'zip' or 'tar', and it returns the
content in the given format (with fallback to the old behaviour if not
given)
the 'zstd' denotes if the output should be zstd compressed
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Dominik Csapak [Wed, 13 Jul 2022 09:43:12 +0000 (11:43 +0200)]
pbs-api-types: add FileRestoreFormat type
intended for passing the format to the file-restore client/daemon
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Wed, 5 Oct 2022 14:57:40 +0000 (16:57 +0200)]
prune sim: shorten code for weekdayFlags computation
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Wed, 5 Oct 2022 14:56:51 +0000 (16:56 +0200)]
prune sim: mask simulation options during update
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Wed, 5 Oct 2022 12:38:59 +0000 (14:38 +0200)]
prune sim: style nit
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Wed, 5 Oct 2022 11:18:13 +0000 (13:18 +0200)]
docs: prune sim: explicitly document time range options
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Wed, 5 Oct 2022 11:11:16 +0000 (13:11 +0200)]
prune sim: rework simulation options layout
move the two columns to a field set each, one for the backup job
config, containing weekdays and schedule, and one for the simulation
time, which contains the end date/time and the duration, which got
moved over, as it better fits along the new date/time.
Note that I used end instead of start as its the later point in time,
so hopefully less confusing, but one could argue either.
Flex and width of the fields got adapted such that they now better
work on smaller resolutions (< 1500px total width) and look better
on both, low and high resolutions/width.
The button got moved into the docked area mostly due to me being to
lazy to add yet another container indirection for having the hbox
nested inside a vbox, but also as it makes sense to have it big and
centered available.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Wed, 5 Oct 2022 11:07:07 +0000 (13:07 +0200)]
docs: prune sim: add h4 to h6 style in css
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Tue, 4 Oct 2022 14:32:18 +0000 (16:32 +0200)]
prune sim: move PruneList to more static declaration
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Matthias Heiserer [Tue, 20 Sep 2022 13:21:28 +0000 (15:21 +0200)]
prune-simulator: allow setting a custom date/time
With this, the prune simulator will be more flexible, which might clear
up questions such as these:
https://forum.proxmox.com/threads/pbs-prune-simulator-monthly-backups.115081
In order to have the configuration window not take up too much space,
I added another column and moved the border to the left.
Signed-off-by: Matthias Heiserer <m.heiserer@proxmox.com>
Tested-by: Fiona Ebner <f.ebner@proxmox.com>
Reviewed-by: Fiona Ebner <f.ebner@proxmox.com>
Thomas Lamprecht [Fri, 23 Sep 2022 08:33:17 +0000 (10:33 +0200)]
api: disk SMART: fix details for depreacated return value comment
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Matthias Heiserer [Thu, 21 Jul 2022 10:45:57 +0000 (12:45 +0200)]
fix #4165: SMART: add raw field
This makes it consistent with the naming scheme in PVE/GUI.
Keep value for API stability reasons, and remove it in next major version.
Signed-off-by: Matthias Heiserer <m.heiserer@proxmox.com>
Reviewed-by: Dominik Csapak <d.csapak@proxmox.com>
Tested-by: Dominik Csapak <d.cspak@proxmox.com>
Fabian Grünbichler [Thu, 22 Sep 2022 13:37:52 +0000 (15:37 +0200)]
daily update: fix subscription check
this wrongly triggered for non-subscribed systems as well.
Fixes: dd16e1dac8976b523c1cf895efe280b73008eca6
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Thomas Lamprecht [Fri, 23 Sep 2022 05:56:40 +0000 (07:56 +0200)]
api/pull: drop unused ApiMethod info
the API macro can handle this
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Matthias Heiserer [Tue, 20 Sep 2022 10:08:48 +0000 (12:08 +0200)]
pbs-manager: fix pull not respecting local ns setting
It pulls to root namespace instead.
Signed-off-by: Matthias Heiserer <m.heiserer@proxmox.com>
Stefan Hanreich [Fri, 16 Sep 2022 08:48:38 +0000 (10:48 +0200)]
fix #4095: make http client use proxy config from 'ALL_PROXY' env var
In order to be able to use a proxy with the proxmox-backup-client, use
ProxyConfig for parsing proxy server config from the environment. Also
added a section in the documentation that describes how to configure the
environment if a proxy server should be used.
Signed-off-by: Stefan Hanreich <s.hanreich@proxmox.com>
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Fabian Grünbichler [Thu, 15 Sep 2022 07:08:32 +0000 (09:08 +0200)]
apt: add proxmox-offline-mirror-helper package
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Fabian Grünbichler [Mon, 12 Sep 2022 08:56:25 +0000 (10:56 +0200)]
d/control: recommend proxmox-offline-mirror-helper
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Fabian Grünbichler [Mon, 12 Sep 2022 08:13:35 +0000 (10:13 +0200)]
docs: faq: fix heading underline
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Dominik Csapak [Fri, 26 Aug 2022 08:09:21 +0000 (10:09 +0200)]
docs: faq: add better clarification on full/incremental
and add a link to the technical overview
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Fri, 26 Aug 2022 08:09:20 +0000 (10:09 +0200)]
docs: technical overview: add section about snapshots
to clarify that snapshots get uploaded in an incremental manner, but
still represent a full backup.
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Fri, 26 Aug 2022 08:09:19 +0000 (10:09 +0200)]
docs: terminology: update snapshot uniqueness for namespaces
since we introduced namespaces, a snapshot does not have be unique
across the datastore anymore, only a namespace.
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Stefan Sterz [Wed, 24 Aug 2022 12:48:25 +0000 (14:48 +0200)]
fix: datastore: make relative_group_path() return relative path
previously the BackGroup trait used the datastore's
namespace_path() method to construct a base path. this would result in
it returning an absolute path equivalent to full_group_path(). use
the namspace's path() method instead to get a relative path, in-line
with backup_dir's relative_path().
Signed-off-by: Stefan Sterz <s.sterz@proxmox.com>
Dominik Csapak [Thu, 1 Sep 2022 07:21:27 +0000 (09:21 +0200)]
ui: fix default language display
when we set a default language server side, we want to display that on
the login page. For that we have to use the 'language' variable in the
index template.
Also set the fallback to '__default__' instead of 'en' so that we show
'Default (English)'.
Was reported in the forum:
https://forum.proxmox.com/threads/set-default-language-on-server-login-screen-to-german.114431/
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Thomas Lamprecht [Fri, 9 Sep 2022 12:15:14 +0000 (14:15 +0200)]
bump version to 2.2.6-1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Fri, 9 Sep 2022 12:00:26 +0000 (14:00 +0200)]
proxy: inline args in format strings
in most cases anyway. Allows for shorter code, which allows to drop
some line breaks.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Fri, 9 Sep 2022 11:34:28 +0000 (13:34 +0200)]
docs: intro: avoid office@ mail address for sales related questions
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Fri, 9 Sep 2022 10:40:35 +0000 (12:40 +0200)]
docs: package repos: fix typo
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Fabian Grünbichler [Wed, 7 Sep 2022 12:16:46 +0000 (14:16 +0200)]
update to proxmox-subscription 0.3
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Fabian Grünbichler [Wed, 7 Sep 2022 07:21:41 +0000 (09:21 +0200)]
update proxmox-router to 1.3.0
no real change for PBS usage - the ApiHandler enum is marked
non_exhaustive now because it has extra values if the new (enabled by
default) "server" feature is enabled.
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Fabian Grünbichler [Fri, 19 Aug 2022 11:27:14 +0000 (13:27 +0200)]
update to proxmox-http 0.7
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Dominik Csapak [Fri, 2 Sep 2022 07:21:14 +0000 (09:21 +0200)]
backup-client: mount: fix read of larger files
fuse_lowlevel.h says about read:
Read should send exactly the number of bytes requested except
on EOF or error, otherwise the rest of the data will be
substituted with zeroes.
but we simply forwarded the bytes we got from 'read_at'. The result was
that files were corrupt as soon as read_at returned not the exact number
of bytes requested. such short reads are easy to trigger with large
files (where reading a file has to cross many chunk boundaries).
To fix that, loop over 'read_at' until our buffer is full, or we read
0 bytes, indicating EOF.
reported in the forum:
https://forum.proxmox.com/threads/proxmox-backup-client-mounting-a-pxar-archive-gives-truncated-files.114447/
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Added comment, reworded slightly
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Fabian Grünbichler [Mon, 5 Sep 2022 10:55:33 +0000 (12:55 +0200)]
build: more missing features
these would cause failures when building the sub-crates directly from
their sub-directory.
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Fabian Grünbichler [Mon, 5 Sep 2022 10:18:00 +0000 (12:18 +0200)]
pbs-config: add missing proxmox-sys/timer feature
else building pbs-config directly (not from the workspace root with `-p
pbs-config`) fails (and so do similar dep chains that don't pull in the
feature via another way, like `cd proxmox-backup-client; cargo build`).
Reported-by: Dominiki Csapak <d.csapak@proxmox.com>
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Fabian Grünbichler [Mon, 22 Aug 2022 11:15:53 +0000 (13:15 +0200)]
use short assign-bit-or (clippy fix)
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Fabian Grünbichler [Fri, 19 Aug 2022 11:49:09 +0000 (13:49 +0200)]
update to nom 7
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Wolfgang Bumiller [Fri, 19 Aug 2022 11:38:46 +0000 (13:38 +0200)]
rustfmt
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Markus Frank [Fri, 19 Aug 2022 10:48:48 +0000 (12:48 +0200)]
proxmox-backup-client: added ignore-acls/xattrs/ownership/permissions & overwrite parameters
If ignore-acls/ignore-xattrs/ignore-ownership/ignore-permissions is
set, the corresponding flag gets removed.
overwrite is saved as an PxarExtractOption like allow-existing-dirs.
Signed-off-by: Markus Frank <m.frank@proxmox.com>
Markus Frank [Fri, 19 Aug 2022 10:48:47 +0000 (12:48 +0200)]
pbs-client: added options to skip acls/xattrs/ownership/permissions
Also added WITH_OWNER and WITH_PERMISSION to Default-Flags,
because otherwise it would be needed to activly set these flags and most
filesystems that support XATTR and ACL also support
POSIX-Permissions & Ownership.
Signed-off-by: Markus Frank <m.frank@proxmox.com>
Markus Frank [Fri, 19 Aug 2022 10:48:46 +0000 (12:48 +0200)]
pbs-client: added overwrite parameter to PxarExtractOptions.
If overwrite is true, O_TRUNC is set (to clean the leftovers)
instead of O_EXCL and therefore overwrites the files and
does not error out.
Signed-off-by: Markus Frank <m.frank@proxmox.com>
Wolfgang Bumiller [Mon, 1 Aug 2022 10:04:38 +0000 (12:04 +0200)]
more stable clippy fixups
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Fabian Grünbichler [Tue, 2 Aug 2022 09:09:40 +0000 (11:09 +0200)]
properly scope clippy allow
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Wolfgang Bumiller [Thu, 28 Jul 2022 11:48:56 +0000 (13:48 +0200)]
bump d/control
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 28 Jul 2022 11:40:07 +0000 (13:40 +0200)]
bump proxmox-sys dep to 0.4
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 28 Jul 2022 11:44:43 +0000 (13:44 +0200)]
tools: drop unused proxmox-borrow dependency
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 28 Jul 2022 10:10:02 +0000 (12:10 +0200)]
allow too_many_arguments in tape restore code
Some of them could easily be grouped in a kind of
RestoreWorker struct, but that'll still leave one bigger
function that's more annoying to change.
Let's just allow it for now.
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 28 Jul 2022 08:56:43 +0000 (10:56 +0200)]
lower PullParameters to pub(crate), allow too_many_parameters
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 28 Jul 2022 08:53:38 +0000 (10:53 +0200)]
clippy: deal with some internal type complexity
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 28 Jul 2022 08:32:07 +0000 (10:32 +0200)]
clippy auto-deref fixes
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 28 Jul 2022 08:30:02 +0000 (10:30 +0200)]
clippy fixups for Default impls
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 28 Jul 2022 08:23:19 +0000 (10:23 +0200)]
ticket: box TfaChallenge, it's large
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 28 Jul 2022 08:14:28 +0000 (10:14 +0200)]
more low hanging clippy fruits
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 28 Jul 2022 08:08:08 +0000 (10:08 +0200)]
clippy: deal with let bindings
In the auth code we rather #[allow] the binding, because in
this case we explicitly want to assert the type.
In fact, it would make more sense for clippy to not warn
about a unit type if the unit type is explicitly spelled
out.
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 28 Jul 2022 07:56:03 +0000 (09:56 +0200)]
more simpler clippy fixes
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 28 Jul 2022 07:55:43 +0000 (09:55 +0200)]
file-restore: clippy fixes
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 28 Jul 2022 07:55:23 +0000 (09:55 +0200)]
tape: trivial clippy fixes
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 28 Jul 2022 07:55:07 +0000 (09:55 +0200)]
tape: 'comparison_chain' clippy fixes
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 28 Jul 2022 07:26:29 +0000 (09:26 +0200)]
client: clippy fixes
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Wed, 27 Jul 2022 13:26:50 +0000 (15:26 +0200)]
datastore: clippy fixes
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Wed, 27 Jul 2022 13:22:09 +0000 (15:22 +0200)]
config: clippy fixes
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Wed, 27 Jul 2022 13:19:18 +0000 (15:19 +0200)]
tools: allow type_complexity on purely internal field
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Wed, 27 Jul 2022 12:52:06 +0000 (14:52 +0200)]
rest-server: clippy fixups
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Wed, 27 Jul 2022 11:43:04 +0000 (13:43 +0200)]
rrd: Entry type and clippy fixes
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Wed, 27 Jul 2022 11:29:32 +0000 (13:29 +0200)]
api-types: clippy fixes
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Fabian Grünbichler [Tue, 26 Jul 2022 11:36:14 +0000 (13:36 +0200)]
more clippy fixes and annotations
the remaining ones are:
- type complexity
- fns with many arguments
- new() without default()
- false positives for redundant closures (where closure returns a static
value)
- expected vs actual length check without match/cmp
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Fabian Grünbichler [Mon, 25 Jul 2022 13:40:44 +0000 (15:40 +0200)]
clippy fixes
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Wolfgang Bumiller [Mon, 25 Jul 2022 11:43:32 +0000 (13:43 +0200)]
bump d/control
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Mon, 25 Jul 2022 11:39:41 +0000 (13:39 +0200)]
tfa: allow modifying 'allow-subdomains'
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Mon, 25 Jul 2022 10:03:41 +0000 (12:03 +0200)]
bump d/control
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Fabian Grünbichler [Thu, 21 Jul 2022 11:48:43 +0000 (13:48 +0200)]
cargo fmt
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Fabian Grünbichler [Thu, 21 Jul 2022 11:48:22 +0000 (13:48 +0200)]
adapt to proxmox-subscription changes
key location is now in a single place, missing key and no signature is
not fatal anymore.
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Fabian Grünbichler [Thu, 21 Jul 2022 10:05:49 +0000 (12:05 +0200)]
adapt to proxmox-apt change
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Fabian Grünbichler [Thu, 30 Jun 2022 12:42:06 +0000 (14:42 +0200)]
www: add Signed info to subscription panel
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Fabian Grünbichler [Wed, 29 Jun 2022 11:40:10 +0000 (13:40 +0200)]
manager: add 'subscription set-offline-key' command
and disallow updating offline subscription keys via the regular
check/update code path.
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Fabian Grünbichler [Tue, 21 Jun 2022 12:35:28 +0000 (14:35 +0200)]
extract proxmox-subscription crate
and add support for signed subscription keys.
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Wolfgang Bumiller [Thu, 21 Jul 2022 11:00:22 +0000 (13:00 +0200)]
bump proxmox-http dep to 0.6.4
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Thomas Lamprecht [Mon, 18 Jul 2022 12:23:05 +0000 (14:23 +0200)]
bump version to 2.2.5-1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Mon, 18 Jul 2022 12:11:01 +0000 (14:11 +0200)]
api daemons: periodically unpark a tokio thread to ensure progress
The underlying issue seems to be the case when the thread that runs
the IO driver is polling its own tasks, while that happens the IO
driver/poller won't run and thus work stealing won't happen, meaning
that idle and parked threads will keep being parked even if there's
pending work they could do.
A promising solution for tokio is proposed in its issue tracker [0],
but it wasn't yet implemented. So, as stop gap spawn a separate
thread that periodically spawns a no-op ready future in the runtime
which would unpark a worker in the aforementioned case and thus
should break the bogus idleness. Choose a 3s period for that without
any overly elaborate reasons, our main goal is to ensure we accept
incoming connections and 3s is well below a HTTP timeout and leaves
some room for high network latencies while not invoking to much
additional wakeups for systems that are really idling.
[0]: https://github.com/tokio-rs/tokio/issues/4730#issuecomment-
1147975074
Link: https://github.com/tokio-rs/tokio/issues/4730
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Sat, 16 Jul 2022 09:41:12 +0000 (11:41 +0200)]
fix #4157: docs: fix copy-paste error in repo examples
refer to actually used host/datastore from the example
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Thu, 14 Jul 2022 16:38:02 +0000 (18:38 +0200)]
bump version to 2.2.4-1
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Thu, 14 Jul 2022 16:20:41 +0000 (18:20 +0200)]
proxy: scheduler: only do a single round of time alignment and drop counter
not much value in waiting an extra minute, that doesn't really
guarantees better scheduling (as in, less impact on startup).
Dropping that also allows easily to drop the counter by just moving
the sleep to the beginning of the loop.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Thu, 14 Jul 2022 16:10:05 +0000 (18:10 +0200)]
proxy: scheduler: code cleanup/bloat reduction
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Thu, 14 Jul 2022 15:59:24 +0000 (17:59 +0200)]
proxy: scheduler: move fallback inside next_minute fn, drops result from return
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Thu, 14 Jul 2022 15:56:18 +0000 (17:56 +0200)]
docs: buildsys: use wild card target for generating config synopsis
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Thu, 14 Jul 2022 15:54:16 +0000 (17:54 +0200)]
docs: buildsys: use wild card target for generating synopsis
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Thu, 14 Jul 2022 14:53:14 +0000 (16:53 +0200)]
docs: replace copyright years statement with single source of truth from conf
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Thu, 14 Jul 2022 14:49:23 +0000 (16:49 +0200)]
docs: conf: update copyright years
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Thu, 14 Jul 2022 14:50:50 +0000 (16:50 +0200)]
docs: epilog: add version dynamically and drop unused AUTHOR replacement
now that the man pages are generated from sphinx, not rst2man, they
got access to the conf.py and things like its rst_epilog variable.
Use that to set the correct version in there dynamically
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Thu, 14 Jul 2022 14:41:43 +0000 (16:41 +0200)]
docs: let sphinx build man pages for better integration and less cruft
rst2man is only good for use in projects that don't use sphinx
already, as there it can help to avoid bringing in the full sphinx
dependencies and be easier to manage (as long as it stay small).
But we already use sphinx, so there's no point in managing the manual
pages in a separate, semi-related way that is quite restricted as we
have no access to sphinx infrastructure like conf.py defined
variables and helpers for things like the current version.
Besides that, we're rather big, so the complexity of sphinx can
shine, e.g., see the diffstat report from switching out rst2man for
sphinx:
22 files changed, 74 insertions(+), 347 deletions(-)
so 273 lines less in total is rather nice.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Stefan Sterz [Wed, 13 Jul 2022 14:36:29 +0000 (16:36 +0200)]
fix: api2: make tasks endpoint work with new prune job worker type
when prune jobs were refactored, their worker type was changed from
"prune" to "prunejob" this broke `check_job_store` and
`check_job_privs`
as reported in the forum: https://forum.proxmox.com/threads/problem-with-apirequest-on-pbs-2-2-3.112131/#post-483835
Signed-off-by: Stefan Sterz <s.sterz@proxmox.com>
Wolfgang Bumiller [Thu, 14 Jul 2022 08:53:39 +0000 (10:53 +0200)]
api2: optimize filtered snapshot listing
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 14 Jul 2022 09:13:44 +0000 (11:13 +0200)]
datastore: add BackupGroup::exists helper
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Wed, 13 Jul 2022 12:56:36 +0000 (14:56 +0200)]
datastore: factor type out of ListGroups into ListGroupsType
In the API we want to iterate over all backup groups
belonging to a particular type at least once, and iterating
through *everything* and simply "skipping" over every single
entry from another type makes no sense given that the groups
are organized into subdirectories based on their type.
Let's have an `.iter_backup_type()` method which returns an
iterator over all the groups of a specific type named
ListGroupsType and factorize the type level iterator out of
ListGroups for reuse.
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Wed, 13 Jul 2022 12:43:17 +0000 (14:43 +0200)]
datastore: simplify iter_backup_groups_ok
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 14 Jul 2022 09:09:34 +0000 (11:09 +0200)]
api-types: make BackupType::iter an actual iterator
Otherwise we have to use BackupType::iter().iter() whenever
we're not using a `for _ in iter()` construct.
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Wed, 13 Jul 2022 12:00:38 +0000 (14:00 +0200)]
api: wrap get_snapshots_count in spawn_blocking
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Wed, 13 Jul 2022 12:01:24 +0000 (14:01 +0200)]
api: wrap set_backup_owner in spawn_blocking
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>