Arriving at a workable generic backup solution #30
Closed
opened 2020-10-25 19:50:32 +00:00 by decentral1se
·
11 comments
Labels
Clear labels
abra
awaiting-feedback
backups
bug
build
ci/cd
community organising
contributing
coopcloud.tech
design
documentation
duplicate
enhancement
fedi
fedi-infra
finance
funding
good first issue
help wanted
installer
legal
performance
proposal
question
security
test
wontfix
Everything to do with abra
Ping/pong on comms
Something is not working
Go build related issues
Getting the robots into the mix
Opening this thing up
Contributors stuff
Our main website
Design thinking required
Let's write things together
This issue or pull request already exists
New feature
Democratic decision making
Money things
Anything related to grant funding
Easy start with development
Need some help
Installation related issues
Performance related
Large change which requires feedback & decisin making
More information is needed
Securing our shit
Unit or integration test suite
This won't be fixed
No labels
enhancement
Milestone
No items
No Milestone
Projects
Clear projects
No projects
Assignees
3wordchant
aadil (Aadil Ayub)
abra-bot (Abra Bot)
ammaratef45
amras (Sarma)
Apfelwurm
BornDeleuze
Brooke
carla
cas (Cassowary)
coopcloud
cyrnel
decentral1se (d1)
dede
devydave
fauno (fauno)
iexos
jade (Jade Ambrose)
jjsfunhouse
jmakdah2 (Jackie Makdah)
joe-irving (Joe Irving)
kawaiipunk (KawaiiPunk)
knoflook
kolaente
lambdabundesverband
linnealovespie (April)
moosemower
moritz
notplants
oxaliq (sorrel)
p4u1
pharaohgraphy (Andrew 🐦🔥❤️🔥✴️)
renovate-bot (Comrade Renovate Bot)
ripclap
simon
sixsmith (Sixsmith)
stevensting
trav (Trav Fryer)
val (val (he/him))
yksflip
Clear assignees
No Assignees
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: toolshed/organising#30
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Current stab was https://git.autonomic.zone/coop-cloud/backup-bot.
Upsides:
Downsides:
Something more flexible and disconnected directly from the app repository would be ideal. There has been some research going on, so here comes the links:
backup-bot example working configs:
Use-cases
docker inspectbackupbotcurrentlyFeatures
Coming down the tubes over at https://git.autonomic.zone/coop-cloud/abra/issues/70
July 2021: Some More Thoughts
coop-cloud.backup-botlabel on any serviceBased on restic-docker-swarm:
Personally I would also love to see
backup-botsupport restic for those of us who aren't yet borgbase converts.This looks promising: https://github.com/offen/docker-volume-backup
150c953c51Another thought: abra could also read these labels and run the same commands as backup-bot-two, which could be the path to getting one-off backups & restores working again?
Expanding on this:
abra app backup foobar app= read thebackupbotlabels off theappservice, run pre/post commands, savebackupbot.backup.pathto~/.abra/backups.abra app backup foobar= readbackupbotlabels off all services, run as above.abra app restore foobar app app.tar.gz= copy and extractapp.tar.gztobackupbot.backup.path, and run restore-specific pre-/post- commands.@3wordchant more interface confusions on the
abraside...Take the following labels:
When I run
abra app backup ghost.com app, what should I get as output?ghost_com_app_<timestamp>.tar.gzwith both directories inside? Orghost_com_app_var_lib_ghost_content_<timestamp>.tar.gz&ghost_com_app_var_lib_ghost_otherthing_<timestamp>.tar.gz? Or another format?This causes an issue for restore, which paths should be read for the restoring of files? We have
abra app restore <domain> <service> <file>but do we also need to add<path>🙈From what I remember from the last chat, we don't want to make the filename of the backup file correspond to how it is restored because that will make restoring non co-op cloud apps awkward?
The simplest implementation on
abraside would be to generate a backup file per-path & add<path>to therestoreUI. But that may be a really not fun backup/restore interface.Got any ideas?
Available for testing on latest HEAD.
We have arrived 😅 Will be following up on fixes when feedback comes in. Thanks all!