Jim Paris
f7e9c3e232
borg.sh: only try ssh keys, not password authentication
2 years ago
Jim Paris
d168c5bf54
backup: catch all OSError exceptions while accessing files
We might see these if files change during the scan, for example.
2 years ago
Jim Paris
31d88f9345
backup: print final results and run notification script on error
2 years ago
Jim Paris
ccf54b98d7
backup: fix archive name
Was overly quoted from when this was a shell script
2 years ago
Jim Paris
59ad2b5b4d
backup: capture borg output for later reporting
2 years ago
Jim Paris
0c74f1676c
backup: add bold option to log(); simplify logic
2 years ago
Jim Paris
5e06ebd822
backup: change some warnings into errors
2 years ago
Jim Paris
929a323cf0
notify: add ssh key for running remote notifications; add notify.sh
2 years ago
Jim Paris
86bb72f201
setup: fix borg path in initial connection test
2 years ago
Jim Paris
54437456ae
prune: use new vars.sh
2 years ago
Jim Paris
c7a6d08665
initial-setup: generate vars.sh instead of borg.sh; commit borg.sh
Put setup-time variables into a generated vars.sh, and put borg.sh
directly into the repo.
2 years ago
Jim Paris
3c5dcd2189
config: remove /efi, it probably doesn't exist
2 years ago
Jim Paris
1a44035ae8
makefile: fix test-backup target
2 years ago
Jim Paris
6830daa2b1
prune: save password in an SSH agent, and compact after pruning
Since we want to run two commands, use a temporary SSH agent
to hold the key, so that the user only has to enter the password
once.
2 years ago
Jim Paris
69bfecd657
borg: include borg binary in repository
Put our own binary in here, so we can keep it updated with local
patches more easily. Also add build instructions.
This one is built from
https://github.com/borgbackup/borg/pull/6011
2 years ago
Jim Paris
43ceb39120
backup: support multiple roots; remove "relative absolute path" nonsense
Support multiple roots in config file, not just one.
The absolute path stuff before would match against exclusions/inclusions
based on paths from the root dir, but that doesn't make sense when we
have multiple roots, and added needless complexity.
2 years ago
Jim Paris
35c72e7ce6
backup: calculate size only once
We need to calculate size so we get an idea of actual used disk space
(which is closer to how much maximum space will be used in the backup,
in case files have huge holes). Calculate it once to avoid errors.
2 years ago
Jim Paris
27213033a2
backup: use decorated paths for matching patterns
By ensuring that directory names end in '/', the behavior of
"match only directories if the pattern ends with /" comes for
free based on how wcmatch.glob works, so we don't need to run
the regex match twice.
2 years ago
Jim Paris
5152a316c6
backup: use helper to format binary paths as strings
2 years ago
Jim Paris
46195daaaa
Improve borg process spawning and result checking
2 years ago
Jim Paris
ffe13a45e6
Add --debug option
2 years ago
Jim Paris
34817890b2
Update README cheat sheet
2 years ago
Jim Paris
0af42b8217
Fix shebang line after setup
2 years ago
Jim Paris
738573a292
Fix type issue
2 years ago
Jim Paris
4a707968ab
Spawn borg and pass input
2 years ago
Jim Paris
356f6db2ca
Remove debug prints
2 years ago
Jim Paris
e72564436c
Update git setup
2 years ago
Jim Paris
74e9e82117
Change to borg dir for setup
2 years ago
Jim Paris
e82d40bbfb
Fix some exclude/include path issues; misc setup improvements
2 years ago
Jim Paris
22b663fa61
Rework how exclude/include pattern matching works a bit
2 years ago
Jim Paris
863b7acc9b
Add arg to specify borg program
2 years ago
Jim Paris
0f56415493
Use actual file blocks rather than apparent size; doc updates
2 years ago
Jim Paris
0039ca1ee0
Implement filesystem scanning with configurable filters
2 years ago
Jim Paris
6978cfc012
Continue reworking towards local copy of borg, etc
2 years ago
Jim Paris
883f984aef
Restructure things; we will clone this repo directly on each client
2 years ago
Jim Paris
2dd60aaf28
Add initial version of backup file lister
2 years ago
Jim Paris
552e929247
Fix apt commandline
2 years ago
Jim Paris
de53a0c11d
Add README, remove useless mount.sh
2 years ago
Jim Paris
0f82c74aaa
Fix some issues in generated scripts; make passphrase non-executable
2 years ago
Jim Paris
a0a9b70fd7
Finish first version of script
2 years ago
Jim Paris
cec72d0dcb
Initial commit
2 years ago