Commit Graph

675 Commits (ce660a49890f8b30c73bac958e3d3e3785728fa9)

Author SHA1 Message Date
Axel Burri a99292aba8 btrbk: fix alignment if no header is printed 2020-10-30 19:09:50 +01:00
Axel Burri 528a152d6d btrbk: action "diff": use print framework; convert units 2020-10-30 19:09:26 +01:00
Axel Burri 4866ec5cb0 btrbk: add print_size, and command line option modifier 2020-10-30 18:35:52 +01:00
Axel Burri 81c92940c1 btrbk: fix unitialized value in warning
Regression from: 5c32ced7d6
2020-10-19 00:34:11 +02:00
Axel Burri eb852271b6 btrbk: change version to 0.30.1-dev 2020-10-19 00:33:20 +02:00
Axel Burri f40e3adce3 change version to 0.30.0; update ChangeLog 2020-09-23 15:48:44 +02:00
Axel Burri e605bc7b42 btrbk: add backend_local_user config option 2020-09-23 12:59:50 +02:00
Axel Burri 13708abd00 btrbk: consequently fence all trace logs (for performance) 2020-08-29 13:29:17 +02:00
Axel Burri 5d81632b5d btrbk: cosmetics on logging 2020-08-29 13:28:32 +02:00
Axel Burri 5c32ced7d6 btrbk: show paths from all mounts in fs_path; add _fs_info node resolver
Reference complete mountinfo in nodes, instead of { file, subvolid }.
2020-08-29 13:28:32 +02:00
Axel Burri cc3f6c95b9 btrbk: return array in _fs_path 2020-08-29 13:28:32 +02:00
Axel Burri fbfd1edc3d btrbk: move mount info to front in fs_list table format 2020-08-29 13:28:32 +02:00
Axel Burri 739645444e btrbk: dont show subvolume_rel_path in fs_list table format 2020-08-29 13:28:32 +02:00
Axel Burri 9415214bc0 btrbk: reword/fix verbose and loglevel options 2020-08-29 13:28:32 +02:00
Axel Burri 910274f814 btrbk: support lsbtr symlink (alias for "btrbk ls")
If called via "lsbtr" symlink (program name):

 - Provide user-friendly table options
 - Assume "./" as path if no path arguments are given
2020-08-29 13:07:57 +02:00
Axel Burri ec037952cf btrbk: add "compat" config option (busybox: add test -d command)
Add compat, compat_local, compat_remote configuration options.

Used for busybox: instead of running `readlink -e` (which is not
available on busybox), run `readlink -f` followed by `test -d`.
2020-08-28 21:19:21 +02:00
Axel Burri 52a823bb93 btrbk: rename context "root" to "global"
Use same naming as in documentation: btrbk.conf.5
2020-08-28 20:49:28 +02:00
Axel Burri c81e390415 btrbk: cosmetics: capitalize debug logs 2020-08-28 20:48:17 +02:00
Axel Burri a140cbd898 btrbk: case-insensitive match hostname/ipv6 in filter statement 2020-08-27 10:38:23 +02:00
Axel Burri 61419d420a btrbk: add support for ipv6 addresses 2020-08-27 10:38:23 +02:00
Axel Burri 12d80ee30b btrbk: fix check on host 2020-08-20 17:02:45 +02:00
Axel Burri b80d7e84de btrbk: cosmetics on logging 2020-08-20 17:02:45 +02:00
Axel Burri 952e41443a btrbk: always log target before source
Consistent for send/receive and send-to-raw.
2020-08-20 17:01:25 +02:00
Axel Burri c11ab1507d btrbk: sanitize url on PRINT
For consistency with PATH and URL, $vol->{PRINT} was not sanitized
(trailing "//" if parent is "/"). This is now dropped, as this is more
confusing than useful.
2020-05-24 02:48:12 +02:00
Axel Burri 936f88a68f btrbk: action ls: support url argument; fix duplicates / sorting 2020-05-24 02:48:00 +02:00
Axel Burri 30edf5b766 btrbk: action ls: fix match on child subvols of "/"
If PATH contains double slash (intentional behavior of vinfo_child),
the match on root_path fails. Fixed by removing "//" from path.
2020-03-07 01:11:52 +01:00
Axel Burri cb7d49d075 btrbk: change version to 0.29.2-dev 2020-02-29 17:40:55 +01:00
Axel Burri e920283434 change version to 0.29.1; update ChangeLog 2020-02-09 16:18:00 +01:00
Axel Burri 0d19b0243e btrbk: action ls: change default output to format=short 2020-01-02 16:58:07 +01:00
Axel Burri c5b3ebb808 btrbk: action ls: allow multiple path arguments; soft fail on errors 2020-01-02 16:58:07 +01:00
Axel Burri 631a4c30fe btrbk: fix @stderr propagation from vinfo_init_root
As we print @stderr in warnings if vinfo_init_root() function fails,
we need to make sure that @stderr contains sane values.

