Add CLI flags for every config option and add config options for many action flags (#303). #1040

Merged
witten merged 69 commits from config-command-line into main 2025-04-03 23:48:49 +00:00
Owner

Implements #303. This PR:

  1. Adds CLI flags for (nearly) every existing configuration option. The few exceptions are certain options that are intentionally omitted because there are already corresponding flags on individual actions (especially after the following point).
  2. Adds configuration options for certain existing action flags (create --progress, repo-create --encryption, etc.).

The intent is to: 1. Replace --override with a CLI flag syntax that makes overriding settings more natural and granular (now you can target individual list items), and 2. Make more things actually configurable so the user doesn't need to put as much on the command-line and therefore wrap borgmatic with a wrapper script.

Still to do

  • do an organizational pass on the new code
  • get unit/integration tests passing
  • get end-to-end tests passing
  • add/update unit/integration tests for changes in this PR
  • add/update end-to-end tests for changes in this PR
  • audit for missing test coverage
  • documentation
  • fix broken --list, --progress, etc. overrides.
  • manual testing

Not part of this, but obvious follow-on work: #793.

Implements #303. This PR: 1. Adds CLI flags for (nearly) every existing configuration option. The few exceptions are certain options that are intentionally omitted because there are already corresponding flags on individual actions (especially after the following point). 2. Adds configuration options for certain existing action flags (`create --progress`, `repo-create --encryption`, etc.). The intent is to: 1. Replace `--override` with a CLI flag syntax that makes overriding settings more natural and granular (now you can target individual list items), and 2. Make more things actually configurable so the user doesn't need to put as much on the command-line and therefore wrap borgmatic with a wrapper script. ### Still to do * [x] do an organizational pass on the new code * [x] get unit/integration tests passing * [x] get end-to-end tests passing * [x] add/update unit/integration tests for changes in this PR * [x] add/update end-to-end tests for changes in this PR * [x] audit for missing test coverage * [x] documentation * [x] fix broken `--list`, `--progress`, etc. overrides. * [x] manual testing Not part of this, but obvious follow-on work: #793.
witten added 24 commits 2025-03-22 20:37:11 +00:00
witten changed title from Add CLI flags for every config option and add config options for many action flags (#303). to WIP: Add CLI flags for every config option and add config options for many action flags (#303). 2025-03-22 20:37:16 +00:00
witten added 2 commits 2025-03-22 21:01:56 +00:00
witten added 1 commit 2025-03-22 21:04:03 +00:00
witten added 1 commit 2025-03-23 05:52:40 +00:00
witten added 1 commit 2025-03-23 18:25:13 +00:00
witten added 1 commit 2025-03-23 18:27:06 +00:00
witten added 2 commits 2025-03-24 00:00:18 +00:00
witten added 1 commit 2025-03-24 01:46:09 +00:00
witten added 2 commits 2025-03-26 05:40:03 +00:00
witten added 2 commits 2025-03-27 18:08:04 +00:00
witten added 1 commit 2025-03-27 19:43:27 +00:00
witten added 1 commit 2025-03-27 23:49:33 +00:00
witten added 1 commit 2025-03-28 04:02:13 +00:00
witten added 1 commit 2025-03-28 18:38:09 +00:00
witten added 1 commit 2025-03-28 20:47:53 +00:00
witten added 1 commit 2025-03-29 06:11:47 +00:00
witten added 1 commit 2025-03-29 21:27:10 +00:00
witten added 2 commits 2025-03-29 22:25:03 +00:00
witten added 2 commits 2025-03-30 02:03:38 +00:00
witten added 1 commit 2025-03-30 02:55:11 +00:00
witten added 1 commit 2025-03-30 05:00:19 +00:00
witten added 1 commit 2025-03-30 05:52:52 +00:00
witten added 1 commit 2025-03-31 18:34:50 +00:00
witten added 1 commit 2025-03-31 20:33:54 +00:00
witten added 1 commit 2025-03-31 22:27:20 +00:00
witten added 1 commit 2025-04-01 00:13:32 +00:00
witten added 1 commit 2025-04-01 19:10:02 +00:00
witten added 2 commits 2025-04-02 02:45:34 +00:00
witten added 1 commit 2025-04-02 04:06:35 +00:00
witten added 1 commit 2025-04-02 06:06:01 +00:00
witten added 1 commit 2025-04-02 16:38:28 +00:00
witten added 1 commit 2025-04-02 16:55:42 +00:00
witten added 1 commit 2025-04-03 00:08:43 +00:00
witten added 1 commit 2025-04-03 06:16:18 +00:00
witten added 1 commit 2025-04-03 16:25:19 +00:00
witten added 1 commit 2025-04-03 18:28:58 +00:00
witten added 1 commit 2025-04-03 18:47:38 +00:00
witten added 1 commit 2025-04-03 23:22:12 +00:00
witten added 1 commit 2025-04-03 23:38:54 +00:00
witten changed title from WIP: Add CLI flags for every config option and add config options for many action flags (#303). to Add CLI flags for every config option and add config options for many action flags (#303). 2025-04-03 23:48:23 +00:00
witten merged commit 929d343214 into main 2025-04-03 23:48:49 +00:00
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: borgmatic-collective/borgmatic#1040