Commit Graph

61 Commits

Author SHA1 Message Date
3b99f7c75a Constants support includes and command-line overrides (#745, #782) 2023-11-19 21:13:35 -08:00
6cc93c4eb9 Fix environment variable interpolation within configured repository paths (#782).
All checks were successful
continuous-integration/drone/push Build is passing
2023-11-03 21:16:04 -07:00
c3efe1b90e Only parse "--override" values as complex data types when they're for options of those types (#779).
All checks were successful
continuous-integration/drone/push Build is passing
2023-10-29 19:02:28 -07:00
48b6a1679a Remove sections (#721).
Some checks failed
continuous-integration/drone/push Build is failing
2023-07-08 23:14:30 -07:00
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
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
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
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
0b397a5bf9 Fix borgmatic error when not finding the configuration schema for certain "pip install --editable" development installs (#687).
All checks were successful
continuous-integration/drone/push Build is passing
2023-04-30 16:24:10 -07:00
8cb5a42a9e Drop deprecated pkg_resources in favor of importlib.metadata and packaging.
Some checks failed
continuous-integration/drone/push Build is failing
2023-04-14 21:21:25 -07:00
ce22d2d302 reformat 2023-03-28 22:29:21 +05:30
2d08a63e60 fix: make check repositories work with dict and str repositories 2023-03-28 22:14:50 +05:30
b511e679ae remove optional label for repos from tests 2023-03-26 16:59:29 +05:30
1bc003560a Merge branch 'master' of https://github.com/diivi/borgmatic into feat/tag-repos 2023-03-25 01:39:26 +05:30
e83ad9e1e4 use repository["path"] instead of repository 2023-03-25 01:04:57 +05:30
f42890430c Add code style plugins to enforce use of Python f-strings and prevent single-letter variables.
All checks were successful
continuous-integration/drone/push Build is passing
2023-03-23 23:11:14 -07:00
7a2f287918 reformat base 2023-03-23 01:08:30 +05:30
8a63c49498 feat: tag repos 2023-03-23 01:01:26 +05:30
39ad8f64c4 add tests and remove magic number 2023-03-21 17:06:03 +05:30
e86d223bbf Merge branch 'master' of https://github.com/diivi/borgmatic into feat/file-urls-support 2023-03-21 16:55:05 +05:30
58c95d8015 feat: file:// URLs support 2023-03-20 02:43:23 +05:30
5d19d86e4a Add flake8-quotes to complain about incorrect quoting so I don't have to!
All checks were successful
continuous-integration/drone/push Build is passing
2023-03-07 14:08:35 -08:00
c46f2b8508 Fix conflict between "patterns" and "source_directories" (#574), make "source_directories" optional (#542). 2022-08-25 11:55:34 -07:00
28d847b8b1 Warn and tranform on non-ssh://-style repositories (#557).
All checks were successful
continuous-integration/drone/push Build is passing
2022-08-17 10:13:11 -07:00
9aece3936a Modify "mount" and "extract" actions to require the "--repository" flag when multiple repositories are configured (#566).
All checks were successful
continuous-integration/drone/push Build is passing
2022-07-25 11:30:02 -07:00
c0f48e1071 Fix command-line "--override" flag to continue supporting old configuration file formats (#561).
All checks were successful
continuous-integration/drone/push Build is passing
2022-07-06 18:14:44 -07:00
aecb6fcd74 Code style, rename command-line flag, and move new code into its own file (#546)
Some checks failed
continuous-integration/drone/push Build is failing
2022-06-16 11:35:24 -07:00
97b5cd089d Allow environment variable resolution in configuration file
- all string fields containing an environment variable like ${FOO} will
  be resolved
- supported format ${FOO}, ${FOO:-bar} and ${FOO-bar} to allow default
  values if variable is not present in environment
- add --no-env argument for CLI to disable the feature which is enabled
  by default

Resolves: #546
2022-06-16 18:52:54 +02:00
32a1043468 Remove the error when "archive_name_format" is specified but a retention prefix isn't (#402).
All checks were successful
continuous-integration/drone/push Build is passing
2022-05-23 16:11:24 -07:00
bec73245e9 Fix traceback when a YAML validation error occurs (#480, #482).
All checks were successful
continuous-integration/drone/push Build is passing
2022-01-19 20:39:03 -08:00
c646edf2c7 Bump version for release.
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2021-11-22 13:19:15 -08:00
717cfd2d37 validate: add support for both jsonschema v3 and old v2
Some checks failed
continuous-integration/drone/pr Build is failing
RHEL8 and RHEL7 have old jsonschema v2. Try v3 (Draft7) first but
fallback to v2 (Draft4) if needed.
2021-10-23 15:04:07 +03:00
27d37b606b Better error messages! Switch the library used for validating configuration files (from pykwalify to jsonschema).
All checks were successful
continuous-integration/drone/push Build is passing
2021-06-22 13:27:59 -07:00
94b9ef56be Change "exclude_if_present" option to support multiple filenames, rather than just a single filename (#280).
All checks were successful
continuous-integration/drone/push Build is passing
2020-01-23 13:41:37 -08:00
f787dfe809 Override particular configuration options from the command-line via "--override" flag (#268).
All checks were successful
continuous-integration/drone/push Build is passing
2019-12-17 11:46:27 -08:00
65cc4c9429 Fix "--repository" flag to accept relative paths.
All checks were successful
continuous-integration/drone/push Build is passing
2019-12-06 16:29:41 -08:00
458e7776c5 Database dump hooks for PostgreSQL, so you can easily dump your databases before backups run (#225).
All checks were successful
continuous-integration/drone/push Build is passing
2019-10-22 16:28:42 -07:00
74ac148747 Disable console color via "color" option in borgmatic configuration output section (#191).
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/tag Build is passing
2019-06-19 20:48:54 -07:00
b3aa6af859 Don't color syslog output (#197).
All checks were successful
continuous-integration/drone/push Build is passing
2019-06-17 11:53:08 -07:00
1c0dc3f904
Run isort over the source
All checks were successful
the build was successful
2019-05-14 18:59:19 +02:00
1f524d6c87
Add borgmatic custom logger 2019-05-13 13:40:18 +02:00
6ff1867312 Configuration files includes and merging (#148).
All checks were successful
the build was successful
2019-03-06 12:06:27 -08:00
4272c6b077 List the files within an archive via --list --archive option (#140).
All checks were successful
the build was successful
2019-02-23 23:02:17 -08:00
aa7c7651e5 Fix config repositories consumption. 2019-02-18 13:27:35 -08:00
c41ffb5ceb If no extract repository is given, then error if there are multiple configured repositories. 2019-02-18 13:22:14 -08:00
766a03375a Guard that the given repository occurs in config exactly once.
All checks were successful
the build was successful
2019-02-18 12:58:39 -08:00
09d521661f Remove weasel words like "easily" and "simply".
All checks were successful
the build was successful
2018-12-25 22:03:34 -08:00
fa38de2de7 Enable consistency checks for only certain repositories via "check_repositories" (#73).
All checks were successful
the build was successful
2018-10-13 20:34:51 -07:00
56ad1d164a Use Flake8 code checker as part of running automated tests. 2018-09-29 23:15:18 -07:00
76d6a69f5a Use Black code formatter as part of running automated tests. 2018-09-29 22:45:00 -07:00