Remove weasel words like "easily" and "simply".
This commit is contained in:
parent
fd46efb193
commit
09d521661f
8 changed files with 21 additions and 20 deletions
2
NEWS
2
NEWS
|
@ -1,3 +1,5 @@
|
||||||
|
1.2.15.dev0
|
||||||
|
|
||||||
1.2.14
|
1.2.14
|
||||||
* #103: When generating sample configuration with generate-borgmatic-config, document the defaults
|
* #103: When generating sample configuration with generate-borgmatic-config, document the defaults
|
||||||
for each option.
|
for each option.
|
||||||
|
|
17
README.md
17
README.md
|
@ -94,7 +94,7 @@ If that command is not found, then it may be installed in a location that's
|
||||||
not in your system `PATH`. Try looking in `/usr/local/bin/`.
|
not in your system `PATH`. Try looking in `/usr/local/bin/`.
|
||||||
|
|
||||||
This generates a sample configuration file at /etc/borgmatic/config.yaml (by
|
This generates a sample configuration file at /etc/borgmatic/config.yaml (by
|
||||||
default). You should edit the file to suit your needs, as the values are just
|
default). You should edit the file to suit your needs, as the values are
|
||||||
representative. All fields are optional except where indicated, so feel free
|
representative. All fields are optional except where indicated, so feel free
|
||||||
to ignore anything you don't need.
|
to ignore anything you don't need.
|
||||||
|
|
||||||
|
@ -156,8 +156,7 @@ key-based SSH access to the desired user account on the remote host.
|
||||||
|
|
||||||
### Backups
|
### Backups
|
||||||
|
|
||||||
You can run borgmatic and start a backup simply by invoking it without
|
You can run borgmatic and start a backup by invoking it without arguments:
|
||||||
arguments:
|
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
borgmatic
|
borgmatic
|
||||||
|
@ -292,7 +291,7 @@ See `borgmatic --help` for more information.
|
||||||
### Hooks
|
### Hooks
|
||||||
|
|
||||||
If you find yourself performing prepraration tasks before your backup runs, or
|
If you find yourself performing prepraration tasks before your backup runs, or
|
||||||
cleanup work afterwards, borgmatic hooks may be of interest. They're simply
|
cleanup work afterwards, borgmatic hooks may be of interest. Hooks are
|
||||||
shell commands that borgmatic executes for you at various points, and they're
|
shell commands that borgmatic executes for you at various points, and they're
|
||||||
configured in the `hooks` section of your configuration file.
|
configured in the `hooks` section of your configuration file.
|
||||||
|
|
||||||
|
@ -323,7 +322,7 @@ following:
|
||||||
sudo pip3 install --upgrade borgmatic
|
sudo pip3 install --upgrade borgmatic
|
||||||
```
|
```
|
||||||
|
|
||||||
However, see below about special cases.
|
See below about special cases.
|
||||||
|
|
||||||
|
|
||||||
### Upgrading from borgmatic 1.0.x
|
### Upgrading from borgmatic 1.0.x
|
||||||
|
@ -334,7 +333,7 @@ to express lists of values. To upgrade your existing configuration, first
|
||||||
upgrade to the new version of borgmatic.
|
upgrade to the new version of borgmatic.
|
||||||
|
|
||||||
As of version 1.1.0, borgmatic no longer supports Python 2. If you were
|
As of version 1.1.0, borgmatic no longer supports Python 2. If you were
|
||||||
already running borgmatic with Python 3, then you can simply upgrade borgmatic
|
already running borgmatic with Python 3, then you can upgrade borgmatic
|
||||||
in-place:
|
in-place:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
@ -375,8 +374,8 @@ command](https://borgbackup.readthedocs.io/en/stable/usage.html#borg-upgrade)
|
||||||
for more information. Then, follow the instructions above about setting up
|
for more information. Then, follow the instructions above about setting up
|
||||||
your borgmatic configuration files.
|
your borgmatic configuration files.
|
||||||
|
|
||||||
If you were already using Borg with atticmatic, then you can easily upgrade
|
If you were already using Borg with atticmatic, then you can upgrade
|
||||||
from atticmatic to borgmatic. Simply run the following commands:
|
from atticmatic to borgmatic by running the following commands:
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
sudo pip3 uninstall atticmatic
|
sudo pip3 uninstall atticmatic
|
||||||
|
@ -444,7 +443,7 @@ git clone ssh://git@projects.torsion.org:3022/witten/borgmatic.git
|
||||||
|
|
||||||
Then, install borgmatic
|
Then, install borgmatic
|
||||||
"[editable](https://pip.pypa.io/en/stable/reference/pip_install/#editable-installs)"
|
"[editable](https://pip.pypa.io/en/stable/reference/pip_install/#editable-installs)"
|
||||||
so that you can easily run borgmatic commands while you're hacking on them to
|
so that you can run borgmatic commands while you're hacking on them to
|
||||||
make sure your changes work.
|
make sure your changes work.
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
|
|
@ -8,8 +8,8 @@ logger = logging.getLogger(__name__)
|
||||||
|
|
||||||
def extract_last_archive_dry_run(repository, lock_wait=None, local_path='borg', remote_path=None):
|
def extract_last_archive_dry_run(repository, lock_wait=None, local_path='borg', remote_path=None):
|
||||||
'''
|
'''
|
||||||
Perform an extraction dry-run of just the most recent archive. If there are no archives, skip
|
Perform an extraction dry-run of the most recent archive. If there are no archives, skip the
|
||||||
the dry-run.
|
dry-run.
|
||||||
'''
|
'''
|
||||||
remote_path_flags = ('--remote-path', remote_path) if remote_path else ()
|
remote_path_flags = ('--remote-path', remote_path) if remote_path else ()
|
||||||
lock_wait_flags = ('--lock-wait', str(lock_wait)) if lock_wait else ()
|
lock_wait_flags = ('--lock-wait', str(lock_wait)) if lock_wait else ()
|
||||||
|
|
|
@ -36,7 +36,7 @@ def main(): # pragma: no cover
|
||||||
|
|
||||||
print('Generated a sample configuration file at {}.'.format(args.destination_filename))
|
print('Generated a sample configuration file at {}.'.format(args.destination_filename))
|
||||||
print()
|
print()
|
||||||
print('Please edit the file to suit your needs. The values are just representative.')
|
print('Please edit the file to suit your needs. The values are representative.')
|
||||||
print('All fields are optional except where indicated.')
|
print('All fields are optional except where indicated.')
|
||||||
print()
|
print()
|
||||||
print('If you ever need help: https://torsion.org/borgmatic/#issues')
|
print('If you ever need help: https://torsion.org/borgmatic/#issues')
|
||||||
|
|
|
@ -20,10 +20,10 @@ def get_default_config_paths():
|
||||||
|
|
||||||
def collect_config_filenames(config_paths):
|
def collect_config_filenames(config_paths):
|
||||||
'''
|
'''
|
||||||
Given a sequence of config paths, both filenames and directories, resolve that to just an
|
Given a sequence of config paths, both filenames and directories, resolve that to an iterable
|
||||||
iterable of files. Accomplish this by listing any given directories looking for contained config
|
of files. Accomplish this by listing any given directories looking for contained config files
|
||||||
files (ending with the ".yaml" extension). This is non-recursive, so any directories within the
|
(ending with the ".yaml" extension). This is non-recursive, so any directories within the given
|
||||||
given directories are ignored.
|
directories are ignored.
|
||||||
|
|
||||||
Return paths even if they don't exist on disk, so the user can find out about missing
|
Return paths even if they don't exist on disk, so the user can find out about missing
|
||||||
configuration paths. However, skip a default config path if it's missing, so the user doesn't
|
configuration paths. However, skip a default config path if it's missing, so the user doesn't
|
||||||
|
|
|
@ -161,7 +161,7 @@ map:
|
||||||
ssh_command:
|
ssh_command:
|
||||||
type: scalar
|
type: scalar
|
||||||
desc: |
|
desc: |
|
||||||
Command to use instead of just "ssh". This can be used to specify ssh options.
|
Command to use instead of "ssh". This can be used to specify ssh options.
|
||||||
Defaults to not set.
|
Defaults to not set.
|
||||||
example: ssh -i /path/to/private/key
|
example: ssh -i /path/to/private/key
|
||||||
umask:
|
umask:
|
||||||
|
@ -243,7 +243,7 @@ map:
|
||||||
"extract". Defaults to "repository" and "archives". Set to "disabled" to disable
|
"extract". Defaults to "repository" and "archives". Set to "disabled" to disable
|
||||||
all consistency checks. "repository" checks the consistency of the repository,
|
all consistency checks. "repository" checks the consistency of the repository,
|
||||||
"archive" checks all of the archives, and "extract" does an extraction dry-run
|
"archive" checks all of the archives, and "extract" does an extraction dry-run
|
||||||
of just the most recent archive.
|
of the most recent archive.
|
||||||
example:
|
example:
|
||||||
- repository
|
- repository
|
||||||
- archives
|
- archives
|
||||||
|
|
|
@ -93,7 +93,7 @@ def parse_configuration(config_filename, schema_filename):
|
||||||
raise Validation_error(config_filename, (str(error),))
|
raise Validation_error(config_filename, (str(error),))
|
||||||
|
|
||||||
# pykwalify gets angry if the example field is not a string. So rather than bend to its will,
|
# pykwalify gets angry if the example field is not a string. So rather than bend to its will,
|
||||||
# simply remove all examples before passing the schema to pykwalify.
|
# remove all examples before passing the schema to pykwalify.
|
||||||
for section_name, section_schema in schema['map'].items():
|
for section_name, section_schema in schema['map'].items():
|
||||||
for field_name, field_schema in section_schema['map'].items():
|
for field_name, field_schema in section_schema['map'].items():
|
||||||
field_schema.pop('example', None)
|
field_schema.pop('example', None)
|
||||||
|
|
2
setup.py
2
setup.py
|
@ -1,7 +1,7 @@
|
||||||
from setuptools import setup, find_packages
|
from setuptools import setup, find_packages
|
||||||
|
|
||||||
|
|
||||||
VERSION = '1.2.14'
|
VERSION = '1.2.15.dev0'
|
||||||
|
|
||||||
|
|
||||||
setup(
|
setup(
|
||||||
|
|
Loading…
Reference in a new issue