Closed ghost closed 1 year ago
I believe Backup & Migrate already does this (at least the downloading/exporting part, not sure about the importing)
FYI, Backup and Migrate does also database importing.
I started work on this (as per the above screenshot), and wanted to save this work without losing it, so here's an in-progress PR: https://github.com/backdrop-contrib/devel/pull/133
I'm in favor of leaving this functionality to Backup and Migrate. I like that B&M also gets into some of the nuances of Backdrop, like wanting to backup not just the database but also the config into a single zip file, and then importing both DB and config at the same time.
There's also been some talk of incorporating a portion of Backup and Migrate in core: https://github.com/backdrop/backdrop-issues/issues/2409
I was watching this video a while ago (https://odysee.com/@BrodieRobertson:5/what-could-a-gui-terminal-actually-look:b) about how a GUI terminal might look/work (i.e. having a UI app for performing the same functions as a terminal, but point-and-click instead of typing commands). And it got me thinking about Bee. I wondered what a GUI for that would be like. I looked through the commands Bee supports so far, and (not surprisingly) most already have a UI in Backdrop (because Bee is a terminal app for Backdrop) - e.g. clearing caches, installing/uninstalling projects, etc. But there was one stand-out omission: importing and exporting the database.
What if Devel had a page where you could click a button to export (and subsequently download) a copy of the database. And then a form on the same page where you could upload an SQL/GZIP file and it'd import that database into the current site for you...
I believe Backup & Migrate already does this (at least the downloading/exporting part, not sure about the importing), but this feature would be specific to Devel as a developer tool (i.e. for testing, quick backups before a possible breaking change, etc.).
Here's a rough, initial mockup of what the page could look like (the Import section isn't finished though):