backdrop-contrib / devel

Provides helper functions for Backdrop developers.
https://backdropcms.org/project/devel
GNU General Public License v2.0
10 stars 13 forks source link

Import/export database feature request #132

Closed ghost closed 1 year ago

ghost commented 2 years ago

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): image

olafgrabienski commented 2 years 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.

ghost commented 2 years ago

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

quicksketch commented 2 years ago

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