Dan Helfman
9cafc16052
For "borgmatic borg", pass the repository to Borg via a Borg-supported environment variable ( #575 ).
continuous-integration/drone/push Build is passing
Details
2023-07-03 00:08:54 -07:00
Dan Helfman
9cf27fa4ba
Deprecated configuration options warning logging.
continuous-integration/drone/push Build is passing
Details
2023-06-29 10:03:36 -07:00
Dan Helfman
e2c95327fb
Fix an error when dumping a MySQL database and the "exclude_nodump" option is set ( #720 ).
continuous-integration/drone/push Build is passing
Details
2023-06-28 09:15:11 -07:00
Dan Helfman
f60e97d5bf
When merging two configuration files, error gracefully if the two files do not adhere to the same format.
continuous-integration/drone/push Build is passing
Details
2023-06-26 16:46:09 -07:00
Dan Helfman
44f9ab95f9
Fix typos ( #575 ).
continuous-integration/drone/push Build is passing
Details
2023-06-26 14:37:23 -07:00
Dan Helfman
bb6004fc4f
Revamp "borg" action to support REPOSITORY and ARCHIVE env vars instead of implicitly injecting repository/archive into the Borg command ( #575 ).
2023-06-26 14:35:07 -07:00
Dan Helfman
b242078f54
Fix an error when running "borg key export" through borgmatic ( #719 ).
continuous-integration/drone/push Build is passing
Details
2023-06-26 09:30:46 -07:00
Dan Helfman
b9a11e860d
Remove legacy configuration parsing code, no longer needed with upgrade-borgmatic-config gone ( #529 ).
2023-06-25 15:36:25 -07:00
Dan Helfman
b62017be4b
Fix edge case in which "--config somepath.yaml" followed by an action alias (e.g. init for rcreate) wasn't parsed correctly ( #716 ).
continuous-integration/drone/push Build is passing
Details
2023-06-24 15:35:10 -07:00
Dan Helfman
35a11559ac
Fix error parsing arguments with multiple verbosity flags ( #716 ).
continuous-integration/drone/push Build is failing
Details
2023-06-24 14:10:47 -07:00
Dan Helfman
e4e455ee45
Deprecate validate-borgmatic-config in favor of new "config validate" action ( #529 ).
continuous-integration/drone/push Build is passing
Details
2023-06-23 10:11:41 -07:00
Dan Helfman
68d90e1e40
feat: allow restoring to different port/host/username ( #326 ).
...
Merge pull request #73 from diivi/feat/restore-with-different-hostname-port-username
2023-06-22 12:28:34 -07:00
Dan Helfman
1b90da5bf1
Deprecate generate-borgmatic-config in favor if new "config generate" action ( #529 ).
continuous-integration/drone/push Build is failing
Details
2023-06-21 12:19:49 -07:00
Dan Helfman
248f82d6f6
Fix for another subaction argument-parsing edge case ( #712 ).
continuous-integration/drone/push Build is passing
Details
2023-06-21 10:41:32 -07:00
Dan Helfman
147516ae3f
Remove additional upgrade-borgmatic-config code ( #529 ).
continuous-integration/drone/push Build is passing
Details
2023-06-20 09:41:26 -07:00
Dan Helfman
b10aee3070
Remove upgrade-borgmatic-config command for upgrading borgmatic 1.1.0 INI-style configuration ( #529 ).
continuous-integration/drone/push Build is failing
Details
2023-06-19 23:17:59 -07:00
Dan Helfman
6098005f5d
Fix an error when "data" check time files are accessed without getting upgraded first ( #711 , #713 ).
continuous-integration/drone/push Build is passing
Details
2023-06-19 23:07:57 -07:00
Dan Helfman
7b8be800a4
Refactor arguments parsing to fix bootstrap action CLI issues ( #712 ).
continuous-integration/drone/push Build is passing
Details
2023-06-19 16:18:47 -07:00
Divyansh Singh
9016dcc418
all e2e tests
2023-06-18 05:47:35 +05:30
Divyansh Singh
e53dd3da87
fix witten reported mysql error
2023-06-17 22:58:59 +05:30
Dan Helfman
ee2ebb79b8
Find sub-actions for an action without an isinstance() check.
continuous-integration/drone/push Build is passing
Details
2023-06-16 10:57:01 -07:00
Divyansh Singh
89602d1614
pass all existing tests (and formatting)
2023-06-16 15:14:00 +05:30
Dan Helfman
c294e78715
Use absolute paths when storing configuration files in an archive for later bootstrapping ( #697 ).
continuous-integration/drone/push Build is passing
Details
2023-06-15 21:45:43 -07:00
Divyansh Singh
8389851f2f
fix bug where port becomes truthy when none is converted to str
2023-06-15 23:34:50 +05:30
Dan Helfman
bbc7f0596c
Fix Bash completion for sub-actions like "borgmatic config bootstrap" ( #697 follow-on work).
continuous-integration/drone/push Build is passing
Details
2023-06-15 10:55:31 -07:00
Divyansh Singh
82d851d891
add argument for restore path
2023-06-15 23:05:53 +05:30
Divyansh Singh
62b6f13299
add restore-path support for sqlite
2023-06-15 23:02:09 +05:30
Divyansh Singh
b7423c488e
refactor password assignment logic
2023-06-15 22:54:06 +05:30
Divyansh Singh
a9386b7a87
add mongodb support, and sqlite restore path (config option only)
2023-06-15 02:18:24 +05:30
Divyansh Singh
205e5b1524
mysql support
2023-06-15 01:47:46 +05:30
Divyansh Singh
67f4d43aec
witten review
2023-06-15 01:37:18 +05:30
Divyansh Singh
230cf6adc4
support command line args for hostname port username password
2023-06-14 00:11:19 +05:30
Divyansh Singh
8e8e64d920
add no-owner and refactor
2023-06-13 23:42:50 +05:30
Divyansh Singh
f558cb3156
feat: allow restoring to different port/host/username
2023-06-12 21:54:39 +05:30
Dan Helfman
670bdffb3c
Code formatting.
continuous-integration/drone/push Build is passing
Details
2023-06-10 19:25:49 -07:00
Dan Helfman
691d4f887a
Fix incorrect log message ( #697 ).
continuous-integration/drone/push Build is failing
Details
2023-06-10 16:02:03 -07:00
Dan Helfman
beb899d6fb
Make user-facing manifest loading error messages a little friendlier ( #697 ).
continuous-integration/drone/push Build is failing
Details
2023-06-10 15:50:11 -07:00
Dan Helfman
0f9756e739
Fix failing test and add "bootstrap" action to CLI reference docs ( #697 ).
continuous-integration/drone/push Build is passing
Details
2023-06-10 15:17:18 -07:00
Dan Helfman
d84f1ec616
Add bootstrap action to NEWS and make post-PR tweaks ( #697 ).
continuous-integration/drone/push Build is failing
Details
2023-06-10 14:52:00 -07:00
Dan Helfman
ef409ad23c
Store configs used to create an archive in the archive and add borgmatic bootstrap ( #697 ).
...
Merge pull request #71 from diivi/feat/store-config-in-archive
2023-06-10 14:39:53 -07:00
Divyansh Singh
197920d9ef
improve tests and some docstrings.
2023-06-09 17:31:57 +05:30
Divyansh Singh
3315555d06
cleaner test
2023-06-09 00:21:41 +05:30
Divyansh Singh
6475345a8f
attempt to test parse_subparser_arguments
2023-06-08 01:02:43 +05:30
Divyansh Singh
f90d30e0e1
remove duplicate comments
2023-06-08 00:08:39 +05:30
Divyansh Singh
dc56fd33a0
formatting
2023-06-07 01:47:16 +05:30
Divyansh Singh
4b024daae0
pass all tests with wittens recommendation
2023-06-06 23:37:09 +05:30
Divyansh Singh
6a1d1a2e59
fix indentation error that caused too many test failures
2023-06-05 20:31:09 +05:30
Divyansh Singh
206a9c9607
edit schema comments and work on witten review
2023-06-05 20:05:10 +05:30
Felix Kaechele
c61d63b235
Use open() to test for file existance and readability
...
Signed-off-by: Felix Kaechele <felix@kaechele.ca>
2023-06-04 00:54:29 -04:00
Felix Kaechele
ba0899660d
Verify that schema path exists before returning it
...
Signed-off-by: Felix Kaechele <felix@kaechele.ca>
2023-06-03 23:42:20 -04:00
Felix Kaechele
15cabb93ca
Drop importlib_metadata entirely
...
The fallback option using the dirname of the config module location
seems to be more robust in a number of cases.
Signed-off-by: Felix Kaechele <felix@kaechele.ca>
2023-06-03 23:42:20 -04:00
Felix Kaechele
ce6daff12f
Fix importlib.metadata.files workaround
...
Some distributions, such as Fedora, do not install the RECORDS file as
part of a package's dist-info. As a result importlib.metadata.files will
return None.
Use the workaround for these cases as well.
Signed-off-by: Felix Kaechele <felix@kaechele.ca>
2023-06-03 23:42:20 -04:00
Dan Helfman
caf654366c
Document work-around for colons in YAML strings ( #708 ).
continuous-integration/drone/push Build is passing
Details
2023-06-03 10:19:34 -07:00
Divyansh Singh
bb60b25399
merge subparsers and refactor
2023-06-02 02:04:35 +05:30
Divyansh Singh
74aa28e027
support more flags
2023-06-01 16:53:34 +05:30
Dan Helfman
1784ca5910
Fix "check" action error when repository and archive checks are configured but the archive check gets skipped due to the configured frequency ( #704 ).
continuous-integration/drone/push Build is passing
Details
2023-05-30 23:19:33 -07:00
Dan Helfman
341bd4118d
Fix "--archive latest" on "list" and "info" actions only working on the first of multiple configured repositories ( #706 ).
continuous-integration/drone/push Build is failing
Details
2023-05-30 16:53:55 -07:00
Soumik Dutta
a7f81d538d
nit changes
...
- help strings in borgmatic commands
- test fixes in test_logger and test_borgmatic
Signed-off-by: Soumik Dutta <shalearkane@gmail.com>
2023-05-29 01:09:00 +05:30
Divyansh Singh
4c60bf84d7
extract config files
2023-05-28 01:36:32 +05:30
Divyansh Singh
dbb778a4d6
finish parsing and add error for empty config subcommand
2023-05-26 22:44:31 +05:30
Soumik Dutta
0283f9ae2a
fix help string
...
Signed-off-by: Soumik Dutta <shalearkane@gmail.com>
2023-05-26 08:57:12 +05:30
Soumik Dutta
09f59ad97d
disable monitoring hooks if monitoring_log_level is set to DISABLED
...
Signed-off-by: Soumik Dutta <shalearkane@gmail.com>
2023-05-26 08:57:12 +05:30
Soumik Dutta
5a9bb4b97f
update help strings
...
Signed-off-by: Soumik Dutta <shalearkane@gmail.com>
2023-05-26 08:57:12 +05:30
Soumik Dutta
6a2eb1f157
make value of disabled level higher
...
so that no other log has higher priority
Signed-off-by: Soumik Dutta <shalearkane@gmail.com>
2023-05-26 08:57:12 +05:30
Soumik Dutta
99473c30a8
disable sending logs in Healthchecks
...
Signed-off-by: Soumik Dutta <shalearkane@gmail.com>
2023-05-26 08:57:12 +05:30
Soumik Dutta
f512d1e460
add verbosity level -2
...
Signed-off-by: Soumik Dutta <shalearkane@gmail.com>
2023-05-26 08:57:12 +05:30
Dan Helfman
96adee444b
Potential fix for nested subparsers not parsing correctly.
2023-05-25 15:03:15 -07:00
Divyansh Singh
8b7996dfda
removed parents and used reversed remaining_args
2023-05-26 01:07:11 +05:30
Divyansh Singh
2241de11c0
start work on borgmatic config bootstrap command
2023-05-26 00:26:13 +05:30
Dan Helfman
84c21b062f
Fix incorrect argument ordering ( #659 ).
continuous-integration/drone/push Build is passing
Details
2023-05-23 16:55:40 -07:00
Chirag Aggarwal
00e9bb011a
test should mock out make_flags_from_arguments
...
Signed-off-by: Chirag Aggarwal <thechiragaggarwal@gmail.com>
2023-05-20 09:23:09 -04:00
Divyansh Singh
ee32b076eb
update tests and formatting
2023-05-16 23:17:35 +05:30
Dan Helfman
e3425f48be
Instead of taking the first check time found, take the maximum value ( #688 )
continuous-integration/drone/push Build is passing
Details
2023-05-16 10:20:52 -07:00
Dan Helfman
b45e45f161
Partial conversion of showing repository labels in logs instead of paths (part of #635 ).
continuous-integration/drone/push Build is running
Details
2023-05-16 09:36:50 -07:00
Divyansh Singh
b10148844b
change config_paths var name to used_config_paths to avoid collisions
2023-05-16 14:00:23 +05:30
Dan Helfman
645d29b040
Fix archive checks being skipped even when particular archives haven't been checked recently ( #688 ).
continuous-integration/drone/push Build is failing
Details
2023-05-15 23:17:45 -07:00
Divyansh Singh
49b4d371ce
create and add content to borgmatic-manifest.json
2023-05-16 00:24:19 +05:30
Divyansh Singh
1bc7bb4971
feat: store configs used to create an archive in the archive
2023-05-15 23:04:42 +05:30
Dan Helfman
8eb05b840a
Log a warning when "borgmatic borg" is run with an action that borgmatic natively supports ( #694 ).
2023-05-14 09:59:28 -07:00
Dan Helfman
403ae0f698
Clarify configuration comment about source_directories also accepting files ( #693 ).
continuous-integration/drone/push Build is passing
Details
2023-05-09 10:14:03 -07:00
Dan Helfman
92a2230a07
Add support for logging each log line as a JSON object via global "--log-json" flag ( #680 ).
continuous-integration/drone/push Build is passing
Details
2023-05-08 23:00:49 -07:00
Dan Helfman
b3b08ee6d7
Fix error in "borgmatic restore" action when the configured repository path is relative ( #691 ).
continuous-integration/drone/push Build is passing
Details
2023-05-07 21:21:35 -07:00
Dan Helfman
4aae7968b8
Add fish shell completions support ( #686 ).
...
Merge pull request #70 from isaec/feat/fish-completions
2023-05-06 16:00:25 -07:00
Isaac
43c532bc57
add test for dedent strip
2023-05-06 11:51:35 -07:00
Isaac
efb81fc2c1
rename last arg helper function to current arg for clarity
2023-05-06 11:42:32 -07:00
Isaac
c8f4344f89
add more justification to checks
2023-05-06 11:39:02 -07:00
Isaac
a047f856a1
tweak docstring, add comment
2023-05-06 11:37:38 -07:00
Isaac
d732059979
fix rotted comments
2023-05-06 11:32:10 -07:00
Isaac
aa564ac5fe
fix the error thrown, unit test for it, and add string explanations
2023-05-06 11:25:15 -07:00
Isaac
372622fbb1
add more doccomments, drop a check
2023-05-06 10:46:27 -07:00
Isaac
469e0ccace
create doccomments, start writing unit tests
2023-05-06 10:42:06 -07:00
Isaac
59a6ce1462
replace double quotes with single quotes
2023-05-05 00:03:43 -07:00
Isaac
5a7a1747f2
add safety check to avoid infinite cat hang
2023-05-05 00:01:45 -07:00
Isaac
b557d635fd
async validity check
2023-05-04 23:57:37 -07:00
Isaac
d59b9b817f
support required actions
2023-05-04 23:44:54 -07:00
Isaac
16ac4824a5
handle typed without default params
2023-05-04 23:42:04 -07:00
Isaac
3592ec3ddf
dont show deprecated options
2023-05-04 23:32:09 -07:00
Isaac
8f3039be23
handle the expanding filters better
2023-05-04 23:23:29 -07:00
Isaac
b4a38d8be9
fix flag showing up for paths
2023-05-04 23:06:11 -07:00
Isaac
d962376a9d
refactor to only show specific options if possible
2023-05-04 21:58:30 -07:00
Isaac
193731a017
rename function
2023-05-04 21:14:48 -07:00
Isaac
bbc3e9d717
show possible choices
2023-05-04 21:12:24 -07:00
Isaac
639e88262e
create working file completion
2023-05-04 20:17:26 -07:00
Isaac
f12a10d888
start work on conditional file completion
2023-05-04 19:50:49 -07:00
Isaac
28efc85660
rearrange to improve legability of the file
2023-05-04 18:11:13 -07:00
Isaac
f1fd2e88dd
drop blank completion
2023-05-04 13:49:29 -07:00
Isaac
700f8e9d9c
replace .format with fstring
2023-05-04 13:39:48 -07:00
Isaac
f04036e4a7
use fstring to produce completion lines
2023-05-04 13:33:21 -07:00
Isaac
062453af51
replace actionStr with action_name
2023-05-04 13:29:25 -07:00
Isaac
9ff5ea5240
add a unit test, fix isort and black
2023-05-04 13:22:09 -07:00
Dan Helfman
359afe5318
Error if --list is used with --json for create action ( #680 ).
continuous-integration/drone/push Build is passing
Details
2023-05-03 17:16:36 -07:00
Dan Helfman
0b397a5bf9
Fix borgmatic error when not finding the configuration schema for certain "pip install --editable" development installs ( #687 ).
continuous-integration/drone/push Build is passing
Details
2023-04-30 16:24:10 -07:00
Dan Helfman
a60d7fd173
Run "borgmatic borg" action without capturing output so interactive prompts and flags like "--progress" still work.
continuous-integration/drone/push Build is passing
Details
2023-04-30 15:43:41 -07:00
Isaac
98e3a81fcf
allow file completions as applicable
2023-04-28 12:42:26 -07:00
Isaac
9c77ebb016
continue deduping
2023-04-28 12:15:01 -07:00
Isaac
23f478ce74
use less completion lines
2023-04-28 12:13:08 -07:00
Isaac
d265b6ed6f
add comments in generated files
2023-04-28 11:57:16 -07:00
Isaac
2e658cfa56
only allow one parser
2023-04-27 21:57:50 -07:00
Isaac
412d18f218
show sub options
2023-04-27 21:31:53 -07:00
Isaac
8060586d8b
fix the script and drop unneeded options
2023-04-27 20:05:17 -07:00
Isaac
25b3db72a0
make more precise, fix the version check fn
2023-04-27 19:58:22 -07:00
Isaac
5678f3a96e
basic working version
2023-04-27 19:44:11 -07:00
Isaac
28b152aedd
make upgrade message a template
2023-04-27 19:31:42 -07:00
Isaac
0009471f67
start work on completion
2023-04-27 18:46:13 -07:00
jetchirag
a62ac42cca
Merge branch 'main' into borg2-archive-flags
2023-04-27 16:57:29 +00:00
Chirag Aggarwal
68ee9687f5
Added tests for all subcommands and used black formatter
...
Signed-off-by: Chirag Aggarwal <thechiragaggarwal@gmail.com>
2023-04-27 22:27:23 +05:30
Chirag Aggarwal
96aca4f446
Updated existing tests to use new parameters
...
Signed-off-by: Chirag Aggarwal <thechiragaggarwal@gmail.com>
2023-04-24 20:24:41 +05:30
Dan Helfman
5962fd473e
Another try. Backing out psql error changes ( #678 ).
continuous-integration/drone/push Build is passing
Details
2023-04-21 10:34:50 -07:00
Jesse Johnson
a14870ce48
Expand source directories when checking for existence ( #682 ).
2023-04-21 05:52:04 +00:00
Dan Helfman
da0f5a34f2
Fix multiple bugs in PostgreSQL hook ( #678 ).
...
continuous-integration/drone/push Build is failing
Details
Reviewed-on: #677
2023-04-21 04:05:22 +00:00
Dan Helfman
065be1d9d4
More inclusive language.
continuous-integration/drone/push Build is passing
Details
2023-04-20 14:28:04 -07:00
Dan Helfman
9f5769f87b
Make docs/schema a little more container agnostic / less Docker specific.
continuous-integration/drone/push Build is passing
Details
continuous-integration/drone Build is passing
Details
2023-04-16 15:41:17 -07:00
Chirag Aggarwal
1ee56805f1
Merge remote-tracking branch 'upstream/master' into borg2-archive-flags
2023-04-15 17:29:20 +05:30
Dan Helfman
8cb5a42a9e
Drop deprecated pkg_resources in favor of importlib.metadata and packaging.
continuous-integration/drone/push Build is failing
Details
2023-04-14 21:21:25 -07:00
Dan Helfman
5dbb71709c
Upgrade test requirements and code style requirements. Auto-reformat code accordingly.
continuous-integration/drone/push Build is passing
Details
2023-04-14 19:35:24 -07:00
Dan Helfman
81e167959b
feat: restore specific schemas ( #375 ).
...
Merge pull request #67 from diivi/feat/restore-specific-schemas
2023-04-14 16:26:25 -07:00
Divyansh Singh
f273e82d74
add tests
2023-04-15 02:57:51 +05:30
Jakub Jirutka
17f122bfe5
Use psql instead of pg_restore when format is "plain"
...
pg_restore: error: input file appears to be a text format dump. Please use psql.
2023-04-14 17:38:19 +02:00
Jakub Jirutka
f0f43174c6
Swap if-else in restore_database_dump in postgresql hook for cleanliness
2023-04-14 17:38:19 +02:00
Jakub Jirutka
dfccc1b94a
Exit on error when restoring all PostgreSQL databases
...
"--set ON_ERROR_STOP=on" is equivalent to "--exit-on-error" in
pg_restore.
2023-04-14 17:38:18 +02:00
Jakub Jirutka
195024e505
Fix psql_command and pg_restore_command to accept command with arguments
...
These commands are executed without `shell=True`, so the subprocess
module treats e.g. "docker exec my_pg_container psql" as a single command
(resulting in Errno 2 "No such file or directory") instead of a command
with arguments.
2023-04-14 17:37:38 +02:00
Jakub Jirutka
19a00371f5
Run "psql" with "--no-psqlrc"
...
Some settings in user's .psqlrc, e.g. "linestyle unicode", may break the
CSV output. "--no-psqlrc" tells psql to not read startup file.
This is not necessary for the analyze_command and restore_command (with
all_databases), but it's generally recommended when running psql from a
script.
2023-04-14 17:37:37 +02:00
Jakub Jirutka
874fba7672
Fix PostgreSQL hook not using "psql_command" for list when dumping "all"
2023-04-14 15:13:49 +02:00
Dan Helfman
4a94c2c9bf
Selectively omit list values when including configuration files ( #672 ).
continuous-integration/drone/push Build is passing
Details
2023-04-13 14:39:36 -07:00
Dan Helfman
1ea4433aa9
Selectively shallow merge certain mappings or sequences when including configuration files ( #672 ).
continuous-integration/drone/push Build is failing
Details
2023-04-11 21:49:10 -07:00
Divyansh Singh
2fea429d78
collection restore for mongodb
2023-04-12 09:34:19 +05:30
Divyansh Singh
264cebd2b1
complete psql multi schema backup
2023-04-11 23:19:49 +05:30
Dan Helfman
4c0e2cab78
View the results of configuration file merging via "validate-borgmatic-config --show" flag ( #673 ).
continuous-integration/drone/push Build is passing
Details
2023-04-11 10:49:09 -07:00
Dan Helfman
b4b1fa939d
feat: add logfile name to hook context for interpolation
...
Merge pull request #68 from diivi/feat/add-log-filename-to-hook-context
2023-04-06 13:46:45 -07:00
Divyansh Singh
16d7131fb7
refactor tests
2023-04-07 01:00:38 +05:30