Skip to content

feat: Backup/Restore project as zip file #1542

@laineyhm

Description

@laineyhm

Is your feature request related to a problem? Please describe.
There is currently no simple way to download a Language Forge project for purposes of reproducing errors and fixing up projects.

Describe the solution you'd like
A menu option to download the project as a zipfile (export) and one to import the project as a zipfile, and the right processes in place to make these actions possible.

Data to be backed up

  • mongodb project db (includes entries, comments and activity)
  • mongodb project doc inside sf db
  • assets folder
  • s/r repo folder
  • s/r state file
  • user records involved in the project

UI should have an option to include filesystem data or leave it out of the backup (results in broken media links)

Backup behavior

  • create zip file on server, then link to the file for download
  • how to clean up zip file on server (/tmp file location?)...is this even necessary in an ephemeral container?

Restore behavior (dev command line use case)

  • resolve dangling userRefs - create stub anon users for these userRefs; check project integrity?
  • add user to project as owner/manager

Implementation notes

  • have to install mongo-tools in the php app image in order to access command line tools e.g. mongoexport and mongoimport. mongodump and mongorestore are not suitable for this use case as we cannot easily choose which collections fields to export/import.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions