]>
git.proxmox.com Git - proxmox-backup.git/log
Dietmar Maurer [Tue, 7 Jan 2020 11:52:15 +0000 (12:52 +0100)]
src/api2/types.rs: define and use new api type SnapshotListItem
Fabian Grünbichler [Tue, 7 Jan 2020 09:46:32 +0000 (10:46 +0100)]
d/control: bump proxmox build-dep
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Wolfgang Bumiller [Tue, 7 Jan 2020 09:11:35 +0000 (10:11 +0100)]
bump proxmox to 0.1.1 - packages are now available
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dietmar Maurer [Mon, 6 Jan 2020 10:35:22 +0000 (11:35 +0100)]
src/backup/backup_info.rs: implement last_successful_backup()
A backup is considered successful if there is a manifest file.
Dietmar Maurer [Sun, 5 Jan 2020 15:20:26 +0000 (16:20 +0100)]
src/backup/manifest.rs: impl TryFrom DataBlob
Dietmar Maurer [Sun, 5 Jan 2020 14:15:12 +0000 (15:15 +0100)]
src/backup/datastore.rs: implement cleanup_backup_dir()
Dietmar Maurer [Sun, 5 Jan 2020 13:50:54 +0000 (14:50 +0100)]
src/client/backup_reader.rs: make compute_file_csum() public
Dietmar Maurer [Sun, 5 Jan 2020 09:31:19 +0000 (10:31 +0100)]
src/client/http_client.rs: allow access to AuthInfo fields
Dietmar Maurer [Sat, 4 Jan 2020 15:01:03 +0000 (16:01 +0100)]
Cargo.toml: set proxmox version 0.1.0 (latest packaged version)
Fabian Grünbichler [Fri, 3 Jan 2020 08:40:33 +0000 (09:40 +0100)]
cargo: switch to use packaged crates by default
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Fabian Grünbichler [Thu, 2 Jan 2020 13:10:18 +0000 (14:10 +0100)]
add README.rst
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Fabian Grünbichler [Thu, 2 Jan 2020 12:57:50 +0000 (13:57 +0100)]
reference valgrind_request via github
to allow using the same Cargo.toml file with a cargo config referencing
packaged crates instead of crates.io
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Fabian Grünbichler [Thu, 2 Jan 2020 10:57:28 +0000 (11:57 +0100)]
also bump version in Cargo.toml
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Dietmar Maurer [Thu, 2 Jan 2020 12:29:10 +0000 (13:29 +0100)]
src/backup/read_chunk.rs: add read_raw_chunk()
Allow to read chunk data without decoding.
Dietmar Maurer [Thu, 2 Jan 2020 12:26:28 +0000 (13:26 +0100)]
src/backup/chunk_store.rs: implement cond_touch_chunk()
This will be used by backup sync to test if a chunk already exists.
Dietmar Maurer [Thu, 2 Jan 2020 10:00:33 +0000 (11:00 +0100)]
src/backup/datastore.rs: new helper try_shared_chunk_store_lock()
Dietmar Maurer [Tue, 31 Dec 2019 14:23:41 +0000 (15:23 +0100)]
src/backup/manifest.rs: new helper archive_type()
Oguz Bektas [Tue, 31 Dec 2019 08:30:24 +0000 (09:30 +0100)]
add suggestions section on TODO
Signed-off-by: Oguz Bektas <o.bektas@proxmox.com>
Dietmar Maurer [Mon, 30 Dec 2019 10:50:24 +0000 (11:50 +0100)]
src/bin/proxmox-backup-proxy.rs: remove unused use clause
Dietmar Maurer [Mon, 30 Dec 2019 10:50:00 +0000 (11:50 +0100)]
TODO.rst: add TODO file
Dietmar Maurer [Mon, 30 Dec 2019 10:01:21 +0000 (11:01 +0100)]
bump version to 0.1.2
Dietmar Maurer [Fri, 27 Dec 2019 12:44:21 +0000 (13:44 +0100)]
src/bin/proxmox-backup-api.rs: create cert here
Dietmar Maurer [Fri, 27 Dec 2019 12:41:31 +0000 (13:41 +0100)]
src/client/http_client.rs - start_h2_connection: correctly return error during upgrade
Wolfgang Bumiller [Fri, 27 Dec 2019 11:50:27 +0000 (12:50 +0100)]
proxy/api: await running workers before shutdown
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dietmar Maurer [Fri, 27 Dec 2019 10:51:22 +0000 (11:51 +0100)]
bump version to 0.1.1
Dietmar Maurer [Fri, 27 Dec 2019 10:20:36 +0000 (11:20 +0100)]
src/bin/proxmox-backup-proxy.rs: create self signed cert at startup.
Dietmar Maurer [Fri, 27 Dec 2019 09:17:06 +0000 (10:17 +0100)]
proxmox-backup-manager.rs: remove wrong fixme
Dietmar Maurer [Mon, 23 Dec 2019 12:06:43 +0000 (13:06 +0100)]
src/bin/proxmox-backup-manager.rs: impl. cert info
Fabian Grünbichler [Mon, 23 Dec 2019 06:52:40 +0000 (07:52 +0100)]
packaging: fix docs install path
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Dietmar Maurer [Sun, 22 Dec 2019 16:35:06 +0000 (17:35 +0100)]
src/bin/proxmox-backup-manager.rs: add cli to generate proxy certificate
Without calling external openssl binary.
Dietmar Maurer [Sun, 22 Dec 2019 10:09:30 +0000 (11:09 +0100)]
DataStoreContent.js - render_backup_type: use better default
Dietmar Maurer [Sun, 22 Dec 2019 10:06:03 +0000 (11:06 +0100)]
DataStoreContent.js: use rowexpander plugin to display files
Dietmar Maurer [Sun, 22 Dec 2019 09:43:57 +0000 (10:43 +0100)]
DataStoreContent.js: show backup groups (instead of snapshots).
Dietmar Maurer [Sun, 22 Dec 2019 09:02:15 +0000 (10:02 +0100)]
Dietmar Maurer [Sat, 21 Dec 2019 08:15:57 +0000 (09:15 +0100)]
NavigationTree.js: use other iconCls for datastores
Thomas Lamprecht [Fri, 20 Dec 2019 16:17:44 +0000 (17:17 +0100)]
ui: ds content: add reload button, use view controller
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Fri, 20 Dec 2019 16:04:45 +0000 (17:04 +0100)]
ui: datastore content: add size column
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Fri, 20 Dec 2019 16:03:28 +0000 (17:03 +0100)]
ui: datastore content: refactor to more schematic definition
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Fri, 20 Dec 2019 14:59:14 +0000 (15:59 +0100)]
ui: datastore content: render timestamp
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Fabian Grünbichler [Fri, 20 Dec 2019 08:34:14 +0000 (09:34 +0100)]
various packaging fixes, bump version
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Fabian Grünbichler [Wed, 18 Dec 2019 10:10:13 +0000 (11:10 +0100)]
d/control: add proper rust build-dependencies
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Fabian Grünbichler [Wed, 18 Dec 2019 10:46:05 +0000 (11:46 +0100)]
tests/pxar: increase verbosity
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Fabian Grünbichler [Fri, 20 Dec 2019 08:32:01 +0000 (09:32 +0100)]
Cargo.toml: remove zstd-sys
no need to specify it explicitly, the bindgen feature takes care of this.
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Fabian Grünbichler [Wed, 18 Dec 2019 09:47:30 +0000 (10:47 +0100)]
Cargo.toml: update dependencies
to those that are packaged.
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Dietmar Maurer [Fri, 20 Dec 2019 11:46:09 +0000 (12:46 +0100)]
add datastore content panel
Wolfgang Bumiller [Fri, 20 Dec 2019 11:28:28 +0000 (12:28 +0100)]
fix create_datastore parameters:
comment was declared as optional but unwrap()ed, causing
panics when not using it
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dietmar Maurer [Fri, 20 Dec 2019 08:23:58 +0000 (09:23 +0100)]
src/api2/config/datastore.rs - create: pass uid and gid instead of User
Dietmar Maurer [Fri, 20 Dec 2019 08:11:40 +0000 (09:11 +0100)]
src/backup/chunk_store.rs - create: pass User instead of CreateOptions
Thomas Lamprecht [Thu, 19 Dec 2019 16:46:39 +0000 (17:46 +0100)]
api/ui: datastore: allow to set simple comment
for now forbid all control characters[0] in the comment value, the
section config writer cannot cope with newlines in the value, it
writes them out literally, allowing "injection" or breaking the whole
config.
In the webinterface use also a textfield, not a textarea.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Thu, 19 Dec 2019 16:44:20 +0000 (17:44 +0100)]
ui: datastore: minor UX improvements and whitepsace cleanup
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Thu, 19 Dec 2019 16:42:31 +0000 (17:42 +0100)]
ui: do *not* close panel when triggering datastore GC
this broke the view, let the panel disappear until one switched to
another and back again, let's just no close main-view panels :)
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Thu, 19 Dec 2019 15:49:40 +0000 (16:49 +0100)]
ui: use fa-archive symbol for datastore navigation tree entry
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Wolfgang Bumiller [Thu, 19 Dec 2019 12:14:49 +0000 (13:14 +0100)]
let ChunkStore::create take CreateOptions
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dietmar Maurer [Thu, 19 Dec 2019 10:27:36 +0000 (11:27 +0100)]
src/bin/proxmox-backup-manager.rs: add task management cli
Dietmar Maurer [Thu, 19 Dec 2019 10:20:59 +0000 (11:20 +0100)]
src/bin/proxmox-backup-client.rs: use async fn
Dietmar Maurer [Thu, 19 Dec 2019 09:20:13 +0000 (10:20 +0100)]
remove tools::getpwnam_ugid, impl. crate::backup::backup_user()
And use new nix::unistd::User struct.
Dietmar Maurer [Thu, 19 Dec 2019 08:29:44 +0000 (09:29 +0100)]
update to nix 0.16
Dietmar Maurer [Thu, 19 Dec 2019 07:45:27 +0000 (08:45 +0100)]
src/bin/proxmox-backup-manager.rs: connect to daemon to execute GC
Signed-off-by: Dietmar Maurer <dietmar@proxmox.com>
Dietmar Maurer [Thu, 19 Dec 2019 07:44:38 +0000 (08:44 +0100)]
src/client/backup_repo.rs: impl. new()
Dietmar Maurer [Thu, 19 Dec 2019 06:57:53 +0000 (07:57 +0100)]
src/bin/proxmox-backup-client.rs - start_garbage_collection: add missing output-format parameter
Dietmar Maurer [Thu, 19 Dec 2019 06:09:39 +0000 (07:09 +0100)]
src/backup/datastore.rs: avoid divide by zero
Dietmar Maurer [Thu, 19 Dec 2019 06:07:39 +0000 (07:07 +0100)]
src/server/worker_task.rs: set worker thread name
This gives better logs on thread panic...
Dietmar Maurer [Thu, 19 Dec 2019 05:49:03 +0000 (06:49 +0100)]
src/backup/chunk_store.rs: create lock file with correct owner
Thomas Lamprecht [Wed, 18 Dec 2019 20:32:00 +0000 (21:32 +0100)]
ui: allow to create datastore
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Wed, 18 Dec 2019 18:21:59 +0000 (19:21 +0100)]
ui: trailing whitespace cleanup
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Wed, 18 Dec 2019 18:19:30 +0000 (19:19 +0100)]
ui: select tree item from history url on initial load
or fallback to dashboard
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Wed, 18 Dec 2019 16:29:05 +0000 (17:29 +0100)]
ui: add simple dashboard
just a starting point, code ported initially over from PMG, some
minor things are handled differently though, we have not multiple
nodes (for now) so it's very 'localhost' centric.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Wed, 18 Dec 2019 16:24:04 +0000 (17:24 +0100)]
api2: add very basic 'status/usage' endpoint for nodes
For returning the nodes basic "usage status", for now one gets memory
and CPU utilization.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Wed, 18 Dec 2019 16:22:43 +0000 (17:22 +0100)]
debian/: run wrap-and-sort
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Oguz Bektas [Wed, 18 Dec 2019 15:56:40 +0000 (16:56 +0100)]
docs: fix typo in introduction.rst
Signed-off-by: Oguz Bektas <o.bektas@proxmox.com>
Dietmar Maurer [Wed, 18 Dec 2019 13:29:29 +0000 (14:29 +0100)]
src/tools.rs: fix typo
Dietmar Maurer [Wed, 18 Dec 2019 12:11:02 +0000 (13:11 +0100)]
Makefile: remove zstd-sys
Dietmar Maurer [Wed, 18 Dec 2019 11:58:18 +0000 (12:58 +0100)]
administration-guide.rst: fix catalog command syntax
Dietmar Maurer [Wed, 18 Dec 2019 11:25:56 +0000 (12:25 +0100)]
src/backup/chunk_store.rs: use proxmox::tools::fs::create_path
Wolfgang Bumiller [Wed, 18 Dec 2019 11:23:10 +0000 (12:23 +0100)]
drop our zstd-sys replacement
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dietmar Maurer [Wed, 18 Dec 2019 11:20:41 +0000 (12:20 +0100)]
src/config/datastore.rs: use backup gid instead of uid
Thomas Lamprecht [Wed, 18 Dec 2019 11:17:23 +0000 (12:17 +0100)]
ui/css: adapt look-and-feel to PMG one
mainly the navigation tree
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Wolfgang Bumiller [Wed, 18 Dec 2019 10:05:30 +0000 (11:05 +0100)]
replace file_set_contents with replace_file
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dietmar Maurer [Wed, 18 Dec 2019 09:52:45 +0000 (10:52 +0100)]
src/api2/config/datastore.rs: set protected flags for create/delete API
Dietmar Maurer [Wed, 18 Dec 2019 09:48:19 +0000 (10:48 +0100)]
src/api2/config/datastore.rs: fix api docu
Dietmar Maurer [Wed, 18 Dec 2019 09:41:58 +0000 (10:41 +0100)]
src/config/datastore.rs: change file owner/permissions
owner(root) => read and write
group(backup) => read only
Oguz Bektas [Tue, 17 Dec 2019 15:15:25 +0000 (16:15 +0100)]
datastore: set correct owner on datastore.cfg
since manager runs as root, we have to specify backup:root owner while
saving config.
Signed-off-by: Oguz Bektas <o.bektas@proxmox.com>
Thomas Lamprecht [Tue, 17 Dec 2019 14:44:34 +0000 (15:44 +0100)]
ui: do not log ticket into console
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Tue, 17 Dec 2019 14:42:59 +0000 (15:42 +0100)]
ui: fixup renewing ticket success calback
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Oguz Bektas [Tue, 17 Dec 2019 14:09:42 +0000 (15:09 +0100)]
chunk_store: create parent directories
'datastore create storename /path/to/dir/that/may/not/exist' should
work.
Signed-off-by: Oguz Bektas <o.bektas@proxmox.com>
Christian Ebner [Tue, 17 Dec 2019 14:01:21 +0000 (15:01 +0100)]
binary_search_tree: add additional doctest for search_binary_tree_by()
Make sure a start indexes larger or equal to the array size results in a return
value of `None`.
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Christian Ebner [Tue, 17 Dec 2019 13:10:40 +0000 (14:10 +0100)]
binary_search_tree: fix off by one error in search_binary_tree_by()
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Christian Ebner [Tue, 17 Dec 2019 12:15:45 +0000 (13:15 +0100)]
catalog: decoder and shell: fix incorrect logic in find matching
The find matching was incorrectly performed starting from the parent directroy
and not as intended from the entries of the parent directory.
Further, the match pattern passed from the catalog shell contains the absolute
path of the search entry point as prefix, so find() must always start from the
archive root. This is because the match pattern has to be stored in the selected
list for a subsequent restore-selected command in the shell.
All matching paths are shown as absolute paths with all contents in the subdir,
equal to what would be restored by the given pattern.
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Thomas Lamprecht [Tue, 17 Dec 2019 13:45:13 +0000 (14:45 +0100)]
ui: show login window if we get a 401 auth exception
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Tue, 17 Dec 2019 13:44:25 +0000 (14:44 +0100)]
ui: re-new ticket every 15 minutes
Like we do it in PVE/PMG
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Tue, 17 Dec 2019 12:00:51 +0000 (13:00 +0100)]
proxmox-backup-proxy.service: order after proxmox-backup.service
Ensures we've got the authkey available.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Dietmar Maurer [Tue, 17 Dec 2019 13:06:48 +0000 (14:06 +0100)]
use proxmox-mini-journalreader to display syslog
Dietmar Maurer [Tue, 17 Dec 2019 12:26:14 +0000 (13:26 +0100)]
src/api2/node/syslog.rs: use api macro
Thomas Lamprecht [Tue, 17 Dec 2019 12:00:17 +0000 (13:00 +0100)]
ui: main init: set username info
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Tue, 17 Dec 2019 10:35:13 +0000 (11:35 +0100)]
ui login: default to root@pam user and focus password field
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Dietmar Maurer [Tue, 17 Dec 2019 10:34:29 +0000 (11:34 +0100)]
install ext6-pbs.css
Thomas Lamprecht [Mon, 16 Dec 2019 17:16:06 +0000 (18:16 +0100)]
ui: add "Documentation" button to main view
Similar to PVE and PMG, for quick access when one has the basic
webinterface open anyway. Should move to the "proxmoxHelpButton" once
we have an onlineHelp mapping to the docs.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Thomas Lamprecht [Mon, 16 Dec 2019 17:16:05 +0000 (18:16 +0100)]
add CSS file for PBS ExtJS6 basic ui
some fitting rules copied over from PVE's ext6-pve.css file.
simply place it in the css subfolder where the proxmox-backup-gui.js
file is hosted and add a "css/" alias for that directory, the
formatter gets use the right content type with that.
Signed-off-by: Thomas Lamprecht <t.lamprecht@proxmox.com>
Christian Ebner [Mon, 16 Dec 2019 11:13:48 +0000 (12:13 +0100)]
catalog_shell: impl find for catalog shell.
Implements the find command which allows to find and select files for subsequent
restore.
Files selected for restore are now stored in a Vec instead of a HashSet.
This is needed, since instead of the full paths for each file, selected files are
now identified by a list of match pattern, where ordering matters.
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Christian Ebner [Mon, 16 Dec 2019 11:13:47 +0000 (12:13 +0100)]
catalog: impl find() for file search by match pattern.
find() iterates over the file tree and matches each node against a list of match
patterns provided at function call.
For each matching node, a callback function with the current directroy stack is
called.
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>