Commit Graph

92 Commits

Author SHA1 Message Date
aff447c1b6 notify: fix notify.sh to work with server side; adjust text 2021-10-16 09:37:03 -04:00
f7e9c3e232 borg.sh: only try ssh keys, not password authentication 2021-10-16 09:37:03 -04:00
d168c5bf54 backup: catch all OSError exceptions while accessing files
We might see these if files change during the scan, for example.
2021-10-16 09:37:03 -04:00
31d88f9345 backup: print final results and run notification script on error 2021-10-16 09:37:03 -04:00
ccf54b98d7 backup: fix archive name
Was overly quoted from when this was a shell script
2021-10-16 09:37:03 -04:00
59ad2b5b4d backup: capture borg output for later reporting 2021-10-16 09:37:03 -04:00
0c74f1676c backup: add bold option to log(); simplify logic 2021-10-16 09:37:03 -04:00
5e06ebd822 backup: change some warnings into errors 2021-10-16 09:37:03 -04:00
929a323cf0 notify: add ssh key for running remote notifications; add notify.sh 2021-10-16 09:37:03 -04:00
86bb72f201 setup: fix borg path in initial connection test 2021-10-16 09:37:03 -04:00
54437456ae prune: use new vars.sh 2021-10-16 09:37:03 -04:00
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.
2021-10-16 09:36:56 -04:00
3c5dcd2189 config: remove /efi, it probably doesn't exist 2021-10-15 23:21:28 -04:00
1a44035ae8 makefile: fix test-backup target 2021-10-15 23:21:14 -04:00
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.
2021-10-14 15:34:10 -04:00
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
2021-10-14 13:26:24 -04:00
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.
2021-10-14 12:33:07 -04:00
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.
2021-10-14 12:33:07 -04:00
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.
2021-10-14 12:33:07 -04:00
5152a316c6 backup: use helper to format binary paths as strings 2021-10-14 12:33:07 -04:00
46195daaaa Improve borg process spawning and result checking 2021-10-14 12:33:07 -04:00
ffe13a45e6 Add --debug option 2021-10-14 12:33:07 -04:00
34817890b2 Update README cheat sheet 2021-10-14 12:33:07 -04:00
0af42b8217 Fix shebang line after setup 2021-10-13 15:15:00 -04:00
738573a292 Fix type issue 2021-10-13 15:02:48 -04:00
4a707968ab Spawn borg and pass input 2021-10-13 14:58:44 -04:00
356f6db2ca Remove debug prints 2021-10-13 14:46:58 -04:00
e72564436c Update git setup 2021-10-13 14:46:25 -04:00
74e9e82117 Change to borg dir for setup 2021-10-13 14:42:24 -04:00
e82d40bbfb Fix some exclude/include path issues; misc setup improvements 2021-10-13 14:38:47 -04:00
22b663fa61 Rework how exclude/include pattern matching works a bit 2021-10-13 11:48:53 -04:00
863b7acc9b Add arg to specify borg program 2021-10-13 10:17:28 -04:00
0f56415493 Use actual file blocks rather than apparent size; doc updates 2021-10-11 23:30:53 -04:00
0039ca1ee0 Implement filesystem scanning with configurable filters 2021-10-11 16:50:08 -04:00
6978cfc012 Continue reworking towards local copy of borg, etc 2021-10-11 12:34:57 -04:00
883f984aef Restructure things; we will clone this repo directly on each client 2021-10-08 16:08:03 -04:00
2dd60aaf28 Add initial version of backup file lister 2021-08-19 11:55:19 -04:00
552e929247 Fix apt commandline 2021-08-13 17:51:28 -04:00
de53a0c11d Add README, remove useless mount.sh 2021-08-13 16:45:14 -04:00
0f82c74aaa Fix some issues in generated scripts; make passphrase non-executable 2021-08-13 15:38:51 -04:00
a0a9b70fd7 Finish first version of script 2021-08-13 15:32:36 -04:00
cec72d0dcb Initial commit 2021-08-13 10:47:41 -04:00