Clearing @stderr is required when calling caching functions!
2019-12-15 20:03:37 +01:00
Axel Burri 67d24695f1 btrbk: logging prints "..." on consecutive lines 2019-12-15 20:03:37 +01:00
Axel Burri 1f7773dddc btrbk: try readlink only once per url
Change semantics of %realpath_cache: if "" (empty string), do not try
to run readlink shell command again on same URL.
2019-12-15 19:12:14 +01:00
Axel Burri 8c11c2eb7d btrbk: run_cmd: fix regression: dont print ssh errors
Explicitely printing ssh errors (or even warnings) is
inconsistent. stderr is printed outside the run_cmd framework if
needed.

reverts a80e05984a btrbk: catch ssh errors

See ssh(1):

    ssh exits with the exit status of the remote command or with 255
    if an error occurred.

Note that this includes network errors as well as dns failures
2019-12-15 19:12:06 +01:00
Axel Burri 9e13dbd933 btrbk: init sroot as late as possible when expanding wildcards 2019-12-15 19:10:01 +01:00
Axel Burri 37b30caeb2 btrbk: bugfix: vinfo_match: skip match against invalid paths
Dont check url_regex if $vinfo->{URL} is not a valid path (e.g. when
checking against a "volume" or "subvolume" having wildcards):

    "Use of uninitialized value in join or string" at line 3030
2019-12-14 17:06:15 +01:00
Axel Burri c36890e1eb btrbk: change version to 0.29.1-dev 2019-12-14 17:05:54 +01:00
Axel Burri b64ffbacf5 change version to 0.29.0; update ChangeLog 2019-10-27 14:00:40 +01:00
Axel Burri 8551a9f52a btrbk: consistently use "subvolume" (instead of "subvol") for table headings 2019-09-08 18:23:30 +02:00
Axel Burri 5e87e8248b btrbk: add --pretty option: print lowercase column headings with separator line 2019-09-08 18:23:30 +02:00
Axel Burri 4629d5ae11 btrbk: change table output format: remove separator line, uppercase column headings
Print table output column headings single-line uppercase instead of
lowercase and underlined.

This is common ascii table format, is easy parseable and offers better
readability e.g. in pager.
2019-09-08 18:23:30 +02:00
Axel Burri 485bc3ab0c btrbk: use global stderr (replace err); refeactor filter_stderr, add fatal_stderr
if fatal_stderr is set and returns true, the command exit code is set
to -1, resulting in run_cmd() returning undef.
2019-09-08 18:23:30 +02:00
Axel Burri 360c8918bb btrbk: catch verbose errors from readlink
readlink -v enables "report error messages", printing useful errors
like:

    readlink: /some/dir/: Permission denied
    readlink: /some/dir/: No such file or directory
2019-09-08 18:23:30 +02:00
Axel Burri 6e4aeae323 btrbk: cosmetics: enhance trace log 2019-09-08 18:23:30 +02:00
Axel Burri d0f0c18f64 btrbk: logging functions take array as argument 2019-09-08 18:23:29 +02:00
Axel Burri fa3334cbb7 btrbk: btrfs_subvolume_list_readonly_flag: dont die on parse errors 2019-09-08 18:23:29 +02:00
Axel Burri 3798677893 btrbk: run_cmd: return array of stdout lines instead of scalar 2019-09-08 18:23:29 +02:00
Axel Burri 4e39ed0fca btrbk: print ssh errors (remove -q option) 2019-09-08 18:23:29 +02:00
Axel Burri 9f347a1067 btrbk: use open3 in run_cmd: fetch stderr separately 2019-09-08 18:23:29 +02:00
Axel Burri a80e05984a btrbk: catch ssh errors 2019-09-08 18:23:29 +02:00